
Hi Ulli,
Sorry for the late reply, but thanks for testing! I have sent a v3 of this patch, please reply to that mail with your reviewed-by or tested-by tag if you'd like them to be included.
Am 21.06.2024 um 00:07 schrieb Ulli Kehrle:
Sebastian Kropatsch seb-dev@mail.de writes:
The R6S is very similar to the R6C, the major difference being that instead of the M.2 NVMe socket on the R6C, the R6S has a second RTL8125BG Ethernet chip, which uses the same PCIe lanes that the R6C uses for its M.2 socket. Other minor differences include:
- 12-pin GPIO FPC instead of 30-pin header
- IR receiver (pwm-based)
- 5V fan connector
Other than that, they are the same, which is why the difference in U-Boot is only the missing NVME config option in the R6S defconfig.
Please note that I was not able to test this device. I only chose to add it due to it being a very similar implementation to the R6C, like the NanoPi R5C and R5S are similar. It should however boot just fine and even both RTL8125 Ethernet ports should work in U-Boot since RTL8125 is the same chip used in the R6C, using the rtl8169 driver.
Hi Sebastian,
it looks like you forgot to include the hunk that includes the board config board/friendlyelec/nanopi-r6s-rk3588s/Kconfig into rk3588/Kconfig.
Yes indeed, thanks for catching this oversight! This is fixed in v3.
diff --git a/arch/arm/mach-rockchip/rk3588/Kconfig b/arch/arm/mach-rockchip/rk3588/Kconfig index a9e400861a3..051d50e26f6 100644 --- a/arch/arm/mach-rockchip/rk3588/Kconfig +++ b/arch/arm/mach-rockchip/rk3588/Kconfig @@ -257,6 +257,7 @@ config TEXT_BASE source "board/edgeble/neural-compute-module-6/Kconfig" source "board/friendlyelec/nanopc-t6-rk3588/Kconfig" source "board/friendlyelec/nanopi-r6c-rk3588s/Kconfig" +source "board/friendlyelec/nanopi-r6s-rk3588s/Kconfig" source "board/indiedroid/nova/Kconfig" source "board/pine64/quartzpro64-rk3588/Kconfig" source "board/turing/turing-rk1-rk3588/Kconfig"
Other than that, this appears to work great on my Nanopi R6S (with the device tree from linux-6.9), including all three network interfaces, but no working status leds for the rtl8169 ports.
Yes, I have noticed that too. Maybe this is a bug in the rtl8169 driver from u-boot? Or maybe this can be fixed in the devicetree? Not sure.
I have also noticed the minor inconvenience that only the first two interfaces are initialized with nonzero MAC addresses (because rockchip_setup_macaddr is hardcoded for two interfaces?):
=> pci enum => net list eth0 : ethernet@fe1c0000 7a:d9:6d:ad:cb:26 active eth1 : eth_rtl8169 7a:d9:6d:ad:cb:27 eth2 : eth_rtl8169 00:00:00:00:00:00
I don't think this is a huge deal as it works fine when manually setting a MAC address and other boards with three or more interfaces (like the NanoPi R5S) also behave that way. What do you think?
Maybe this is a similar issue to this: https://lore.kernel.org/u-boot/CAPDEroXsN03yKL3D-tCcfQqA6vde7P4t2GmwQq80vnLQ...
Solving this issue is beyond my current abilities unfortunately.
Cheers, Sebastian