openwrt/target/linux
Mateusz Jończyk b7fa9d92ae
Some checks are pending
Build Kernel / Build all affected Kernels (push) Waiting to run
Build all core packages / Build all core packages for selected target (push) Waiting to run
ramips/mt7621: mark EEE as broken in devicetree
Multiple users have reported a regression [1] in OpenWRT 24.10 with the
ramips/mt7621 target, which has the MT7530 PHYs: the Ethernet link is
periodically going down for a brief period of time:

        mt7530-mdio mdio-bus:1f lan1: Link is Down
        br-lan: port 1(lan1) entered disabled state
        mt7530-mdio mdio-bus:1f lan1: Link is Up - 1Gbps/Full - flow control rx/tx

The symptoms stop after disabling EEE and it was reported by Mediatek in
2021 that EEE is unstable for the MT7530 PHYs [2]:

> EEE of the 10-year-old MT7530 internal gephy has many IOT problems, so
> it is recommended to disable its EEE.

EEE is enabled by default for these devices in OpenWRT 24.10 whereas in the
previous version (OpenWRT 23.05, Linux 5.15) it was not. It was determined
that in Linux 6.6, the PHY driver tries to disable EEE in
mtk_gephy_config_init() in drivers/net/phy/mediatek-ge.c, but this is later
overridden by a subsequent execution of the genphy_c45_write_eee_adv()
function, which enables every EEE mode supported.

The best way forward for now seems to be to mark EEE as broken directly in
the devicetree, which affects the genphy_c45_write_eee_adv() function.

There are some devices, like GnuBee GB-PC2, that define additional PHYs,
for example ethernet-phy@5 or ethernet-phy@7. As reported by Chester A.
Unal, these are not MT7530 PHYs and they are not affected.

This would need to be cherrypicked for the OpenWRT 24.10 branch.

[1] https://github.com/openwrt/openwrt/issues/17351

[2] https://lore.kernel.org/all/0adde34f936a2dafca40b06b408d82afe0852327.camel@mediatek.com/

Tested-by: Darren Tucker
Signed-off-by: Mateusz Jończyk <mat.jonczyk@o2.pl>
Closes: https://github.com/openwrt/openwrt/issues/17351
Link: https://github.com/openwrt/openwrt/pull/18585
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-11 15:38:25 +02:00
..
airoha kernel: bump 6.6 to 6.6.89 2025-05-03 19:57:53 +02:00
apm821xx apm821xx: replace kmod-usb3 with kmod-usb-xhci-pci-renesas 2025-05-17 20:14:27 +02:00
armsr kernel: bump 6.6 to 6.6.93 2025-06-06 10:01:31 +02:00
at91 treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
ath79 kernel: bump 6.6 to 6.6.93 2025-06-06 10:01:31 +02:00
bcm27xx kernel: bump 6.12 to 6.12.32 2025-06-05 21:11:28 +02:00
bcm47xx treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
bcm53xx kernel: bump 6.6 to 6.6.90 2025-05-13 21:43:34 +02:00
bcm4908 bcm63xx-cfe: install into image staging dir 2025-04-13 10:44:19 +02:00
bmips bmips: bcm6358: add support for Huawei HG556a ver C 2025-06-11 15:10:46 +02:00
d1 kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
gemini gemini: Move back to using statically compiled PHYs 2025-06-03 23:05:15 +02:00
generic generic: improve patches documentation 2025-06-11 15:09:46 +02:00
imx imx: add 6.12 kernel as testing 2025-06-07 08:38:07 +02:00
ipq40xx ipq40xx: config-6.6: add new option 2025-06-06 10:01:31 +02:00
ipq806x ipq806x: config-6.6: add new option 2025-06-06 10:01:31 +02:00
ixp4xx ixp4xx: Switch to kernel v6.12 2025-06-03 01:45:40 +02:00
kirkwood treewide: dts: trim "#size-cells" from "gpio-export" node 2025-05-18 19:35:00 +02:00
lantiq treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
layerscape kernel: bump 6.6 to 6.6.88 2025-05-03 19:57:53 +02:00
loongarch64 kernel: Add KERNEL_DCB (Data Center Bridging) 2025-03-09 17:05:26 +01:00
malta malta: 6.12: enable kernel for testing 2025-05-29 22:46:47 +02:00
mediatek mediatek: filogic: add support for Cudy WR3000E v1 2025-06-07 18:07:03 +02:00
mpc85xx mac80211: ath9k: replace qca,led-sources 2025-05-24 21:33:37 +02:00
mvebu mvebu: armada37xx: add pending PXA I2C recovery fix 2025-05-20 20:54:48 +02:00
mxs mxs: drop 6.6 support 2025-05-24 16:15:53 +02:00
octeon kernel: reorder kernel symbol configs 2025-05-29 23:05:02 +02:00
omap kernel: Activate CONFIG_NET_SWITCHDEV in generic config 2025-03-15 13:54:59 +01:00
pistachio kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
qoriq kernel: Activate CONFIG_NET_SWITCHDEV in generic config 2025-03-15 13:54:59 +01:00
qualcommax kernel: bump 6.12 to 6.12.32 2025-06-05 21:11:28 +02:00
qualcommbe kernel: bump 6.12 to 6.12.32 2025-06-05 21:11:28 +02:00
ramips ramips/mt7621: mark EEE as broken in devicetree 2025-06-11 15:38:25 +02:00
realtek realtek: extend simple thermal driver to support rtl839x 2025-06-03 11:14:45 +02:00
rockchip rockchip: armv8: add missing config option 2025-05-25 17:57:19 +02:00
sifiveu kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
siflower treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
starfive kernel: bump 6.6 to 6.6.93 2025-06-06 10:01:31 +02:00
stm32 stm32: add missing config option 2025-05-25 17:57:19 +02:00
sunxi sunxi: enable crypto offload engine 2025-05-30 15:39:00 +02:00
tegra kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
uml uml: drop 6.6 config+patches 2025-06-09 11:10:19 +02:00
x86 kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
zynq kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00