Re: [PATCH net 0/3] net: dsa: lantiq_gswip: SGMII/2500BASE-X and flow-control fixes

From: Jan Havran

Date: Wed Sep 09 2026 - 16:34:34 EST


V Mon, Sep 07, 2026 at 06:22:48PM +0100, Daniel Golle napsal(a):
> On Mon, Sep 07, 2026 at 03:48:15PM +0200, Jan Havran (Advantech Czech) wrote:
> > This series fixes three issues in the lantiq_gswip / mxl-gsw1xx DSA driver
> > found while bringing up a MaxLinear GSW145 over SGMII on a Marvell
> > Armada 7040 board, with the switch CPU port running 2500BASE-X and the
> > user ports at 1000BASE-T.
> >
> > Patch 1 reorders the SerDes NCO clock-rate setup ahead of the SGMII shell
> > reset. Without it, only the rate the switch was left at by the straps or
> > the boot loader links up; the other rate comes up but forwards no traffic.
> >
> > Patch 2 adds the missing SPEED_2500 case to gswip_port_set_speed(); without
> > it the CPU port was forced to 10 Mbps at 2.5G link-up.
> >
> > Patch 3 corrects the GSWIP_MDIO_PHY_FCONTX_EN field value (a typo present
> > since the original vrx200 driver).
> >
> > Tested on GSW145 hardware only. The register values are backed by the
> > public GSW145 data sheet and by the driver's own field encoding; the
> > xRX200/xRX300 data sheets are not public.
> >
> > Jan Havran (Advantech Czech) (3):
> > net: dsa: mxl-gsw1xx: set SerDes NCO rate before SGMII reset
> > net: dsa: lantiq_gswip: handle SPEED_2500 in gswip_port_set_speed()
> > net: dsa: lantiq_gswip: fix GSWIP_MDIO_PHY_FCONTX_EN value
>
> Thank you for taking care of this on a board which allows you to actually
> test it -- on the reference platform I had to develop the driver with the
> SerDes interface of the switch is hard-wired to an MxL86111 PHY, hence I
> could never test 2500Base-X mode.
>
> Whole series
> Reviewed-by: Daniel Golle <daniel@xxxxxxxxxxxxxx>

Thank you, Daniel.
We are developing a new board containing this switch and we found your upstream driver
in a much better shape than the official Maxlinear driver.

Unfortunatelly 2.5G did not work for us because of the missing SPEED_2500 case and
1G did not work because the switch was left in 2.5G mode by the straps.

But with these fixes, this driver works great for us.

Thanks again for your work on this driver.
Regards,
Jan