2022-05-03 00:05:12

by Chukun Pan

[permalink] [raw]
Subject: [PATCH] arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

The NanoPi R1S H5 has a Realtek RTL8153B USB 3.0 Ethernet chip
connected to the USB 2.0 port of the Allwinner H5 SoC.

Signed-off-by: Chukun Pan <[email protected]>
---
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
index 55b369534a08..dd655a491549 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
@@ -21,7 +21,8 @@ / {

aliases {
ethernet0 = &emac;
- ethernet1 = &rtl8189etv;
+ ethernet1 = &rtl8153;
+ ethernet2 = &rtl8189etv;
serial0 = &uart0;
};

@@ -116,6 +117,11 @@ &cpu0 {

&ehci1 {
status = "okay";
+
+ rtl8153: device@1 {
+ compatible = "usbbda,8153";
+ reg = <1>;
+ };
};

&ehci2 {
--
2.25.1


2022-05-04 02:36:03

by Jernej Škrabec

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

Dne ponedeljek, 02. maj 2022 ob 16:40:09 CEST je Chukun Pan napisal(a):
> The NanoPi R1S H5 has a Realtek RTL8153B USB 3.0 Ethernet chip
> connected to the USB 2.0 port of the Allwinner H5 SoC.
>
> Signed-off-by: Chukun Pan <[email protected]>
> ---
> arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts b/
arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> index 55b369534a08..dd655a491549 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> @@ -21,7 +21,8 @@ / {
>
> aliases {
> ethernet0 = &emac;
> - ethernet1 = &rtl8189etv;
> + ethernet1 = &rtl8153;
> + ethernet2 = &rtl8189etv;
> serial0 = &uart0;
> };
>
> @@ -116,6 +117,11 @@ &cpu0 {
>
> &ehci1 {
> status = "okay";

You need to add #address-cells and #size-cells properties, otherwise "make
dtbs_check W=1" generates warnings.

Best regards,
Jernej

> +
> + rtl8153: device@1 {
> + compatible = "usbbda,8153";
> + reg = <1>;
> + };
> };
>
> &ehci2 {
> --
> 2.25.1
>
>


2022-05-09 01:41:41

by Chukun Pan

[permalink] [raw]
Subject: Re: Re: [PATCH] arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

> > --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> > @@ -21,7 +21,8 @@ / {
> >
> > aliases {
> > ethernet0 = &emac;
> > - ethernet1 = &rtl8189etv;
> > + ethernet1 = &rtl8153;
> > + ethernet2 = &rtl8189etv;

> Additionally, it's not a good idea to change order of ethernet nodes. It can
> affect mac address assigning procedure in bootloader.

There is no eth1addr in uboot, so this doesn't affect the mac address.
The network order in the kernel is eth0(emac) / eth1(rtl8153) / wlan0,
so I think it would be better to change it this way.

Thanks,
Chukun


2022-05-09 10:57:18

by Andre Przywara

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

On Sun, 8 May 2022 23:25:05 +0800
Chukun Pan <[email protected]> wrote:

Hi,

> > > --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts
> > > @@ -21,7 +21,8 @@ / {
> > >
> > > aliases {
> > > ethernet0 = &emac;
> > > - ethernet1 = &rtl8189etv;
> > > + ethernet1 = &rtl8153;
> > > + ethernet2 = &rtl8189etv;
>
> > Additionally, it's not a good idea to change order of ethernet nodes. It can
> > affect mac address assigning procedure in bootloader.
>
> There is no eth1addr in uboot, so this doesn't affect the mac address.

Really? I don't have a board at hand to double check, but the code I read
here says otherwise:
https://source.denx.de/u-boot/u-boot/-/blob/master/board/sunxi/board.c#L791-813
There it checks for up to four ethernet aliases and assigns MAC addresses
to them, using the index in the lowest byte.
So this would change the MAC address of the WiFi adapter.

Am I missing something?

> The network order in the kernel is eth0(emac) / eth1(rtl8153) / wlan0,

Regardless of the fact that you shouldn't rely on indexes in device names,
wouldn't that be that same, regardless of the order of USB and WiFi?

Cheers,
Andre

> so I think it would be better to change it this way.
>
> Thanks,
> Chukun
>
>


2022-05-09 15:05:34

by Chukun Pan

[permalink] [raw]
Subject: Re: Re: [PATCH] arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

> Really? I don't have a board at hand to double check, but the code I read
> here says otherwise:
> https://source.denx.de/u-boot/u-boot/-/blob/master/board/sunxi/board.c#L791-813
> There it checks for up to four ethernet aliases and assigns MAC addresses
> to them, using the index in the lowest byte.
> So this would change the MAC address of the WiFi adapter.
> Am I missing something?

I'm very sorry for this, the rtl8189etv driver assigns the correct
mac address to wlan0, so I didn't observe the mac address change.
Sorry for my misunderstanding.

Thanks,
Chukun