dt-bindings: arm: rockchip: Add FriendlyElec NanoPi R28S
Subsystems (2)
PATCH 1/2 dt-bindings: arm: rockchip: Add FriendlyElec NanoPi R28S
The NanoPi R28S is a router board from FriendlyElec with the Rockchip RK3528A SoC.
--- Documentation/devicetree/bindings/arm/rockchip.yaml | 5 +++++ 1 file changed, 5 insertions(+)
Documentation/devicetree/bindings/arm/rockchip.yaml +5 -0
@@ -340,6 +340,11 @@ properties: - friendlyarm,nanopi-r2s-plus - const: rockchip,rk3328 + - description: FriendlyElec NanoPi R28S + items: + - const: friendlyarm,nanopi-r28s + - const: rockchip,rk3528 + - description: FriendlyElec NanoPi R3S items: - const: friendlyarm,nanopi-r3s
base-commit: df2908090cda368b01ff43709f51890076c56157
Signature · 1 line
2.54.0.windows.1
PATCH 2/2 arm64: dts: rockchip: Add FriendlyElec NanoPi R28S
The NanoPi R28S is a 45x45 mm router board from FriendlyElec with the Rockchip RK3528A SoC. It has the following features:
- 1GB LPDDR4
- MicroSD card slot
- eMMC module socket
- 1x 1GbE RTL8211F Ethernet on gmac1
- 1x 1GbE RTL8111H Ethernet on the PCIe Gen2 x1 controller
- AICSemi AIC8800D80 Wi-Fi 6 / Bluetooth module on sdio0
- HYM8563 RTC with battery connector
- 1x USB 2.0 Type-C, 5V input and maskrom port
- 1x USB Type-C debug console, uart0 behind a USB-UART bridge
- 2 buttons (User, Maskrom)
- 3 LEDs (SYS, LAN, WAN)
The PHY reset is described on the MAC with snps,reset-gpio rather than in the PHY node. This board leaves the PHY in reset unless the bootloader released it, and of_mdio.c reads the PHY ID with get_phy_device() before phy_device_register() picks up a PHY node's reset-gpios, so described that way the PHY is reported missing and the port never comes up. As mii_bus->reset, stmmac runs it before the bus is scanned and defers the probe until the GPIO controller is available.
---
Tested on the board, booting Armbian images built from this device tree on 7.2.4 and on v7.3-rc2. Both Ethernet ports carry link: stmmac finds the RTL8211F on mdio1, and the RTL8111H enumerates behind the PCIe root port. adc-keys and the HYM8563 RTC probe, and the system runs off the SD card, iozone included.
An earlier build on v7.3-rc1 wedged the SD host - dw_mmc timing out on a bare SDMMC_CMD_UPD_CLK, the card then rescanned in a loop, boots taking minutes or hanging before the rootfs appeared. Neither v7.2.4 nor v7.3-rc2 does that with the same device tree file, so it did not come from here.
dwc3 is the one node not exercised beyond probing - the board's only USB port is the Type-C jack that takes the 5V input and doubles as the maskrom port, so there is nothing for it to talk to.
arch/arm64/boot/dts/rockchip/Makefile | 1 + .../boot/dts/rockchip/rk3528-nanopi-r28s.dts | 387 ++++++++++++++++++ 2 files changed, 388 insertions(+) create mode 100644 arch/arm64/boot/dts/rockchip/rk3528-nanopi-r28s.dts
arch/arm64/boot/dts/rockchip/Makefile +1 -0
@@ -94,6 +94,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-vicharak-vaaman.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399pro-rock-pi-n10.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-armsom-sige1.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-hinlink-h28k.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-nanopi-r28s.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-nanopi-zero2.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-radxa-e20c.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-rock-2a.dtb
arch/arm64/boot/dts/rockchip/rk3528-nanopi-r28s.dts new file +387 -0
387 lines not on this page · raw message
Signature · 1 line
2.54.0.windows.1
Quoted 2 lines · Andrey Korshunov
The NanoPi R28S is a router board from FriendlyElec with the Rockchip RK3528A SoC.
There's already an attempt in the works to upstream NanoPi R28S support:
https://lore.kernel.org/linux-rockchip/[email protected]/
Cheers,
Diederik
Quoted 24 lines
Signed-off-by Andrey Korshunov <[email protected]>--- Documentation/devicetree/bindings/arm/rockchip.yaml | 5 +++++ 1 file changed, 5 insertions(+)Documentation/devicetree/bindings/arm/rockchip.yaml +5
-0@@ -340,6 +340,11 @@ properties: - friendlyarm,nanopi-r2s-plus - const: rockchip,rk3328 + - description: FriendlyElec NanoPi R28S + items: + - const: friendlyarm,nanopi-r28s + - const: rockchip,rk3528 + - description: FriendlyElec NanoPi R3S items: - const: friendlyarm,nanopi-r3sbase-commit:
df2908090cda368b01ff43709f51890076c56157
Quoted 2 lines · Diederik de Haas
There's already an attempt in the works to upstream NanoPi R28S support:
https://lore.kernel.org/linux-rockchip/[email protected]/
Thanks, I had not seen it - I searched lore before sending, evidently not well enough. That series is further along and covers more of the board, so please drop mine.
I have the hardware and will review and test that one instead. One finding about the PHY reset has gone to patch 2 of that thread.
Andrey