diff mbox series

arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5

Message ID 20220502144009.44575-1-amadeus@jmu.edu.cn (mailing list archive)
State New, archived
Headers show
Series arm64: dts: allwinner: define USB3 Ethernet on NanoPi R1S H5 | expand

Commit Message

Chukun Pan May 2, 2022, 2:40 p.m. UTC
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 <amadeus@jmu.edu.cn>
---
 arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-r1s-h5.dts | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Jernej Škrabec May 3, 2022, 5:54 p.m. UTC | #1
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 <amadeus@jmu.edu.cn>
> ---
>  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
> 
>
Jernej Škrabec May 3, 2022, 8 p.m. UTC | #2
Dne torek, 03. maj 2022 ob 19:54:34 CEST je Jernej Škrabec napisal(a):
> 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 <amadeus@jmu.edu.cn>
> > ---
> >  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;

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

Best regards,
Jernej

> >  		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
> > 
> > 
> 
> 
>
Chukun Pan May 8, 2022, 3:25 p.m. UTC | #3
> > --- 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
Andre Przywara May 9, 2022, 8:52 a.m. UTC | #4
On Sun,  8 May 2022 23:25:05 +0800
Chukun Pan <amadeus@jmu.edu.cn> 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
> 
>
Chukun Pan May 9, 2022, 3 p.m. UTC | #5
> 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
diff mbox series

Patch

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 {