public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail•com>
To: davem@davemloft•net, netdev@vger•kernel.org, linux@armlinux•org.uk
Cc: andrew@lunn•ch, f.fainelli@gmail•com, vivien.didelot@gmail•com,
	claudiu.manoil@nxp•com,
	Alex Marginean <alexandru.marginean@nxp•com>,
	Vladimir Oltean <vladimir.oltean@nxp•com>
Subject: [PATCH net-next 1/2] net: dsa: felix: Handle PAUSE RX regardless of AN result
Date: Thu, 16 Jan 2020 20:19:32 +0200	[thread overview]
Message-ID: <20200116181933.32765-2-olteanv@gmail.com> (raw)
In-Reply-To: <20200116181933.32765-1-olteanv@gmail.com>

From: Alex Marginean <alexandru.marginean@nxp•com>

Flow control is used with 2500Base-X and AQR PHYs to do rate adaptation
between line side 100/1000 links and MAC running at 2.5G.

This is independent of the flow control configuration settled on line
side though AN.

In general, allowing the MAC to handle flow control even if not
negotiated with the link partner should not be a problem, so the patch
just enables it in all cases.

Signed-off-by: Alex Marginean <alexandru.marginean@nxp•com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp•com>
---
 drivers/net/dsa/ocelot/felix.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/net/dsa/ocelot/felix.c b/drivers/net/dsa/ocelot/felix.c
index d6ee089dbfe1..46334436a8fe 100644
--- a/drivers/net/dsa/ocelot/felix.c
+++ b/drivers/net/dsa/ocelot/felix.c
@@ -222,8 +222,12 @@ static void felix_phylink_mac_config(struct dsa_switch *ds, int port,
 	 * specification in incoming pause frames.
 	 */
 	mac_fc_cfg = SYS_MAC_FC_CFG_FC_LINK_SPEED(state->speed);
-	if (state->pause & MLO_PAUSE_RX)
-		mac_fc_cfg |= SYS_MAC_FC_CFG_RX_FC_ENA;
+
+	/* handle Rx pause in all cases, with 2500base-X this is used for rate
+	 * adaptation.
+	 */
+	mac_fc_cfg |= SYS_MAC_FC_CFG_RX_FC_ENA;
+
 	if (state->pause & MLO_PAUSE_TX)
 		mac_fc_cfg |= SYS_MAC_FC_CFG_TX_FC_ENA |
 			      SYS_MAC_FC_CFG_PAUSE_VAL_CFG(0xffff) |
-- 
2.17.1


  reply	other threads:[~2020-01-16 18:19 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-16 18:19 [PATCH net-next 0/2] Rate adaptation for Felix DSA switch Vladimir Oltean
2020-01-16 18:19 ` Vladimir Oltean [this message]
2020-01-20  9:43   ` [PATCH net-next 1/2] net: dsa: felix: Handle PAUSE RX regardless of AN result Russell King - ARM Linux admin
2020-01-21  8:18     ` Alexandru Marginean
2020-01-21 11:55       ` Russell King - ARM Linux admin
2020-01-16 18:19 ` [PATCH net-next 2/2] net: dsa: felix: Allow PHY to AN 10/100/1000 with 2500 serdes link Vladimir Oltean
2020-01-19 15:00 ` [PATCH net-next 0/2] Rate adaptation for Felix DSA switch David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200116181933.32765-2-olteanv@gmail.com \
    --to=olteanv@gmail$(echo .)com \
    --cc=alexandru.marginean@nxp$(echo .)com \
    --cc=andrew@lunn$(echo .)ch \
    --cc=claudiu.manoil@nxp$(echo .)com \
    --cc=davem@davemloft$(echo .)net \
    --cc=f.fainelli@gmail$(echo .)com \
    --cc=linux@armlinux$(echo .)org.uk \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=vivien.didelot@gmail$(echo .)com \
    --cc=vladimir.oltean@nxp$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox