All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node
@ 2020-07-13 13:04 Fabio Estevam
  2020-07-13 13:04 ` [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us Fabio Estevam
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Fabio Estevam @ 2020-07-13 13:04 UTC (permalink / raw)
  To: shawnguo; +Cc: smoch, Fabio Estevam, linux-imx, linux-arm-kernel

imx6qdl-sabresd has an Atheros AR8031 Ethernet PHY at address 1.

The AR8031 provides a 125MHz clock to the ENET_REF_CLK i.MX6 pin.

Improve the Ethernet representation by adding an mdio node with such
information.

An advantage of adding the mdio node is that the AR8031 initialization
code in the mx6sabresd board file in U-Boot can totally be removed.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Changes since v1:
- None. Only inverted the order of the patches

 arch/arm/boot/dts/imx6qdl-sabresd.dtsi | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
index 28b35ccb3757..6524ad4b0010 100644
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
@@ -203,9 +203,20 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_enet>;
 	phy-mode = "rgmii-id";
+	phy-handle = <&phy>;
 	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
 	fsl,magic-packet;
 	status = "okay";
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		phy: ethernet-phy@1 {
+			reg = <1>;
+			qca,clk-out-frequency = <125000000>;
+		};
+	};
 };
 
 &hdmi {
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us
  2020-07-13 13:04 [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Fabio Estevam
@ 2020-07-13 13:04 ` Fabio Estevam
  2020-07-14  9:50   ` Soeren Moch
  2020-07-14  9:49 ` [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Sören Moch
  2020-07-20  2:19 ` Shawn Guo
  2 siblings, 1 reply; 5+ messages in thread
From: Fabio Estevam @ 2020-07-13 13:04 UTC (permalink / raw)
  To: shawnguo; +Cc: smoch, Fabio Estevam, linux-imx, linux-arm-kernel

According to the AR8031 datasheet:

"When using crystal, clock is generated internally after the power is
stable. In order to get reliable power-on-reset, it is recommended to
keep asserting the reset low signal long enough (10 ms) to ensure the
clock is stable and clock-to-reset (1 ms) requirement is satisfied."

Pass the 'reset-assert-us' property to describe such requirement.

While at it, use the 'reset-gpios' property inside the the mdio
node instead of the deprecated usage of 'phy-reset-gpios'.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Changes since v1:
- Use reset-gpios and reset-assert-us inside the mdio node
instead of the deprecated usage of phy-reset-gpios (Soeren)

 arch/arm/boot/dts/imx6qdl-sabresd.dtsi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
index 6524ad4b0010..5597d45fffda 100644
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
@@ -204,7 +204,6 @@
 	pinctrl-0 = <&pinctrl_enet>;
 	phy-mode = "rgmii-id";
 	phy-handle = <&phy>;
-	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
 	fsl,magic-packet;
 	status = "okay";
 
@@ -215,6 +214,8 @@
 		phy: ethernet-phy@1 {
 			reg = <1>;
 			qca,clk-out-frequency = <125000000>;
+			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
+			reset-assert-us = <10000>;
 		};
 	};
 };
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node
  2020-07-13 13:04 [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Fabio Estevam
  2020-07-13 13:04 ` [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us Fabio Estevam
@ 2020-07-14  9:49 ` Sören Moch
  2020-07-20  2:19 ` Shawn Guo
  2 siblings, 0 replies; 5+ messages in thread
From: Sören Moch @ 2020-07-14  9:49 UTC (permalink / raw)
  To: Fabio Estevam, shawnguo; +Cc: linux-imx, linux-arm-kernel

On 13.07.20 15:04, Fabio Estevam wrote:
> imx6qdl-sabresd has an Atheros AR8031 Ethernet PHY at address 1.
>
> The AR8031 provides a 125MHz clock to the ENET_REF_CLK i.MX6 pin.
>
> Improve the Ethernet representation by adding an mdio node with such
> information.
>
> An advantage of adding the mdio node is that the AR8031 initialization
> code in the mx6sabresd board file in U-Boot can totally be removed.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>

Reviewed-by: Soeren Moch <smoch@web.de>

Thanks,
Soeren

> ---
> Changes since v1:
> - None. Only inverted the order of the patches
>
>  arch/arm/boot/dts/imx6qdl-sabresd.dtsi | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index 28b35ccb3757..6524ad4b0010 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -203,9 +203,20 @@
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&pinctrl_enet>;
>  	phy-mode = "rgmii-id";
> +	phy-handle = <&phy>;
>  	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
>  	fsl,magic-packet;
>  	status = "okay";
> +
> +	mdio {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		phy: ethernet-phy@1 {
> +			reg = <1>;
> +			qca,clk-out-frequency = <125000000>;
> +		};
> +	};
>  };
>
>  &hdmi {


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us
  2020-07-13 13:04 ` [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us Fabio Estevam
@ 2020-07-14  9:50   ` Soeren Moch
  0 siblings, 0 replies; 5+ messages in thread
From: Soeren Moch @ 2020-07-14  9:50 UTC (permalink / raw)
  To: Fabio Estevam, shawnguo; +Cc: linux-imx, linux-arm-kernel



On 13.07.20 15:04, Fabio Estevam wrote:
> According to the AR8031 datasheet:
>
> "When using crystal, clock is generated internally after the power is
> stable. In order to get reliable power-on-reset, it is recommended to
> keep asserting the reset low signal long enough (10 ms) to ensure the
> clock is stable and clock-to-reset (1 ms) requirement is satisfied."
>
> Pass the 'reset-assert-us' property to describe such requirement.
>
> While at it, use the 'reset-gpios' property inside the the mdio
> node instead of the deprecated usage of 'phy-reset-gpios'.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>

Reviewed-by: Soeren Moch <smoch@web.de>

Thanks,
Soeren

> ---
> Changes since v1:
> - Use reset-gpios and reset-assert-us inside the mdio node
> instead of the deprecated usage of phy-reset-gpios (Soeren)
>
>  arch/arm/boot/dts/imx6qdl-sabresd.dtsi | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index 6524ad4b0010..5597d45fffda 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -204,7 +204,6 @@
>  	pinctrl-0 = <&pinctrl_enet>;
>  	phy-mode = "rgmii-id";
>  	phy-handle = <&phy>;
> -	phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
>  	fsl,magic-packet;
>  	status = "okay";
>
> @@ -215,6 +214,8 @@
>  		phy: ethernet-phy@1 {
>  			reg = <1>;
>  			qca,clk-out-frequency = <125000000>;
> +			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
> +			reset-assert-us = <10000>;
>  		};
>  	};
>  };


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node
  2020-07-13 13:04 [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Fabio Estevam
  2020-07-13 13:04 ` [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us Fabio Estevam
  2020-07-14  9:49 ` [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Sören Moch
@ 2020-07-20  2:19 ` Shawn Guo
  2 siblings, 0 replies; 5+ messages in thread
From: Shawn Guo @ 2020-07-20  2:19 UTC (permalink / raw)
  To: Fabio Estevam; +Cc: smoch, linux-imx, linux-arm-kernel

On Mon, Jul 13, 2020 at 10:04:15AM -0300, Fabio Estevam wrote:
> imx6qdl-sabresd has an Atheros AR8031 Ethernet PHY at address 1.
> 
> The AR8031 provides a 125MHz clock to the ENET_REF_CLK i.MX6 pin.
> 
> Improve the Ethernet representation by adding an mdio node with such
> information.
> 
> An advantage of adding the mdio node is that the AR8031 initialization
> code in the mx6sabresd board file in U-Boot can totally be removed.
> 
> Signed-off-by: Fabio Estevam <festevam@gmail.com>

Applied both, thanks.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-07-20  2:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-13 13:04 [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Fabio Estevam
2020-07-13 13:04 ` [PATCH v2 2/2] ARM: dts: imx6qdl-sabresd: Pass reset-assert-us Fabio Estevam
2020-07-14  9:50   ` Soeren Moch
2020-07-14  9:49 ` [PATCH v2 1/2] ARM: dts: imx6qdl-sabresd: Add an mdio node Sören Moch
2020-07-20  2:19 ` Shawn Guo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.