Message ID | 20190817191452.16716-4-marek.behun@nic.cz |
---|---|
State | RFC |
Delegated to: | David Miller |
Headers | show |
Series | mv88e6xxx: setting 2500base-x mode for CPU/DSA port in dts | expand |
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c index 9b3ad22a5b98..ad27f2fc5c33 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c @@ -2285,8 +2285,9 @@ static void mv88e6xxx_port_disable(struct dsa_switch *ds, int port) mv88e6xxx_reg_lock(chip); - if (mv88e6xxx_port_set_state(chip, port, BR_STATE_DISABLED)) - dev_err(chip->dev, "failed to disable port\n"); + if (dsa_is_user_port(ds, port)) + if (mv88e6xxx_port_set_state(chip, port, BR_STATE_DISABLED)) + dev_err(chip->dev, "failed to disable port\n"); if (chip->info->ops->serdes_irq_free) chip->info->ops->serdes_irq_free(chip, port);
The mv88e6xxx_port_disable method calls mv88e6xxx_port_set_state, which should be called only for user ports. Signed-off-by: Marek BehĂșn <marek.behun@nic.cz> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Florian Fainelli <f.fainelli@gmail.com> Cc: Vladimir Oltean <olteanv@gmail.com> Cc: Vivien Didelot <vivien.didelot@gmail.com> --- drivers/net/dsa/mv88e6xxx/chip.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)