[PATCH v2 1/2] arm64: dts: freescale: imx95-toradex-osm-dev: Remove ETH_A PHY interrupt
From: Francesco Dolcini
Date: Fri Oct 16 2026 - 14:41:33 EST
From: Francesco Dolcini <francesco.dolcini@xxxxxxxxxxx>
GPIO_A7 is a boot strap on the OSM iMX95 module. The pull-up on the OSM
Development Board Ethernet PHY interrupt line causes the module to enter
USB loader mode instead of booting normally when the reset button is
held for more than 0.5 seconds.
On the OSM Development Board the PHY interrupt line reaches GPIO_A7
through a jumper. Boards are shipped with this jumper removed to avoid
the strap conflict, with no change to the board revision, and GPIO_A7
is available in the jumper area for general-purpose use. A future board
revision might drop the PHY interrupt connection from the schematics
altogether.
Switch the PHY to polling and move the GPIO_A7 pinctrl configuration to
the GPIO controller. Polling works regardless of whether the jumper is
fitted, so this is transparent across existing and future board
revisions.
Fixes: 39be5a7e3ecc ("arm64: dts: freescale: Add Toradex OSM iMX95")
Signed-off-by: Francesco Dolcini <francesco.dolcini@xxxxxxxxxxx>
---
v2: explain the jumper and board revision situation in the commit message
---
arch/arm64/boot/dts/freescale/imx95-toradex-osm-dev.dts | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx95-toradex-osm-dev.dts b/arch/arm64/boot/dts/freescale/imx95-toradex-osm-dev.dts
index b3d54be07c43..8f56c2bafb66 100644
--- a/arch/arm64/boot/dts/freescale/imx95-toradex-osm-dev.dts
+++ b/arch/arm64/boot/dts/freescale/imx95-toradex-osm-dev.dts
@@ -115,6 +115,11 @@ &flexcan3 {
status = "okay";
};
+&gpio1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio_a7>;
+};
+
&gpio5 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_a1>, <&pinctrl_gpio_a2>, <&pinctrl_gpio_a3>,
@@ -317,10 +322,6 @@ &netc_emdio {
ethphy_a: ethernet-phy@2 {
reg = <2>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_gpio_a7>;
- interrupt-parent = <&gpio1>;
- interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
};
--
2.47.3