All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO
@ 2022-03-15 15:37 Marek Behún
  2022-03-16  6:22 ` Stefan Roese
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Marek Behún @ 2022-03-15 15:37 UTC (permalink / raw)
  To: Stefan Roese; +Cc: pali, u-boot, Marek Behún

From: Marek Behún <marek.behun@nic.cz>

Commit 0934dddc6436 ("arm: a37xx: Update DTS files to version from
upstream Linux kernel") ported Linux's device-tree files for Armada 3720
SOCs. This broke network on Turris MOX, because the SOC's MDIO bus in
U-Boot currently isn't probed via DM as it's own device, but is
registered as part of mvneta's driver, which means that pinctrl
definitions are not parsed for the MDIO bus node. Also mvneta driver
does not consider "phy-handle" property, only "phy".

For now, fix this by adding armada-3720-turris-mox-u-boot.dtsi file
returning the MDIO to how it was defined previously.

A better solution (using proper mvmdio DM driver) is being work on, but
will need testing on various boards, and we need the bug fixed now for
the upcoming release.

Fixes: 0934dddc6436 ("arm: a37xx: Update DTS files to version from upstream Linux kernel")
Signed-off-by: Marek Behún <marek.behun@nic.cz>
---
Dear Stefan,

this fix is needed for the upcoming release, is it still possible?
Thanks.

Marek
---
 .../dts/armada-3720-turris-mox-u-boot.dtsi    | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi

diff --git a/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
new file mode 100644
index 0000000000..2e05b973d2
--- /dev/null
+++ b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
@@ -0,0 +1,23 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * 2022 by Marek Behún <kabel@kernel.org>
+ */
+
+/ {
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		old_binding_phy1: ethernet-phy@1 {
+			reg = <1>;
+		};
+	};
+};
+
+&eth0 {
+	pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
+	/delete-property/ phy-handle;
+	phy = <&old_binding_phy1>;
+};
+
+/delete-node/ &mdio;
-- 
2.34.1


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

* Re: [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO
  2022-03-15 15:37 [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO Marek Behún
@ 2022-03-16  6:22 ` Stefan Roese
  2022-03-16  9:52 ` Stefan Roese
  2022-03-16  9:57 ` Pali Rohár
  2 siblings, 0 replies; 4+ messages in thread
From: Stefan Roese @ 2022-03-16  6:22 UTC (permalink / raw)
  To: Marek Behún; +Cc: pali, u-boot, Marek Behún

On 3/15/22 16:37, Marek Behún wrote:
> From: Marek Behún <marek.behun@nic.cz>
> 
> Commit 0934dddc6436 ("arm: a37xx: Update DTS files to version from
> upstream Linux kernel") ported Linux's device-tree files for Armada 3720
> SOCs. This broke network on Turris MOX, because the SOC's MDIO bus in
> U-Boot currently isn't probed via DM as it's own device, but is
> registered as part of mvneta's driver, which means that pinctrl
> definitions are not parsed for the MDIO bus node. Also mvneta driver
> does not consider "phy-handle" property, only "phy".
> 
> For now, fix this by adding armada-3720-turris-mox-u-boot.dtsi file
> returning the MDIO to how it was defined previously.
> 
> A better solution (using proper mvmdio DM driver) is being work on, but
> will need testing on various boards, and we need the bug fixed now for
> the upcoming release.
> 
> Fixes: 0934dddc6436 ("arm: a37xx: Update DTS files to version from upstream Linux kernel")
> Signed-off-by: Marek Behún <marek.behun@nic.cz>

As a temporary fix for this release:

Reviewed-by: Stefan Roese <sr@denx.de>

> ---
> Dear Stefan,
> 
> this fix is needed for the upcoming release, is it still possible?
> Thanks.

Yes, I think this should be possible.

Thanks,
Stefan

> Marek
> ---
>   .../dts/armada-3720-turris-mox-u-boot.dtsi    | 23 +++++++++++++++++++
>   1 file changed, 23 insertions(+)
>   create mode 100644 arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> 
> diff --git a/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> new file mode 100644
> index 0000000000..2e05b973d2
> --- /dev/null
> +++ b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> @@ -0,0 +1,23 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * 2022 by Marek Behún <kabel@kernel.org>
> + */
> +
> +/ {
> +	mdio {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		old_binding_phy1: ethernet-phy@1 {
> +			reg = <1>;
> +		};
> +	};
> +};
> +
> +&eth0 {
> +	pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
> +	/delete-property/ phy-handle;
> +	phy = <&old_binding_phy1>;
> +};
> +
> +/delete-node/ &mdio;

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

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

* Re: [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO
  2022-03-15 15:37 [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO Marek Behún
  2022-03-16  6:22 ` Stefan Roese
@ 2022-03-16  9:52 ` Stefan Roese
  2022-03-16  9:57 ` Pali Rohár
  2 siblings, 0 replies; 4+ messages in thread
From: Stefan Roese @ 2022-03-16  9:52 UTC (permalink / raw)
  To: Marek Behún; +Cc: pali, u-boot, Marek Behún

On 3/15/22 16:37, Marek Behún wrote:
> From: Marek Behún <marek.behun@nic.cz>
> 
> Commit 0934dddc6436 ("arm: a37xx: Update DTS files to version from
> upstream Linux kernel") ported Linux's device-tree files for Armada 3720
> SOCs. This broke network on Turris MOX, because the SOC's MDIO bus in
> U-Boot currently isn't probed via DM as it's own device, but is
> registered as part of mvneta's driver, which means that pinctrl
> definitions are not parsed for the MDIO bus node. Also mvneta driver
> does not consider "phy-handle" property, only "phy".
> 
> For now, fix this by adding armada-3720-turris-mox-u-boot.dtsi file
> returning the MDIO to how it was defined previously.
> 
> A better solution (using proper mvmdio DM driver) is being work on, but
> will need testing on various boards, and we need the bug fixed now for
> the upcoming release.
> 
> Fixes: 0934dddc6436 ("arm: a37xx: Update DTS files to version from upstream Linux kernel")
> Signed-off-by: Marek Behún <marek.behun@nic.cz>
> ---
> Dear Stefan,
> 
> this fix is needed for the upcoming release, is it still possible?
> Thanks.

Applied to u-boot-marvell/master

Thanks,
Stefan


> Marek
> ---
>   .../dts/armada-3720-turris-mox-u-boot.dtsi    | 23 +++++++++++++++++++
>   1 file changed, 23 insertions(+)
>   create mode 100644 arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> 
> diff --git a/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> new file mode 100644
> index 0000000000..2e05b973d2
> --- /dev/null
> +++ b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> @@ -0,0 +1,23 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * 2022 by Marek Behún <kabel@kernel.org>
> + */
> +
> +/ {
> +	mdio {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		old_binding_phy1: ethernet-phy@1 {
> +			reg = <1>;
> +		};
> +	};
> +};
> +
> +&eth0 {
> +	pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
> +	/delete-property/ phy-handle;
> +	phy = <&old_binding_phy1>;
> +};
> +
> +/delete-node/ &mdio;

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

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

* Re: [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO
  2022-03-15 15:37 [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO Marek Behún
  2022-03-16  6:22 ` Stefan Roese
  2022-03-16  9:52 ` Stefan Roese
@ 2022-03-16  9:57 ` Pali Rohár
  2 siblings, 0 replies; 4+ messages in thread
From: Pali Rohár @ 2022-03-16  9:57 UTC (permalink / raw)
  To: Marek Behún; +Cc: Stefan Roese, u-boot, Marek Behún

On Tuesday 15 March 2022 16:37:27 Marek Behún wrote:
> From: Marek Behún <marek.behun@nic.cz>
> 
> Commit 0934dddc6436 ("arm: a37xx: Update DTS files to version from
> upstream Linux kernel") ported Linux's device-tree files for Armada 3720
> SOCs. This broke network on Turris MOX, because the SOC's MDIO bus in
> U-Boot currently isn't probed via DM as it's own device, but is
> registered as part of mvneta's driver, which means that pinctrl
> definitions are not parsed for the MDIO bus node. Also mvneta driver
> does not consider "phy-handle" property, only "phy".
> 
> For now, fix this by adding armada-3720-turris-mox-u-boot.dtsi file
> returning the MDIO to how it was defined previously.
> 
> A better solution (using proper mvmdio DM driver) is being work on, but
> will need testing on various boards, and we need the bug fixed now for
> the upcoming release.
> 
> Fixes: 0934dddc6436 ("arm: a37xx: Update DTS files to version from upstream Linux kernel")
> Signed-off-by: Marek Behún <marek.behun@nic.cz>

Reviewed-by: Pali Rohár <pali@kernel.org>

This is my mistake as I probably tested network with my patch series
only on EspressoBin. EspressoBin is not really affected by this issue as
it uses fixed settings in DT. Network is really working fine with U-Boot
master branch.

> ---
> Dear Stefan,
> 
> this fix is needed for the upcoming release, is it still possible?
> Thanks.
> 
> Marek
> ---
>  .../dts/armada-3720-turris-mox-u-boot.dtsi    | 23 +++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> 
> diff --git a/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> new file mode 100644
> index 0000000000..2e05b973d2
> --- /dev/null
> +++ b/arch/arm/dts/armada-3720-turris-mox-u-boot.dtsi
> @@ -0,0 +1,23 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * 2022 by Marek Behún <kabel@kernel.org>
> + */
> +
> +/ {
> +	mdio {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		old_binding_phy1: ethernet-phy@1 {
> +			reg = <1>;
> +		};
> +	};
> +};
> +
> +&eth0 {
> +	pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
> +	/delete-property/ phy-handle;
> +	phy = <&old_binding_phy1>;
> +};
> +
> +/delete-node/ &mdio;
> -- 
> 2.34.1
> 

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

end of thread, other threads:[~2022-03-16  9:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-15 15:37 [PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO Marek Behún
2022-03-16  6:22 ` Stefan Roese
2022-03-16  9:52 ` Stefan Roese
2022-03-16  9:57 ` Pali Rohár

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.