OpenWrt for ROCK Pi S

Hello, I am adding support for OpenWrt on ROCK Pi S.
I would be glad if someone could test the builds and post the UART log.

GitHub repo: https://github.com/jayanta525/rock-pi-s

Thanks.

UPDATE:

4 Likes

Great news. I will test this and give you the logs.

1 Like

I’m interested to help you in OpenWRT port.
I’m got some experience with OpenWRT, and I’ve got a Rock PI S V1.1 with WiFi.
I’ll test your builds.

1 Like

OpenWrt for ROCK Pi S test build is complete.

I will release a compiled build with a separate feed repository soon.

dmesg (click to expand)
Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd042]
[    0.000000] Linux version 5.4.60 (ubnt@ubnt-git-dev-nginx-s-2vcpu-4gb-blr1-01) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r14280-d9ced18ca5)) #0 SMP PREEMPT Sun Sep 27 08:36:33 2020
[    0.000000] Machine model: Radxa ROCK Pi S
[    0.000000] earlycon: uart8250 at MMIO32 0x00000000ff0a0000 (options '')
[    0.000000] printk: bootconsole [uart8250] enabled
[    0.000000] cma: Reserved 8 MiB at 0x000000001f800000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.0
[    0.000000] percpu: Embedded 21 pages/cpu s45848 r8192 d31976 u86016
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 128520
[    0.000000] Kernel command line: console=ttyS0,1500000 earlycon=uart8250,mmio32,0xff0a0000 root=PARTUUID=5452574f-02 rw rootwait
[    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 482800K/522240K available (7294K kernel code, 526K rwdata, 2280K rodata, 1600K init, 701K bss, 31248K reserved, 8192K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    0.000000]  Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] random: get_random_bytes called from start_kernel+0x29c/0x398 with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000008] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.001415] Console: colour dummy device 80x25
[    0.001927] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[    0.002869] pid_max: default: 32768 minimum: 301
[    0.003495] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.004171] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.030070] ASID allocator initialised with 32768 entries
[    0.038047] rcu: Hierarchical SRCU implementation.
[    0.054131] smp: Bringing up secondary CPUs ...
[    0.086356] Detected VIPT I-cache on CPU1
[    0.086437] CPU1: Booted secondary processor 0x0000000001 [0x410fd042]
[    0.118445] Detected VIPT I-cache on CPU2
[    0.118514] CPU2: Booted secondary processor 0x0000000002 [0x410fd042]
[    0.150552] Detected VIPT I-cache on CPU3
[    0.150619] CPU3: Booted secondary processor 0x0000000003 [0x410fd042]
[    0.150743] smp: Brought up 1 node, 4 CPUs
[    0.153986] SMP: Total of 4 processors activated.
[    0.154419] CPU features: detected: 32-bit EL0 Support
[    0.154932] CPU features: detected: CRC32 instructions
[    0.162209] CPU: All CPU(s) started at EL2
[    0.162642] alternatives: patching kernel code
[    0.173253] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.174164] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.175421] pinctrl core: initialized pinctrl subsystem
[    0.176894] NET: Registered protocol family 16
[    0.184042] DMA: preallocated 256 KiB pool for atomic allocations
[    0.186276] cpuidle: using governor menu
[    0.187021] Serial: AMBA PL011 UART driver
[    0.213032] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[    0.213657] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[    0.214270] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[    0.214911] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    0.218556] vdd_log: supplied by vcc5v0_sys
[    0.219351] vcc_ddr: supplied by vcc5v0_sys
[    0.220387] vcc_io: supplied by vcc5v0_sys
[    0.221090] vcc-sd GPIO handle specifies active low - ignored
[    0.221685] vcc_sd: supplied by vcc_io
[    0.222221] vcc_1v8: supplied by vcc_io
[    0.223278] iommu: Default domain type: Translated
[    0.224268] SCSI subsystem initialized
[    0.224869] usbcore: registered new interface driver usbfs
[    0.225421] usbcore: registered new interface driver hub
[    0.226044] usbcore: registered new device driver usb
[    0.227371] workqueue: max_active 576 requested for napi_workq is out of range, clamping between 1 and 512
[    0.229291] clocksource: Switched to clocksource arch_sys_counter
[    0.230150] VFS: Disk quotas dquot_6.6.0
[    0.230584] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.236635] thermal_sys: Registered thermal governor 'step_wise'
[    0.236643] thermal_sys: Registered thermal governor 'power_allocator'
[    0.237722] NET: Registered protocol family 2
[    0.239335] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.240120] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.240881] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear)
[    0.241633] TCP: Hash tables configured (established 4096 bind 4096)
[    0.242368] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.242984] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.243855] NET: Registered protocol family 1
[    0.244295] PCI: CLS 0 bytes, default 64
[    0.246172] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    0.256062] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.256610] jffs2: version 2.2 (NAND) (SUMMARY) (ZLIB) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.   
[    0.259568] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.260628] io scheduler mq-deadline registered
[    0.264823] dma-pl330 ff2c0000.dma-controller: Loaded driver for PL330 DMAC-241330
[    0.265579] dma-pl330 ff2c0000.dma-controller:       DBUFF-32x8bytes Num_Chans-6 Num_Peri-12 Num_Events-12
[    0.268201] dma-pl330 ff2d0000.dma-controller: Loaded driver for PL330 DMAC-241330
[    0.268904] dma-pl330 ff2d0000.dma-controller:       DBUFF-128x8bytes Num_Chans-8 Num_Peri-20 Num_Events-16
[    0.270252] pwm-regulator: supplied by vcc5v0_sys
[    0.273334] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.275650] printk: console [ttyS0] disabled
[    0.276172] ff0a0000.serial: ttyS0 at MMIO 0xff0a0000 (irq = 12, base_baud = 1500000) is a 16550A
[    0.277241] printk: console [ttyS0] enabled
[    0.277241] printk: console [ttyS0] enabled
[    0.278048] printk: bootconsole [uart8250] disabled
[    0.278048] printk: bootconsole [uart8250] disabled
[    0.287624] loop: module loaded
[    0.287921] mtip32xx Version 1.3.1
[    0.291769] libphy: Fixed MDIO Bus: probed
[    0.293008] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.293650] ehci-platform: EHCI generic platform driver
[    0.294223] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.294787] ohci-platform: OHCI generic platform driver
[    0.295622] usbcore: registered new interface driver usb-storage
[    0.296271] i2c /dev entries driver
[    0.299305] energy_model: pd0: hertz/watts ratio non-monotonically decreasing: em_cap_state 1 >= em_cap_state0
[    0.302018] sdhci: Secure Digital Host Controller Interface driver
[    0.302572] sdhci: Copyright(c) Pierre Ossman
[    0.302957] Synopsys Designware Multimedia Card Interface Driver
[    0.304326] dwmmc_rockchip ff480000.mmc: IDMAC supports 32-bit address mode.
[    0.304977] dwmmc_rockchip ff480000.mmc: Using internal DMA controller.
[    0.305586] dwmmc_rockchip ff480000.mmc: Version ID is 270a
[    0.306140] dwmmc_rockchip ff480000.mmc: DW MMC controller at irq 19,32 bit host data width,256 deep fifo
[    0.320181] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    0.334215] dwmmc_rockchip ff490000.mmc: IDMAC supports 32-bit address mode.
[    0.334881] dwmmc_rockchip ff490000.mmc: Using internal DMA controller.
[    0.335474] dwmmc_rockchip ff490000.mmc: Version ID is 270a
[    0.336036] dwmmc_rockchip ff490000.mmc: DW MMC controller at irq 20,32 bit host data width,256 deep 

