Den 03. aug. 2017 20:06, skrev Florian Fainelli:
On 08/03/2017 02:45 AM, Egil Hjelmeland wrote:
Simplify usage of lan9303_enable_packet_processing,
lan9303_disable_packet_processing()

Signed-off-by: Egil Hjelmeland <pri...@egil-hjelmeland.no>

Reviewed-by: Florian Fainelli <f.faine...@gmail.com>

took a little while to figure out that we are utilizing fall through of
the switch/case statement and that's why it's okay.


  static int lan9303_check_device(struct lan9303 *chip)
@@ -765,7 +766,6 @@ static int lan9303_port_enable(struct dsa_switch *ds, int 
port,
        /* enable internal packet processing */
        switch (port) {
        case 1:
-               return lan9303_enable_packet_processing(chip, port);
        case 2:
                return lan9303_enable_packet_processing(chip, port);
        default:

I suppose if we later change to dsa_switch_alloc(...,3), then it could
be further simplified to

if (port != 0)
        return lan9303_enable_packet_processing(chip, port);

Or perhaps no test is needed at all. The driver assumes port 0 is cpu
port, which is the sensible way to use the chip. (Because port 0 has
no phy, the others have phy). Declaring a different port as cpu port in
DTS will not work, but it will not crash the kernel.

Egil

Reply via email to