aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/ethernet/ti/keystone_ethss.c5
-rw-r--r--drivers/net/ethernet/ti/keystone_ethss2.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/ethernet/ti/keystone_ethss.c b/drivers/net/ethernet/ti/keystone_ethss.c
index 9c4c14ab52d..a6c55d22e2e 100644
--- a/drivers/net/ethernet/ti/keystone_ethss.c
+++ b/drivers/net/ethernet/ti/keystone_ethss.c
@@ -2193,6 +2193,11 @@ static void cpsw_slave_stop(struct cpsw_slave *slave,
2193 else 2193 else
2194 sgmii_port_regs = priv->sgmii_port34_regs; 2194 sgmii_port_regs = priv->sgmii_port34_regs;
2195 2195
2196 /* disable forwarding */
2197 if (slave->ale)
2198 cpsw_ale_control_set(slave->ale, slave->port_num,
2199 ALE_PORT_STATE, ALE_PORT_STATE_DISABLE);
2200
2196 keystone_sgmii_rtreset(sgmii_port_regs, slave->slave_num, true); 2201 keystone_sgmii_rtreset(sgmii_port_regs, slave->slave_num, true);
2197 2202
2198 cpsw_port_reset(slave); 2203 cpsw_port_reset(slave);
diff --git a/drivers/net/ethernet/ti/keystone_ethss2.c b/drivers/net/ethernet/ti/keystone_ethss2.c
index 0e93f526ba3..7ff7363575f 100644
--- a/drivers/net/ethernet/ti/keystone_ethss2.c
+++ b/drivers/net/ethernet/ti/keystone_ethss2.c
@@ -2565,6 +2565,11 @@ static void cpsw2_port_config(struct cpsw2_slave *slave, int max_rx_len)
2565 2565
2566static void cpsw2_slave_stop(struct cpsw2_slave *slave, struct cpsw2_priv *priv) 2566static void cpsw2_slave_stop(struct cpsw2_slave *slave, struct cpsw2_priv *priv)
2567{ 2567{
2568 /* disable forwarding */
2569 if (slave->ale)
2570 cpsw_ale_control_set(slave->ale, slave->port_num,
2571 ALE_PORT_STATE, ALE_PORT_STATE_DISABLE);
2572
2568 cpsw2_port_reset(slave); 2573 cpsw2_port_reset(slave);
2569 2574
2570 if (!slave->phy) 2575 if (!slave->phy)