[PATCH net-next 0/8] net: stmmac: improve PCS support
Mohd Ayaan Anwar
mohd.anwar at oss.qualcomm.com
Wed Mar 18 15:12:05 PDT 2026
Hi,
On Tue, Mar 17, 2026 at 02:48:39PM +0000, Russell King (Oracle) wrote:
> On Mon, Mar 16, 2026 at 01:11:23AM +0000, Russell King (Oracle) wrote:
> > This will be because we're not attaching any PHYs when phylink is
> > being told to operate in 2500BASE-X with inband, since it thinks
> > that's the media. That, and, because stmmac has a long history, it
> > needed a special phylink_expects_phy() check added in stmmac_init_phy()
> > which his what prevents the PHY being attached.
>
> Okay, another idea that I hope will work. Please drop the "net: stmmac:
> qcom-ethqos: enable inband mode for SGMII" patch so we go back to using
> outband mode for everything.
>
> Then, disable the call to ethqos_pcs_set_inband() so inband mode
> doesn't get enabled for SGMII - as phylink will be telling the PHY to
> disable inband mode.
>
> Does that result in functional 100M, 1G and 2.5G speeds?
Yes, but with an asterisk.
- 2.5G works fine
- Shifting between 2.5G, 1G, and 100M are usually fine.
- Booting up at 1G results in link flapping (it gets resolved if I
do: ip link set <interface> down and then up on the link partner).
- Similar link flapping also happens when shifting from 2.5G to 1G,
though its not always.
Attaching logs of the booting up with a 1G scenario below.
Ayaan
---
[ 8.650471] qcom-ethqos 23040000.ethernet: Using 36/40 bits DMA host/device width
[ 8.650486] qcom-ethqos 23040000.ethernet: clk_csr value out of range (0xffffff00 exceeds mask 0x00000f00), truncating
[ 11.569262] qcom-ethqos 23040000.ethernet eth1: Register MEM_TYPE_PAGE_POOL RxQ-0
[ 11.577988] qcom-ethqos 23040000.ethernet eth1: Register MEM_TYPE_PAGE_POOL RxQ-1
[ 11.586665] qcom-ethqos 23040000.ethernet eth1: Register MEM_TYPE_PAGE_POOL RxQ-2
[ 11.595357] qcom-ethqos 23040000.ethernet eth1: Register MEM_TYPE_PAGE_POOL RxQ-3
[ 11.619882] qcom-ethqos 23040000.ethernet eth1: PHY stmmac-0:08 uses interfaces 4,23,27, validating 23
[ 11.629468] qcom-ethqos 23040000.ethernet eth1: interface 23 (2500base-x) rate match pause supports 0-7,9,13-14,47
[ 11.640202] qcom-ethqos 23040000.ethernet eth1: PHY [stmmac-0:08] driver [Aquantia AQR115C] (irq=288)
[ 11.649691] qcom-ethqos 23040000.ethernet eth1: phy: 2500base-x setting supported 00000000,00000000,00008000,000062ff advertising 00000000,00000000,00008000,000062ff
[ 11.680117] qcom-ethqos 23040000.ethernet eth1: Enabling Safety Features
[ 11.688517] qcom-ethqos 23040000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[ 11.698080] qcom-ethqos 23040000.ethernet eth1: registered PTP clock
[ 11.704633] qcom-ethqos 23040000.ethernet eth1: configuring for phy/2500base-x link mode
[ 11.712966] qcom-ethqos 23040000.ethernet eth1: major config, requested phy/2500base-x
[ 11.721115] qcom-ethqos 23040000.ethernet eth1: interface 2500base-x inband modes: pcs=01 phy=00
[ 11.730157] qcom-ethqos 23040000.ethernet eth1: major config, active phy/outband/2500base-x
[ 11.738748] qcom-ethqos 23040000.ethernet eth1: phylink_mac_config: mode=phy/2500base-x/none adv=00000000,00000000,00000000,00000000 pause=00
[ 11.763778] qcom-ethqos 23040000.ethernet eth1: phy link down 2500base-x/1Gbps/Full/none/off/nolpi
[ 15.215445] qcom-ethqos 23040000.ethernet eth1: phy link up sgmii/1Gbps/Full/none/rx/tx/nolpi
[ 15.226572] qcom-ethqos 23040000.ethernet eth1: major config, requested phy/sgmii
[ 15.234297] qcom-ethqos 23040000.ethernet eth1: interface sgmii inband modes: pcs=03 phy=03
[ 15.242902] qcom-ethqos 23040000.ethernet eth1: major config, active phy/outband/sgmii
[ 15.251044] qcom-ethqos 23040000.ethernet eth1: phylink_mac_config: mode=phy/sgmii/none adv=00000000,00000000,00000000,00000000 pause=03
[ 15.276661] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 15.278115] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 15.283364] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 18.317922] qcom-ethqos 23040000.ethernet: PCS Link Down
[ 18.323424] qcom-ethqos 23040000.ethernet eth1: pcs link down
[ 18.323977] qcom-ethqos 23040000.ethernet eth1: Link is Down
[ 18.329375] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 18.340467] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 18.356522] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 21.358679] qcom-ethqos 23040000.ethernet: PCS Link Down
[ 21.364183] qcom-ethqos 23040000.ethernet eth1: pcs link down
[ 21.364745] qcom-ethqos 23040000.ethernet eth1: Link is Down
[ 21.370130] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 21.370139] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 21.397194] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 24.399108] qcom-ethqos 23040000.ethernet: PCS Link Down
[ 24.404613] qcom-ethqos 23040000.ethernet eth1: pcs link down
[ 24.405168] qcom-ethqos 23040000.ethernet eth1: Link is Down
[ 24.410563] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 24.421657] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 24.437636] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 27.439468] qcom-ethqos 23040000.ethernet: PCS Link Down
[ 27.444971] qcom-ethqos 23040000.ethernet eth1: pcs link down
[ 27.445528] qcom-ethqos 23040000.ethernet eth1: Link is Down
[ 27.450920] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 27.462016] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 27.477991] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 28.026087] qcom-ethqos 23040000.ethernet eth1: phy link down sgmii/1Gbps/Full/none/rx/tx/nolpi
[ 28.035077] qcom-ethqos 23040000.ethernet eth1: Link is Down
[ 33.336433] qcom-ethqos 23040000.ethernet eth1: phy link up sgmii/1Gbps/Full/none/rx/tx/nolpi
[ 33.342861] qcom-ethqos 23040000.ethernet: PCS Link Down
[ 33.350674] qcom-ethqos 23040000.ethernet eth1: pcs link down
[ 33.350724] qcom-ethqos 23040000.ethernet: PCS Link Up
[ 33.360912] qcom-ethqos 23040000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 33.366768] qcom-ethqos 23040000.ethernet eth1: pcs link up
[ 33.386487] qcom-ethqos 23040000.ethernet eth1: Link is Down
Note: doing a remote link toggle recovers this.
More information about the linux-arm-kernel
mailing list