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. > --- > drivers/net/dsa/lan9303-core.c | 24 ++++++++++-------------- > 1 file changed, 10 insertions(+), 14 deletions(-) > > diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c > index 126e8b84bdf0..31fe66fbe39a 100644 > --- a/drivers/net/dsa/lan9303-core.c > +++ b/drivers/net/dsa/lan9303-core.c > @@ -564,15 +564,16 @@ static int lan9303_handle_reset(struct lan9303 *chip) > /* stop processing packets for all ports */ > static int lan9303_disable_processing(struct lan9303 *chip) > { > - int ret; > + int p; > > - ret = lan9303_disable_packet_processing(chip, 0); > - if (ret) > - return ret; > - ret = lan9303_disable_packet_processing(chip, 1); > - if (ret) > - return ret; > - return lan9303_disable_packet_processing(chip, 2); > + for (p = 0; p < LAN9303_NUM_PORTS; p++) { > + int ret = lan9303_disable_packet_processing(chip, p); > + > + if (ret) > + return ret; > + } > + > + return 0; > } > > 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: > @@ -784,13 +784,9 @@ static void lan9303_port_disable(struct dsa_switch *ds, > int port, > /* disable internal packet processing */ > switch (port) { > case 1: > - lan9303_disable_packet_processing(chip, port); > - lan9303_phy_write(ds, chip->phy_addr_sel_strap + 1, > - MII_BMCR, BMCR_PDOWN); > - break; > case 2: > lan9303_disable_packet_processing(chip, port); > - lan9303_phy_write(ds, chip->phy_addr_sel_strap + 2, > + lan9303_phy_write(ds, chip->phy_addr_sel_strap + port, > MII_BMCR, BMCR_PDOWN); > break; > default: > -- Florian