[PATCH u-boot-marvell] arm: mvebu: dts: turris_mox: fix non-working network / MDIO

Stefan Roese sr at denx.de
Wed Mar 16 07:22:33 CET 2022


On 3/15/22 16:37, Marek Behún wrote:
> From: Marek Behún <marek.behun at 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 at nic.cz>

As a temporary fix for this release:

Reviewed-by: Stefan Roese <sr at 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 at kernel.org>
> + */
> +
> +/ {
> +	mdio {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		old_binding_phy1: ethernet-phy at 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 at denx.de


More information about the U-Boot mailing list