Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: dsa: microchip: lan937x: disable in-band status support for RGMII interfaces

This driver do not support in-band mode and in case of CPU<->Switch
link, this mode is not working any way. So, disable it otherwise ingress
path of the switch MAC will stay disabled.

Note: lan9372 manual do not document 0xN301 BIT(2) for the RGMII mode
and recommend[1] to disable in-band link status update for the RGMII RX
path by clearing 0xN302 BIT(0). But, 0xN301 BIT(2) seems to work too, so
keep it unified with other KSZ switches.

[1] https://microchip.my.site.com/s/article/LAN937X-The-required-configuration-for-the-external-MAC-port-to-operate-at-RGMII-to-RGMII-1Gbps-link-speed

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Acked-by: Arun Ramadoss <arun.ramadoss@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Lucas Stach and committed by
David S. Miller
c3db3946 8d7330b3

+2 -1
+2 -1
drivers/net/dsa/microchip/ksz_common.c
··· 3116 3116 /* On KSZ9893, disable RGMII in-band status support */ 3117 3117 if (dev->chip_id == KSZ9893_CHIP_ID || 3118 3118 dev->chip_id == KSZ8563_CHIP_ID || 3119 - dev->chip_id == KSZ9563_CHIP_ID) 3119 + dev->chip_id == KSZ9563_CHIP_ID || 3120 + is_lan937x(dev)) 3120 3121 data8 &= ~P_MII_MAC_MODE; 3121 3122 break; 3122 3123 default: