openwrt-pf/package/boot
Grische e54f0353c2
rockchip: add support for FriendlyARM NanoPi R2S Plus
The NanoPi R2S Plus is a NanoPi R2S with on-board eMMC added. The device
tree (rk3328-nanopi-r2s-plus.dts) is already present in kernel 6.12, and
U-Boot support has been present since v2025.01, so neither a kernel DTS
backport nor a U-Boot patch is required.

Hardware
--------
Rockchip RK3328 (4x Cortex-A53, up to 1.4 GHz)
1GB DDR4 RAM
32GB eMMC 5.1
microSD slot (up to 128GB)
1x 1000 Base-T (native, RTL8211F via GMAC) - WAN
1x 1000 Base-T (USB 3.0, RTL8153B) - LAN
Optional M.2 SDIO Wi-Fi
2x USB 2.0 Type-A host
1x USB-C (5V power input, USB device for Maskrom update)
1x USB-C (onboard USB-to-UART debug console, 1500000 bps)
1x serial debug header / UART0 (3.3V TTL, 3-pin 2.54mm)
2 Buttons (GPIO key, Maskrom)
3 LEDs (SYS red, WAN green, LAN green)
DC 5V/2A power
Operating temperature 0 to 70 C

The MAC addresses are derived from the eMMC CID, so they are stable
regardless of whether the device boots from microSD or eMMC.

Installation
------------

On RK3328 the BootROM boots the eMMC before the microSD slot, so the
Maskrom button must be held to boot from microSD while stock firmware is
still on the eMMC.

How to boot from eMMC:

1. Write the uncompressed sysupgrade image to sdcard
2. Hold the "Mask" button while powering on the device
3. Wait until OpenWrt is fully booted
4. Copy the compressed .gz sysupgrade image to the machine's /tmp folder using scp
5. Run: gunzip -c /tmp/openwrt-...-friendlyarm_nanopi-r2s-plus-squashfs-sysupgrade.img.gz | dd of=/dev/mmcblk1 bs=4M conv=fsync
6. Power the device off, remove the sdcard and power it back on

Tested:
- microSD boot (via Maskrom button) and native eMMC boot
- Both Ethernet ports (RTL8211F WAN, RTL8153B LAN)
- eMMC-derived MAC addresses

Signed-off-by: Grische <github@grische.xyz>
Assisted-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Link: https://github.com/openwrt/openwrt/pull/23854
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2026-06-29 09:13:34 +02:00
..
apboot-aruba-ipq806x ipq806x: add apboot package for AP-32x 2026-06-16 16:08:11 +02:00
apex
arm-trusted-firmware-bcm63xx treewide: remove references for obsolete binutils versions 2026-04-18 19:34:21 +02:00
arm-trusted-firmware-imx arm-trusted-firmware-imx: add new package 2026-06-01 17:49:36 +02:00
arm-trusted-firmware-mediatek atf-mediatek: add mt7981 UBI DDR3-1866 build 2026-05-09 15:42:26 +02:00
arm-trusted-firmware-microchipsw boot: arm-trusted-firmware-microchipsw: depend on host Ruby 2026-01-12 18:01:17 +01:00
arm-trusted-firmware-mvebu arm-trusted-firmware-mvebu: bump to 2.14 2026-04-11 12:23:36 +02:00
arm-trusted-firmware-rockchip arm-trusted-firmware-rockchip: bump to 2.14.0 2026-01-15 16:33:26 +02:00
arm-trusted-firmware-stm32 arm-trusted-firmware-stm32: bump to v2.14 2026-02-26 23:34:10 +01:00
arm-trusted-firmware-sunxi arm-trusted-firmware-sunxi: bump to 2.14 2026-02-08 00:56:16 +01:00
arm-trusted-firmware-tools package: arm-trusted-firmware-tools: add proper patch header 2026-06-23 12:17:00 +02:00
at91bootstrap
fconfig
grub2 treewide: use HTTPS URL for GNU websites 2026-01-02 18:07:02 +01:00
imx-bootlets treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
kexec-tools kexec-tools: add zstd to package dependencies 2026-01-28 23:56:15 +01:00
kobs-ng treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
mt7623n-preloader
opensbi
optee-os-stm32 optee-os-stm32: bump to 4.9.0 2026-02-26 23:34:10 +01:00
rkbin
tfa-layerscape tfa-layerscape: bump to lf-6.18.2-1.0.0 2026-06-26 18:50:56 +02:00
uboot-airoha uboot-airoha: add support for Nokia XG-040G-MD 2026-06-29 02:01:29 +02:00
uboot-armsr
uboot-at91 uboot-at91: fix wrong BUILD_DEVICES for sama5d4_xplained_nandflash 2026-04-20 18:07:56 +02:00
uboot-ath79 uboot-ath79: update to v2026.04 2026-05-25 22:06:34 +02:00
uboot-bcm53xx uboot-bcm53xx: bump U-Boot to 2025.10 2026-01-06 01:15:46 +01:00
uboot-bcm4908
uboot-bmips
uboot-d1 uboot-d1: update to 2024.01 2026-01-23 10:35:35 +01:00
uboot-fritz4040 uboot-fritz4040: update to Git HEAD (2026-03-08) 2026-03-14 21:46:31 +01:00
uboot-imx uboot-imx: do not build efimkcapsule tool 2026-06-04 00:47:20 +02:00
uboot-kirkwood
uboot-lantiq uboot-lantiq: fix C-style comments in AWK scripts 2026-03-23 01:23:33 +01:00
uboot-layerscape uboot-layerscape: bump to lf-6.18.2-1.0.0 2026-06-26 18:50:56 +02:00
uboot-mediatek mediatek: creatlentem clt-r30b1: add all-in-UBI layout 2026-06-17 09:09:25 +02:00
uboot-microchipsw uboot-microchipsw: add FIP update flashing shortcut 2026-01-23 11:07:23 +01:00
uboot-mvebu uboot-mvebu: update to version 2026.04 2026-05-15 20:59:47 +02:00
uboot-mxs
uboot-omap uboot-omap: update to 2024.07 2026-06-07 11:45:36 +02:00
uboot-qoriq package: uboot-qoriq: fix T4240RDB u-boot selection 2026-01-12 13:59:30 +01:00
uboot-rockchip rockchip: add support for FriendlyARM NanoPi R2S Plus 2026-06-29 09:13:34 +02:00
uboot-sifiveu
uboot-stm32 uboot-stm32: bump to 2026.01 2026-02-26 23:34:10 +01:00
uboot-sunxi uboot-sunxi: bump to 2026.04 2026-05-29 08:23:24 +02:00
uboot-tegra
uboot-tools airoha: add support for Nokia XG-040G-MD 2026-06-29 02:01:29 +02:00
uboot-zynq zynq: add Bitmain Antminer S9 control board support 2026-06-16 20:19:24 +02:00