From 89d8dc13d066e5dc44586e3db670cb8daabf7c23 Mon Sep 17 00:00:00 2001 From: Christian Marangi Date: Thu, 14 May 2026 22:02:00 +0200 Subject: [PATCH] airoha: an7581: move internal PHY interrupt to specific device DTS It was discovered that the internal PHY interrupt are not always connected and PHY link up/down is not correctly detected. This is the case of the Nokia Valyrian board that suffer from this problem. To handle this, drop the internal PHY interrupt property from DTSI and add it only to the Gemtek W1700K DTS where it was reported to work correctly. Signed-off-by: Christian Marangi --- target/linux/airoha/dts/an7581-w1700k-ubi.dts | 2 ++ target/linux/airoha/dts/an7581.dtsi | 4 ---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/target/linux/airoha/dts/an7581-w1700k-ubi.dts b/target/linux/airoha/dts/an7581-w1700k-ubi.dts index 1ec5f0320a6..f845dcad869 100644 --- a/target/linux/airoha/dts/an7581-w1700k-ubi.dts +++ b/target/linux/airoha/dts/an7581-w1700k-ubi.dts @@ -375,6 +375,7 @@ &gsw_phy1 { status = "okay"; + interrupts = <1>; pinctrl-names = "gbe-led"; pinctrl-0 = <&gswp1_led0_pins>; }; @@ -386,6 +387,7 @@ &gsw_phy2 { status = "okay"; + interrupts = <2>; pinctrl-names = "gbe-led"; pinctrl-0 = <&gswp2_led0_pins>; }; diff --git a/target/linux/airoha/dts/an7581.dtsi b/target/linux/airoha/dts/an7581.dtsi index c00eaa5c324..efbb4ca54e4 100644 --- a/target/linux/airoha/dts/an7581.dtsi +++ b/target/linux/airoha/dts/an7581.dtsi @@ -1056,7 +1056,6 @@ gsw_phy1: ethernet-phy@9 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <9>; - interrupts = <1>; phy-mode = "internal"; status = "disabled"; @@ -1079,7 +1078,6 @@ gsw_phy2: ethernet-phy@a { compatible = "ethernet-phy-ieee802.3-c22"; reg = <10>; - interrupts = <2>; phy-mode = "internal"; status = "disabled"; @@ -1102,7 +1100,6 @@ gsw_phy3: ethernet-phy@b { compatible = "ethernet-phy-ieee802.3-c22"; reg = <11>; - interrupts = <3>; phy-mode = "internal"; status = "disabled"; @@ -1125,7 +1122,6 @@ gsw_phy4: ethernet-phy@c { compatible = "ethernet-phy-ieee802.3-c22"; reg = <12>; - interrupts = <4>; phy-mode = "internal"; status = "disabled";