From: Vladimir Oltean Date: Tue, 8 Jun 2021 11:16:51 +0000 (+0300) Subject: net: dsa: felix: set TX flow control according to the phylink_mac_link_up resolution X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=de274be32cb288d96b91494aeaafccc34cf4e00f;p=linux.git net: dsa: felix: set TX flow control according to the phylink_mac_link_up resolution Instead of relying on the static initialization done by ocelot_init_port() which enables flow control unconditionally, set SYS_PAUSE_CFG_PAUSE_ENA according to the parameters negotiated by the PHY. Signed-off-by: Vladimir Oltean Signed-off-by: David S. Miller --- diff --git a/drivers/net/dsa/ocelot/felix.c b/drivers/net/dsa/ocelot/felix.c index ce607fbaaa3af..a2a15919b9606 100644 --- a/drivers/net/dsa/ocelot/felix.c +++ b/drivers/net/dsa/ocelot/felix.c @@ -940,6 +940,8 @@ static void felix_phylink_mac_link_up(struct dsa_switch *ds, int port, ocelot_write_rix(ocelot, 0, ANA_POL_FLOWC, port); + ocelot_fields_write(ocelot, port, SYS_PAUSE_CFG_PAUSE_ENA, tx_pause); + /* Undo the effects of felix_phylink_mac_link_down: * enable MAC module */