fifo
[    0.337135] mmc_host mmc1: card is non-removable.
[    0.349473] mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    0.363190] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.365441] ledtrig-cpu: registered to indicate activity on CPUs
[    0.366559] usbcore: registered new interface driver usbhid
[    0.367058] usbhid: USB HID core driver
[    0.368809] NET: Registered protocol family 10
[    0.370869] Segment Routing with IPv6
[    0.371336] NET: Registered protocol family 17
[    0.371794] 8021q: 802.1Q VLAN Support v1.8
[    0.392655] mmc_host mmc1: Bus speed (slot 0) = 300000Hz (slot req 300000Hz, actual 300000HZ div = 0)
[    0.397434] hctosys: unable to open rtc device (rtc0)
[    0.398774] ttyS0 - failed to request DMA
[    0.399351] Waiting for root device PARTUUID=5452574f-02...
[    0.406308] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[    0.407504] mmc0: new high speed SDHC card at address aaaa
[    0.409455] mmcblk0: mmc0:aaaa SC16G 14.8 GiB
[    0.414395]  mmcblk0: p1 p2
[    0.437452] mmc_host mmc1: Bus speed (slot 0) = 200000Hz (slot req 200000Hz, actual 200000HZ div = 0)
[    0.443193] EXT4-fs (mmcblk0p2): warning: mounting unchecked fs, running e2fsck is recommended
[    0.445947] EXT4-fs (mmcblk0p2): mounted filesystem without journal. Opts: (null)
[    0.446687] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    0.448429] Freeing unused kernel memory: 1600K
[    0.453527] Run /sbin/init as init process
[    0.490419] mmc_host mmc1: Bus speed (slot 0) = 100000Hz (slot req 100000Hz, actual 100000HZ div = 0)
[    0.535533] init: Console is alive
[    0.547161] random: fast init done
[    0.627524] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    0.634662] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    0.638369] init: - preinit -
[    0.850748] random: jshn: uninitialized urandom read (4 bytes read)
[    0.884916] random: jshn: uninitialized urandom read (4 bytes read)
[    0.903925] random: jshn: uninitialized urandom read (4 bytes read)
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    5.067361] mount_root: mounting /dev/root
[    5.069434] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    5.127562] EXT4-fs (mmcblk0p1): mounted filesystem without journal. Opts: (null)
[    5.138956] urandom-seed: Seeding with /etc/urandom.seed
[    5.167641] procd: - early -
[    5.736982] procd: - ubus -
[    5.749571] urandom_read: 2 callbacks suppressed
[    5.749582] random: ubusd: uninitialized urandom read (4 bytes read)
[    5.792410] random: ubusd: uninitialized urandom read (4 bytes read)
[    5.793501] random: ubusd: uninitialized urandom read (4 bytes read)
[    5.795402] procd: - init -
Please press Enter to activate this console.
[    6.019165] urngd: v1.0.2 started.
[    6.023952] kmodloader: loading kernel modules from /etc/modules.d/*
[    6.056635] random: crng init done
[    6.056961] random: 2 urandom warning(s) missed due to ratelimiting
[    6.063082] xt_time: kernel timezone is -0000
[    6.077760] PPP generic driver version 2.4.2
[    6.079350] NET: Registered protocol family 24
[    6.088277] kmodloader: done loading kernel modules from /etc/modules.d/*
BusyBox v1.31.1 () built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r14285-de3e5bb336
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:/#

OpenWrt builds for ROCK Pi S are now available at

https://jayanta525.gitlab.io/openwrt-rockpis/

Tested on: 512MB Model

1 Like

Hello
Is it possible to start this image from SD NAND?

Hello my dears.
Yesterday I successfully started the Pi S with OpenWrt. Unfortunately no WiFi. Is WiFi possible? If so, what should I do?

LG Kebe

Yes, its in the TODO list. It will soon be available.

No, not in the current situation. There has been lot of discussion regarding this. You could use an USB wifi adapter.

#bump

OpenWrt repo for the ROCK Pi S is updated.

jayanta525/rk3308-rock-pi-s: OpenWrt/Linux/u-boot for ROCK Pi S by Radxa (github.com)
Linux: 6.1
Uboot: v2022.04

u-boot build instructions - rk3308-rock-pi-s/uboot-tk3308-doc at main · jayanta525/rk3308-rock-pi-s (github.com)

SDNAND boot - rk3308-rock-pi-s/uboot-tk3308-doc/SDNAND.md at main · jayanta525/rk3308-rock-pi-s (github.com)

1 Like

Hi.
The update is not working with old loader (for old revision of Rock Pi S.
Could you please add support to it? May be you can provide details on old branch which will be able to build OpenWRT for old loader (maybe with lower Kernel)

Thanks

1 Like