Thread (43 messages) 43 messages, 7 authors, 2d ago

Re: [PATCH 1/3] net: stmmac: support low-speed USXGMII validation

From: Zhangfei Gao <hidden>
Date: 2026-09-24 10:40:09
Also in: linux-arm-kernel, lkml

Hi, Andrew

On Wed, Sep 23, 2026 at 8:58 PM Andrew Lunn [off-list ref] wrote:
quoted
diff --git a/drivers/net/pcs/pcs-xpcs.c b/drivers/net/pcs/pcs-xpcs.c
index 091c9b57388fa..58ca296fc4420 100644
--- a/drivers/net/pcs/pcs-xpcs.c
+++ b/drivers/net/pcs/pcs-xpcs.c
@@ -23,6 +23,12 @@ static const int xpcs_usxgmii_features[] = {
      ETHTOOL_LINK_MODE_Pause_BIT,
      ETHTOOL_LINK_MODE_Asym_Pause_BIT,
      ETHTOOL_LINK_MODE_Autoneg_BIT,
+     ETHTOOL_LINK_MODE_10baseT_Full_BIT,
+     ETHTOOL_LINK_MODE_100baseT_Full_BIT,
+     ETHTOOL_LINK_MODE_1000baseT_Full_BIT,
+     ETHTOOL_LINK_MODE_2500baseT_Full_BIT,
+     ETHTOOL_LINK_MODE_5000baseT_Full_BIT,
+     ETHTOOL_LINK_MODE_10000baseT_Full_BIT,
What does T in 10000baseT mean?
quoted
      ETHTOOL_LINK_MODE_1000baseKX_Full_BIT,
      ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT,
      ETHTOOL_LINK_MODE_10000baseKR_Full_BIT,
Compare and contract with KX.
 T denotes twisted-pair copper media, whereas KX/KR denote backplane
  Ethernet modes. USXGMII is the host-side interface between the MAC/PCS
  and the external PHY; it is not itself a media type.

  The BASE-T modes are needed here because the attached PHY reports its
  line-side capabilities as BASE-T modes, which must pass XPCS
  validation.

  How about using a separate feature table for Clause 37 USXGMII, while
  leaving the existing table unchanged?

  +static const int xpcs_c37_usxgmii_features[] = {
  +     ETHTOOL_LINK_MODE_Pause_BIT,
  +     ETHTOOL_LINK_MODE_Asym_Pause_BIT,
  +     ETHTOOL_LINK_MODE_Autoneg_BIT,
  +     ETHTOOL_LINK_MODE_10baseT_Full_BIT,
  +     ETHTOOL_LINK_MODE_100baseT_Full_BIT,
  +     ETHTOOL_LINK_MODE_1000baseT_Full_BIT,
  +     ETHTOOL_LINK_MODE_2500baseT_Full_BIT,
  +     ETHTOOL_LINK_MODE_5000baseT_Full_BIT,
  +     ETHTOOL_LINK_MODE_10000baseT_Full_BIT,
  +     __ETHTOOL_LINK_MODE_MASK_NBITS,
  +};

  -     .supported = xpcs_usxgmii_features,
  +     .supported = xpcs_c37_usxgmii_features,

  This keeps the capabilities of existing Clause 73 users unchanged.

Thanks
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help