* [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY
@ 2025-06-04 15:35 Stefano Radaelli
2025-06-04 16:44 ` Fabio Estevam
2025-06-04 17:16 ` Andrew Lunn
0 siblings, 2 replies; 5+ messages in thread
From: Stefano Radaelli @ 2025-06-04 15:35 UTC (permalink / raw)
To: devicetree, linux-kernel
Cc: othacehe, Stefano Radaelli, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, imx, linux-arm-kernel
Variscite has updated the Ethernet PHY on the VAR-SOM-MX93 from the
Murata CYW43353 to the MaxLinear MXL86110, as documented in the
August 2023 revision changelog.
Link: https://variwiki.com/index.php?title=VAR-SOM-MX93_rev_changelog
Update the device tree accordingly:
- Drop the unused regulator node previously used to power the Murata PHY.
- Add support for the reset line using GPIO1_IO07 with proper timings.
- Configure the PHY LEDs via the LED subsystem under /sys/class/leds/,
leveraging the support implemented in the mxl86110 PHY driver
(drivers/net/phy/mxl-86110.c).
Two LEDs are defined to match the LED configuration on the Variscite
VAR-SOM Carrier Boards:
* LED@0: Yellow, netdev trigger.
* LED@1: Green, netdev trigger.
- Adjust the RGMII clock pad control settings to match the updated PHY
requirements.
These changes ensure proper PHY initialization and LED status indication
for the new MaxLinear MXL86110, improving board compatibility with the
latest hardware revision.
Signed-off-by: Stefano Radaelli <stefano.radaelli21@gmail.com>
---
v2:
- Clarified the use of 'rgmii' mode by adding a comment in the DT,
explaining that hardware delays are already implemented on the SOM PCB.
v1: https://lore.kernel.org/imx/20250603221416.74523-1-stefano.radaelli21@gmail.com/
.../boot/dts/freescale/imx93-var-som.dtsi | 45 ++++++++++++-------
1 file changed, 30 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi
index 783938245e4f..cea8d792328c 100644
--- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi
@@ -19,26 +19,19 @@ mmc_pwrseq: mmc-pwrseq {
reset-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>, /* WIFI_RESET */
<&gpio3 7 GPIO_ACTIVE_LOW>; /* WIFI_PWR_EN */
};
-
- reg_eqos_phy: regulator-eqos-phy {
- compatible = "regulator-fixed";
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_reg_eqos_phy>;
- regulator-name = "eth_phy_pwr";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>;
- enable-active-high;
- startup-delay-us = <100000>;
- regulator-always-on;
- };
};
&eqos {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_eqos>;
+ /*
+ * The required RGMII TX and RX 2ns delays are implemented directly
+ * in hardware via passive delay elements on the SOM PCB.
+ * No delay configuration is needed in software via PHY driver.
+ */
phy-mode = "rgmii";
phy-handle = <ðphy0>;
+ snps,clk-csr = <5>;
status = "okay";
mdio {
@@ -51,6 +44,27 @@ ethphy0: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0>;
eee-broken-1000t;
+ reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
+ reset-assert-us = <10000>;
+ reset-deassert-us = <100000>;
+ leds {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led@0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_YELLOW>;
+ function = LED_FUNCTION_LAN;
+ linux,default-trigger = "netdev";
+ };
+
+ led@1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ linux,default-trigger = "netdev";
+ };
+ };
};
};
};
@@ -75,14 +89,15 @@ MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0 0x57e
MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1 0x57e
MX93_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2 0x57e
MX93_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3 0x57e
- MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x5fe
+ MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x58e
MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x57e
MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0 0x57e
MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1 0x57e
MX93_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2 0x57e
MX93_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3 0x57e
- MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x5fe
+ MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x58e
MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x57e
+ MX93_PAD_UART2_TXD__GPIO1_IO07 0x51e
>;
};
base-commit: a9dfb7db96f7bc1f30feae673aab7fdbfbc94e9c
prerequisite-patch-id: 2335ebcc90360b008c840e7edf7e34a595880edf
--
2.43.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY
2025-06-04 15:35 [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY Stefano Radaelli
@ 2025-06-04 16:44 ` Fabio Estevam
2025-06-04 17:01 ` Stefano Radaelli
2025-06-04 17:16 ` Andrew Lunn
1 sibling, 1 reply; 5+ messages in thread
From: Fabio Estevam @ 2025-06-04 16:44 UTC (permalink / raw)
To: Stefano Radaelli
Cc: devicetree, linux-kernel, othacehe, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, imx, linux-arm-kernel
Hi Stefano,
Nitpik: The subject line of your path should be:
Subject: [PATCH v2] arm64: dts: ....
and not only
Subject: [v2] rm64: dts: ....
On Wed, Jun 4, 2025 at 12:36 PM Stefano Radaelli
<stefano.radaelli21@gmail.com> wrote:
>
> Variscite has updated the Ethernet PHY on the VAR-SOM-MX93 from the
> Murata CYW43353 to the MaxLinear MXL86110, as documented in the
Murata CYW43353 is a Wifi chip, not an Ethernet PHY.
I think you meant:
"from the ADIN1300BCPZ to the MaxLinear MXL86110"
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY
2025-06-04 16:44 ` Fabio Estevam
@ 2025-06-04 17:01 ` Stefano Radaelli
0 siblings, 0 replies; 5+ messages in thread
From: Stefano Radaelli @ 2025-06-04 17:01 UTC (permalink / raw)
To: Fabio Estevam
Cc: devicetree, linux-kernel, othacehe, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, imx, linux-arm-kernel
Hi Fabio,
Good catch on both points, you're absolutely right.
I'll update the subject line to include "PATCH" and fix the incorrect reference
to the Murata chip (should have been ADIN1300BCPZ, of course).
Thanks again for the careful review!
Best Regards,
Stefano
Il giorno mer 4 giu 2025 alle ore 18:44 Fabio Estevam
<festevam@gmail.com> ha scritto:
>
> Hi Stefano,
>
> Nitpik: The subject line of your path should be:
>
> Subject: [PATCH v2] arm64: dts: ....
>
> and not only
>
> Subject: [v2] rm64: dts: ....
>
> On Wed, Jun 4, 2025 at 12:36 PM Stefano Radaelli
> <stefano.radaelli21@gmail.com> wrote:
> >
> > Variscite has updated the Ethernet PHY on the VAR-SOM-MX93 from the
> > Murata CYW43353 to the MaxLinear MXL86110, as documented in the
>
> Murata CYW43353 is a Wifi chip, not an Ethernet PHY.
>
> I think you meant:
>
> "from the ADIN1300BCPZ to the MaxLinear MXL86110"
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY
2025-06-04 15:35 [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY Stefano Radaelli
2025-06-04 16:44 ` Fabio Estevam
@ 2025-06-04 17:16 ` Andrew Lunn
2025-06-04 17:24 ` Stefano Radaelli
1 sibling, 1 reply; 5+ messages in thread
From: Andrew Lunn @ 2025-06-04 17:16 UTC (permalink / raw)
To: Stefano Radaelli
Cc: devicetree, linux-kernel, othacehe, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, imx, linux-arm-kernel
> &eqos {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_eqos>;
> + /*
> + * The required RGMII TX and RX 2ns delays are implemented directly
> + * in hardware via passive delay elements on the SOM PCB.
> + * No delay configuration is needed in software via PHY driver.
> + */
> phy-mode = "rgmii";
For this part only:
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Andrew
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY
2025-06-04 17:16 ` Andrew Lunn
@ 2025-06-04 17:24 ` Stefano Radaelli
0 siblings, 0 replies; 5+ messages in thread
From: Stefano Radaelli @ 2025-06-04 17:24 UTC (permalink / raw)
To: Andrew Lunn
Cc: devicetree, linux-kernel, othacehe, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, imx, linux-arm-kernel
Thank you Andrew,
would it be ok to add your Reviewed-by tag in v3 after applying also
the corrections suggested by Fabio Estevam?
Best,
Stefano
Il giorno mer 4 giu 2025 alle ore 19:16 Andrew Lunn <andrew@lunn.ch> ha scritto:
>
> > &eqos {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_eqos>;
> > + /*
> > + * The required RGMII TX and RX 2ns delays are implemented directly
> > + * in hardware via passive delay elements on the SOM PCB.
> > + * No delay configuration is needed in software via PHY driver.
> > + */
> > phy-mode = "rgmii";
>
> For this part only:
>
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>
>
> Andrew
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-06-04 17:24 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-04 15:35 [v2] arm64: dts: freescale: imx93-var-som: update eqos support for MaxLinear PHY Stefano Radaelli
2025-06-04 16:44 ` Fabio Estevam
2025-06-04 17:01 ` Stefano Radaelli
2025-06-04 17:16 ` Andrew Lunn
2025-06-04 17:24 ` Stefano Radaelli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®