Skip to contentSkip to conversation

ARM: dts: imx6qdl-pico: Fix Ethernet support

PATCH Superseded Fabio Estevam 2 participants 3 messages Sep 14, 2021

Subsystems (2)

v2 of 4 Superseded Latest is v4 →

lore
Share & tools
lore

Fabio Estevam

author reviewer
#0 lore raw

PATCH v2 1/1 ARM: dts: imx6qdl-pico: Fix Ethernet support

Currently, it is no longer possible to retrieve a DHCP address on the imx6qdl-pico board.

This issue has been exposed by commit f5d9aa79dfdf ("ARM: imx6q:
remove clk-out fixup for the Atheros AR8031 and AR8035 PHYs").

Fix it by describing the qca,clk-out-frequency property as suggested by the commit above.

Fixes 98670a0bb0ef14bbb3 ("ARM: dts: imx6qdl: Add imx6qdl-pico support")

---
Changes since v1:
- Add the board name in the Subject.

 arch/arm/boot/dts/imx6qdl-pico.dtsi | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
arch/arm/boot/dts/imx6qdl-pico.dtsi +12 -1
index 5de4ccb97916..0a55e1e583ae 100644
@@ -175,8 +175,19 @@ &fec {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_enet>;
 	phy-mode = "rgmii-id";
-	phy-reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
 	status = "okay";
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		phy: ethernet-phy@1 {
+			reg = <1>;
+			qca,clk-out-frequency = <125000000>;
+			reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
+			reset-assert-us = <10000>;
+		};
+	};
 };
 
 &hdmi {
Signature · 7 lines
2.25.1


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
#1 lore raw
Quoted 28 lines · Fabio Estevam

Currently, it is no longer possible to retrieve a DHCP address on the imx6qdl-pico board.

This issue has been exposed by commit f5d9aa79dfdf ("ARM: imx6q:
remove clk-out fixup for the Atheros AR8031 and AR8035 PHYs").

Fix it by describing the qca,clk-out-frequency property as suggested by the commit above.

Fixes 98670a0bb0ef14bbb3 ("ARM: dts: imx6qdl: Add imx6qdl-pico support")

---
Changes since v1:
- Add the board name in the Subject.

 arch/arm/boot/dts/imx6qdl-pico.dtsi | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
arch/arm/boot/dts/imx6qdl-pico.dtsi +0 -1
index 5de4ccb97916..0a55e1e583ae 100644
@@ -175,8 +175,19 @@ &fec {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_enet>;
 	phy-mode = "rgmii-id";
-	phy-reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
 	status = "okay";

arch/arm/boot/dts/imx6qdl-pico.dtsi &fec { · line 188

Quoted 10 lines
arch/arm/boot/dts/imx6qdl-pico.dtsi +10 -0
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		phy: ethernet-phy@1 {
+			reg = <1>;
+			qca,clk-out-frequency = <125000000>;
+			reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
+			reset-assert-us = <10000>;

Do you know how fast this PHY reacts after a reset? arch/arm/boot/dts/imx6dl-riotboard.dts for example also has:

                        reset-deassert-us = <1000>;

so it has a bit of time to get going before trying to talk to it.

Andrew

_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

author reviewer
#2 lore raw

Hi Andrew,

Quoted 2 lines · Andrew Lunn

Do you know how fast this PHY reacts after a reset? arch/arm/boot/dts/imx6dl-riotboard.dts for example also has:

It is an AR8035. According to the datasheet, a 1ms delay is recommended after reset.

Quoted 2 lines
                        reset-deassert-us = <1000>;

Yes, this looks correct.

For now, I have sent v3 that only passes qca,clk-out-frequency to avoid the regression.

I will revisit the reset properties later.

Thanks

_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel