[PATCH] sunxi: H6: Enable Ethernet on Orange Pi One Plus

Anne Macedo retpolanne at posteo.net
Tue Jul 11 21:40:21 CEST 2023


On 11.07.2023 02:39, Anne Macedo wrote:
> Enable Ethernet on Orange Pi One Plus by using the correct phy for
> Realtek RTL8211E instead of the Generic One. Also use CONFIG_MACPWR to
> turn on ethernet on startup.
> 
> After this patch is applied, a few issues can be seen:
> 
> - there's still a PHY reset timed out error that doesn't seem to cause
>   any impacts to the overall connection
> 
> - sometimes the emac driver times out after reset (yellow LED turns on
>   and never blinks)
> 
> For future patches: for now, CONFIG_MACPWR is the only way to enable
> Ethernet on boot. There's already code on the dts for using the 
> 3v3-gmac
> regulator. However, it is not probed on boot, so it only starts after a
> "regulator status" command is issued.
> 
> More details about the troubleshooting on [1].
> 
> [1]
> https://lore.kernel.org/u-boot/4wsvwgy56e2xfgtvioru2tf2ofkqprlts36qggivxogww6pn5j@4jk63zxhzhag/
> 
> Signed-off-by: Anne Macedo <retpolanne at posteo.net>
> ---
>  arch/arm/dts/sun50i-h6-orangepi-one-plus.dts | 2 +-
>  configs/orangepi_one_plus_defconfig          | 4 ++++
>  2 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/dts/sun50i-h6-orangepi-one-plus.dts
> b/arch/arm/dts/sun50i-h6-orangepi-one-plus.dts
> index 29a081e72a..6427c58f8a 100644
> --- a/arch/arm/dts/sun50i-h6-orangepi-one-plus.dts
> +++ b/arch/arm/dts/sun50i-h6-orangepi-one-plus.dts
> @@ -37,7 +37,7 @@
> 
>  &mdio {
>  	ext_rgmii_phy: ethernet-phy at 1 {
> -		compatible = "ethernet-phy-ieee802.3-c22";
> +		compatible = "ethernet-phy-id001c.c915", 
> "ethernet-phy-ieee802.3-c22" ;
>  		reg = <1>;
>  	};
>  };
> diff --git a/configs/orangepi_one_plus_defconfig
> b/configs/orangepi_one_plus_defconfig
> index aa5f540eb1..a1835492db 100644
> --- a/configs/orangepi_one_plus_defconfig
> +++ b/configs/orangepi_one_plus_defconfig
> @@ -8,3 +8,7 @@ CONFIG_SUNXI_DRAM_H6_LPDDR3=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> +CONFIG_SUN8I_EMAC=y
> +CONFIG_PHY_REALTEK=y
> +CONFIG_PHY_ETHERNET_ID=y
> +CONFIG_MACPWR="PD6"

Adding linux-sunxi to the thread (I unfortunately forgot this list)


More information about the U-Boot mailing list