Skip to content

Commit 0ea54dd

Browse files
viviendavem330
authored andcommitted
net: dsa: mv88e6xxx: setup global upstream port
Move the setup of the global upstream port within the mv88e6xxx_setup_upstream_port function. Signed-off-by: Vivien Didelot <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent fa371c8 commit 0ea54dd

File tree

1 file changed

+16
-13
lines changed
  • drivers/net/dsa/mv88e6xxx

1 file changed

+16
-13
lines changed

drivers/net/dsa/mv88e6xxx/chip.c

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1758,6 +1758,22 @@ static int mv88e6xxx_setup_upstream_port(struct mv88e6xxx_chip *chip, int port)
17581758
return err;
17591759
}
17601760

1761+
if (port == upstream_port) {
1762+
if (chip->info->ops->set_cpu_port) {
1763+
err = chip->info->ops->set_cpu_port(chip,
1764+
upstream_port);
1765+
if (err)
1766+
return err;
1767+
}
1768+
1769+
if (chip->info->ops->set_egress_port) {
1770+
err = chip->info->ops->set_egress_port(chip,
1771+
upstream_port);
1772+
if (err)
1773+
return err;
1774+
}
1775+
}
1776+
17611777
return 0;
17621778
}
17631779

@@ -1959,21 +1975,8 @@ static int mv88e6xxx_set_ageing_time(struct dsa_switch *ds,
19591975
static int mv88e6xxx_g1_setup(struct mv88e6xxx_chip *chip)
19601976
{
19611977
struct dsa_switch *ds = chip->ds;
1962-
u32 upstream_port = dsa_upstream_port(ds);
19631978
int err;
19641979

1965-
if (chip->info->ops->set_cpu_port) {
1966-
err = chip->info->ops->set_cpu_port(chip, upstream_port);
1967-
if (err)
1968-
return err;
1969-
}
1970-
1971-
if (chip->info->ops->set_egress_port) {
1972-
err = chip->info->ops->set_egress_port(chip, upstream_port);
1973-
if (err)
1974-
return err;
1975-
}
1976-
19771980
/* Disable remote management, and set the switch's DSA device number. */
19781981
err = mv88e6xxx_g1_write(chip, MV88E6XXX_G1_CTL2,
19791982
MV88E6XXX_G1_CTL2_MULTIPLE_CASCADE |

0 commit comments

Comments
 (0)