Askey RAC2V1K / RT4230W REV6 Support

Has anyone else tried running the new 5.15 master build on this router? I have tried a few times now but it just causes the router to get stuck in a boot loop. Here is the log.

U-Boot 1.0.6 [spf.5.0.2_csu1.1] (Sep 26 2019 - 02:44:05)

smem ram ptable found: ver: 0 len: 5
DRAM:  1003 MiB
setting 0x177e as machine type from smem
NAND:  SF: Unsupported manufacturer 00
ipq_spi: SPI Flash not found (bus/cs/speed/mode) = (0/0/48000000/0)
256 MiB
MMC:
PCI0 Link Intialized
PCI1 Link Intialized
In:    serial
Out:   serial
Err:   serial
MMC Device 0 not found
cdp: get part failed for 0:HLOS
Net:   MAC0 addr:80:78:71:e1:5f:db
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17c init  done
MAC1 addr:80:78:71:e1:5f:dc
eth0, eth1
Hit space key to stop autoboot:  0
Creating 1 MTD partitions on "nand0":
0x000002400000-0x000010000000 : "mtd=0"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    126976 bytes
UBI: smallest flash I/O unit:    2048
UBI: VID header offset:          2048 (aligned 2048)
UBI: data offset:                4096
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=0"
UBI: MTD device size:            220 MiB
UBI: number of good PEBs:        1756
UBI: number of bad PEBs:         4
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     3
UBI: available PEBs:             19
UBI: total number of reserved PEBs: 1737
UBI: number of PEBs reserved for bad PEB handling: 17
UBI: max/mean erase counter: 13/7
Read 7208960 bytes from volume kernel to 44000000
   Loading Kernel Image ... OK
OK

device nand0 <nand0>, # parts = 1
 #: name                size            offset          mask_flags
 0: firmware            0x0dc00000      0x02400000      0

active partition: nand0,0 - (firmware) 0x0dc00000 @ 0x02400000

defaults:
mtdids  : none
mtdparts: none
Setting up atags for msm partition: firmware
Using machid 0x177e from environment

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.15.77 (user@mint-7010) (arm-openwrt-linux-muslgnueabi-gcc (OpenWrt GCC 11.3.0 r21215+43-10ba380ec3) 11.3.0, GNU ld (GNU Binutils) 2.37) #0 SMP Fri Nov 11 01:39:14 2022
[    0.000000] CPU: ARMv7 Processor [512f04d0] revision 0 (ARMv7), cr=10c5787d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: Askey RT4230W REV6
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000042000000-0x0000000071ffffff]
[    0.000000]   HighMem  [mem 0x0000000072000000-0x000000007fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000042000000-0x000000007fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000042000000-0x000000007fffffff]
[    0.000000] percpu: Embedded 12 pages/cpu s16460 r8192 d24500 u49152
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 252224
[    0.000000] Kernel command line: rootfstype=squashfs noinitrd
[    0.000000] Bootloader command line (ignored):
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 994472K/1015808K available (7246K kernel code, 616K rwdata, 1760K rodata, 1024K init, 239K bss, 21336K reserved, 0K cma-reserved, 229376K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 305801671480 ns
[    0.000001] sched_clock: 32 bits at 6MHz, resolution 160ns, wraps every 343597383600ns
[    0.000025] Switching to timer-based delay loop, resolution 160ns
[    0.000399] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.50 BogoMIPS (lpj=62500)
[    0.000436] pid_max: default: 32768 minimum: 301
[    0.000723] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.000756] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.001887] CPU: Testing write buffer coherency: ok
[    0.002233] qcom_scm: convention: smc legacy
[    0.003553] Setting up static identity map for 0x42300000 - 0x42300060
[    0.003759] rcu: Hierarchical SRCU implementation.
[    0.004092] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[    0.004361] smp: Bringing up secondary CPUs ...
[    0.006386] smp: Brought up 1 node, 2 CPUs
[    0.006413] SMP: Total of 2 processors activated (25.00 BogoMIPS).
[    0.006433] CPU: All CPU(s) started in SVC mode.
[    0.018031] VFP support v0.3: implementor 51 architecture 64 part 4d variant 2 rev 0
[    0.018195] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.018234] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.018397] pinctrl core: initialized pinctrl subsystem
[    0.020271] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.020746] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.022101] thermal_sys: Registered thermal governor 'step_wise'
[    0.024077] cpuidle: using governor ladder
[    0.024161] cpuidle: using governor menu
[    0.043542] qcom_rpm 108000.rpm: RPM firmware 3.0.16777377
[    0.079104] s1a: Bringing 0uV into 1050000-1050000uV
[    0.079338] s1a: supplied by regulator-dummy
[    0.079504] s1b: Bringing 0uV into 1050000-1050000uV
[    0.079724] s1b: supplied by regulator-dummy
[    0.079869] s2a: Bringing 0uV into 775000-775000uV
[    0.080067] s2a: supplied by regulator-dummy
[    0.080223] s2b: Bringing 0uV into 775000-775000uV
[    0.080429] s2b: supplied by regulator-dummy
[    0.081036] usbcore: registered new interface driver usbfs
[    0.081110] usbcore: registered new interface driver hub
[    0.081180] usbcore: registered new device driver usb
[    0.081236] pps_core: LinuxPPS API ver. 1 registered
[    0.081252] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.081285] PTP clock support registered
[    0.083461] clocksource: Switched to clocksource dg_timer
[    0.084437] NET: Registered PF_INET protocol family
[    0.084667] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.085750] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.085793] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.085823] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    0.085884] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.085987] TCP: Hash tables configured (established 8192 bind 8192)
[    0.086083] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.086126] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.086398] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.086451] PCI: CLS 0 bytes, default 64
[    0.087397] workingset: timestamp_bits=14 max_order=18 bucket_order=4
[    0.093014] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.093131] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.194844] bounce: pool size: 64 pages
[    0.197614] qcom-pcie 1b500000.pci: supply vdda not found, using dummy regulator
[    0.197826] qcom-pcie 1b500000.pci: supply vdda_phy not found, using dummy regulator
[    0.197947] qcom-pcie 1b500000.pci: supply vdda_refclk not found, using dummy regulator
[    0.198215] qcom-pcie 1b500000.pci: host bridge /soc/pci@1b500000 ranges:
[    0.198305] qcom-pcie 1b500000.pci:       IO 0x000fe00000..0x000fe0ffff -> 0x000fe00000
[    0.198349] qcom-pcie 1b500000.pci:      MEM 0x0008000000..0x000fdfffff -> 0x0008000000
[    0.316492] qcom-pcie 1b500000.pci: iATU unroll: disabled
[    0.316515] qcom-pcie 1b500000.pci: Detected iATU regions: 8 outbound, 8 inbound
[    0.419271] qcom-pcie 1b500000.pci: Link up
[    0.419433] qcom-pcie 1b500000.pci: PCI host bridge to bus 0000:00
[    0.419457] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.419484] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0xfe00000-0xfe0ffff])
[    0.419505] pci_bus 0000:00: root bus resource [mem 0x08000000-0x0fdfffff]
[    0.419584] pci 0000:00:00.0: [17cb:0101] type 01 class 0x060400
[    0.419718] pci 0000:00:00.0: supports D1
[    0.419739] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    0.423294] PCI: bus0: Fast back to back transfers disabled
[    0.423792] pci 0000:01:00.0: [168c:0046] type 00 class 0x028000
[    0.423978] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    0.424782] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    0.428489] PCI: bus1: Fast back to back transfers disabled
[    0.428585] pci 0000:00:00.0: BAR 8: assigned [mem 0x08000000-0x081fffff]
[    0.428614] pci 0000:01:00.0: BAR 0: assigned [mem 0x08000000-0x081fffff 64bit]
[    0.428715] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    0.428743] pci 0000:00:00.0:   bridge window [mem 0x08000000-0x081fffff]
[    0.429676] pcieport 0000:00:00.0: AER: enabled with IRQ 47
[    0.430654] qcom-pcie 1b700000.pci: supply vdda not found, using dummy regulator
[    0.430875] qcom-pcie 1b700000.pci: supply vdda_phy not found, using dummy regulator
[    0.430986] qcom-pcie 1b700000.pci: supply vdda_refclk not found, using dummy regulator
[    0.431256] qcom-pcie 1b700000.pci: host bridge /soc/pci@1b700000 ranges:
[    0.431346] qcom-pcie 1b700000.pci:       IO 0x0031e00000..0x0031e0ffff -> 0x0031e00000
[    0.431387] qcom-pcie 1b700000.pci:      MEM 0x002e000000..0x0031dfffff -> 0x002e000000
[    0.558290] qcom-pcie 1b700000.pci: iATU unroll: disabled
[    0.558314] qcom-pcie 1b700000.pci: Detected iATU regions: 8 outbound, 8 inbound
[    0.661006] qcom-pcie 1b700000.pci: Link up
[    0.661148] qcom-pcie 1b700000.pci: PCI host bridge to bus 0001:00
[    0.661173] pci_bus 0001:00: root bus resource [bus 00-ff]
[    0.661198] pci_bus 0001:00: root bus resource [io  0x10000-0x1ffff] (bus address [0x31e00000-0x31e0ffff])
[    0.661220] pci_bus 0001:00: root bus resource [mem 0x2e000000-0x31dfffff]
[    0.661294] pci 0001:00:00.0: [17cb:0101] type 01 class 0x060400
[    0.661423] pci 0001:00:00.0: supports D1
[    0.661442] pci 0001:00:00.0: PME# supported from D0 D1 D3hot
[    0.665046] PCI: bus0: Fast back to back transfers disabled
[    0.665432] pci 0001:01:00.0: [168c:0046] type 00 class 0x028000
[    0.665629] pci 0001:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    0.666504] pci 0001:01:00.0: PME# supported from D0 D3hot D3cold
[    0.666789] pci 0001:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0001:00:00.0 (capable of 4.000 Gb/s with 5.0 GT/s PCIe x1 link)
[    0.670288] PCI: bus1: Fast back to back transfers disabled
[    0.670375] pci 0001:00:00.0: BAR 8: assigned [mem 0x2e000000-0x2e1fffff]
[    0.670406] pci 0001:01:00.0: BAR 0: assigned [mem 0x2e000000-0x2e1fffff 64bit]
[    0.670511] pci 0001:00:00.0: PCI bridge to [bus 01-ff]
[    0.670538] pci 0001:00:00.0:   bridge window [mem 0x2e000000-0x2e1fffff]
[    0.671395] pcieport 0001:00:00.0: AER: enabled with IRQ 49
[    0.675267] krait-cc soc:clock-controller: CPU0 @ 800000 KHz
[    0.675293] krait-cc soc:clock-controller: CPU1 @ PXO rate. Forcing new rate.
[    0.675442] krait-cc soc:clock-controller: CPU1 @ 384000 KHz
[    0.675463] krait-cc soc:clock-controller: L2 @ PXO rate. Forcing new rate.
[    0.675664] krait-cc soc:clock-controller: L2 @ 384000 KHz
[    0.679648] gsbi 16300000.gsbi: GSBI port protocol: 6 crci: 0
[    0.681171] gsbi 1a200000.gsbi: GSBI port protocol: 3 crci: 0
[    0.682819] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.683555] msm_serial 16340000.serial: msm_serial: detected port #0
[    0.683609] msm_serial 16340000.serial: uartclk = 7372800
[    0.683674] 16340000.serial: ttyMSM0 at MMIO 0x16340000 (irq = 50, base_baud = 460800) is a MSM
[    0.683716] msm_serial: console setup on port #0
[    1.615303] printk: console [ttyMSM0] enabled
[    1.620418] msm_serial: driver initialized
[    1.629100] loop: module loaded
[    1.630480] nand: device found, Manufacturer ID: 0xc2, Chip ID: 0xaa
[    1.631383] nand: Macronix MX30UF2G18AC
[    1.638062] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    1.641549] Block protection check failed
[    1.649416] 21 fixed-partitions partitions found on MTD device qcom_nand.0
[    1.653304] OF: Bad cell count for /soc/nand-controller@1ac00000/nand@0/partitions
[    1.660161] OF: Bad cell count for /soc/nand-controller@1ac00000/nand@0/partitions
[    1.668314] Creating 21 MTD partitions on "qcom_nand.0":
[    1.675211] 0x000000000000-0x000000040000 : "0:SBL1"
[    1.681433] 0x000000040000-0x000000180000 : "0:MIBIB"
[    1.687831] 0x000000180000-0x0000002c0000 : "0:SBL2"
[    1.692717] 0x0000002c0000-0x000000540000 : "0:SBL3"
[    1.699532] 0x000000540000-0x000000660000 : "0:DDRCONFIG"
[    1.702489] 0x000000660000-0x000000780000 : "0:SSD"
[    1.707853] 0x000000780000-0x000000a00000 : "0:TZ"
[    1.714409] 0x000000a00000-0x000000c80000 : "0:RPM"
[    1.719377] 0x000000c80000-0x000001180000 : "0:APPSBL"
[    1.727598] 0x000001180000-0x000001200000 : "0:APPSBLENV"
[    1.728759] 0x000001200000-0x000001340000 : "0:ART"
[    1.734371] 0x000001340000-0x0000013a0000 : "0:BOOTCONFIG"
[    1.737624] 0x0000013a0000-0x0000014e0000 : "0:SBL2_1"
[    1.744524] 0x0000014e0000-0x000001760000 : "0:SBL3_1"
[    1.751268] 0x000001760000-0x000001880000 : "0:DDRCONFIG_1"
[    1.754539] 0x000001880000-0x0000019a0000 : "0:SSD_1"
[    1.759948] 0x0000019a0000-0x000001c20000 : "0:TZ_1"
[    1.767130] 0x000001c20000-0x000001ea0000 : "0:RPM_1"
[    1.772150] 0x000001ea0000-0x000001f00000 : "0:BOOTCONFIG1"
[    1.774214] 0x000001f00000-0x000002400000 : "0:APPSBL_1"
[    1.786300] 0x000002400000-0x00001c400000 : "ubi"
[    1.786332] mtd: partition "ubi" extends beyond the end of device "qcom_nand.0" -- size truncated to 0xdc00000
[    2.093864] random: crng init done
[    2.108916] spi_qup 1a280000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    2.109897] spi-nor spi0.0: mr25h256 (32 Kbytes)
[    2.133952] switch0: Atheros AR8337 rev. 2 switch registered on 37000000.mdio-mii
[    2.950179] ar8327: qca,phy-rgmii-en is not specified
[    2.951064] i2c_dev: i2c /dev entries driver
[    2.957900] sdhci: Secure Digital Host Controller Interface driver
[    2.958552] sdhci: Copyright(c) Pierre Ossman
[    2.964616] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.977409] NET: Registered PF_INET6 protocol family
[    2.979177] Segment Routing with IPv6
[    2.981487] In-situ OAM (IOAM) with IPv6
[    2.985237] NET: Registered PF_PACKET protocol family
[    2.989142] Bridge firewalling registered
[    2.994353] 8021q: 802.1Q VLAN Support v1.8
[    2.998032] Registering SWP/SWPB emulation handler
[    3.043863] thermal thermal_zone0: failed to read out thermal zone (-110)
[    ▒[    3.059604] /dev/root: Can't open blockdev
[    3.059630] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    3.062588] Please append a correct "root=" boot option; here are the available partitions:
[    3.070219] 1f00             256 mtdblock0
[    3.070227]  (driver?)
[    3.082464] 1f01            1280 mtdblock1
[    3.082473]  (driver?)
[    3.088974] 1f02            1280 mtdblock2
[    3.088982]  (driver?)
[    3.095533] 1f03            2560 mtdblock3
[    3.095541]  (driver?)
[    3.101995] 1f04            1152 mtdblock4
[    3.102002]  (driver?)
[    3.108504] 1f05            1152 mtdblock5
[    3.108512]  (driver?)
[    3.115089] 1f06            2560 mtdblock6
[    3.115096]  (driver?)
[    3.121527] 1f07            2560 mtdblock7
[    3.121534]  (driver?)
[    3.128038] 1f08            5120 mtdblock8
[    3.128047]  (driver?)
[    3.134615] 1f09             512 mtdblock9
[    3.134622]  (driver?)
[    3.141057] 1f0a            1280 mtdblock10
[    3.141064]  (driver?)
[    3.147984] 1f0b             384 mtdblock11
[    3.147993]  (driver?)
[    3.154576] 1f0c            1280 mtdblock12
[    3.154584]  (driver?)
[    3.161110] 1f0d            2560 mtdblock13
[    3.161117]  (driver?)
[    3.167760] 1f0e            1152 mtdblock14
[    3.167766]  (driver?)
[    3.174351] 1f0f            1152 mtdblock15
[    3.174358]  (driver?)
[    3.180901] 1f10            2560 mtdblock16
[    3.180908]  (driver?)
[    3.187570] 1f11            2560 mtdblock17
[    3.187579]  (driver?)
[    3.194157] 1f12             384 mtdblock18
[    3.194165]  (driver?)
[    3.200694] 1f13            5120 mtdblock19
[    3.200703]  (driver?)
[    3.207340] 1f14          225280 mtdblock20
[    3.207348]  (driver?)
[    3.213932] 1f15              32 mtdblock21
[    3.213940]  (driver?)
[    3.220485] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    3.222665] CPU0: stopping
[    3.230904] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.15.77 #0
[    3.233596] Hardware name: Generic DT based system
[    3.239767] [<c030e5b4>] (unwind_backtrace) from [<c030a130>] (show_stack+0x14/0x20)
[    3.244366] [<c030a130>] (show_stack) from [<c064abdc>] (dump_stack_lvl+0x40/0x4c)
[    3.252266] [<c064abdc>] (dump_stack_lvl) from [<c030cfdc>] (do_handle_IPI+0x144/0x184)
[    3.259643] [<c030cfdc>] (do_handle_IPI) from [<c030d038>] (ipi_handler+0x1c/0x2c)
[    3.267540] [<c030d038>] (ipi_handler) from [<c0379e9c>] (handle_percpu_devid_irq+0x84/0x16c)
[    3.275183] [<c0379e9c>] (handle_percpu_devid_irq) from [<c0373760>] (handle_domain_irq+0x68/0x94)
[    3.283776] [<c0373760>] (handle_domain_irq) from [<c0664ccc>] (gic_handle_irq+0x8c/0xb4)
[    3.292631] [<c0664ccc>] (gic_handle_irq) from [<c0300b7c>] (__irq_svc+0x5c/0x78)
[    3.300873] Exception stack(0xc0d01ed0 to 0xc0d01f18)
[    3.308340] 1ec0:                                     00000000 00000000 2eaca000 ef710480
[    3.313381] 1ee0: 00000000 bf8ff060 c1d00040 00000000 ef70f6f0 00000000 00000000 00000000
[    3.321538] 1f00: 0005fe60 c0d01f20 c07ea528 c07ea548 60000013 ffffffff
[    3.329693] [<c0300b7c>] (__irq_svc) from [<c07ea548>] (cpuidle_enter_state+0x180/0x37c)
[    3.336120] [<c07ea548>] (cpuidle_enter_state) from [<c07ea794>] (cpuidle_enter+0x3c/0x5c)
[    3.344452] [<c07ea794>] (cpuidle_enter) from [<c0351360>] (do_idle+0x204/0x2a4)
[    3.352524] [<c0351360>] (do_idle) from [<c0351724>] (cpu_startup_entry+0x1c/0x20)
[    3.360074] [<c0351724>] (cpu_startup_entry) from [<c0c0118c>] (start_kernel+0x6ac/0x6c0)
[    3.367455] [<c0c0118c>] (start_kernel) from [<00000000>] (0x0)
[    3.375704] Rebooting in 1 seconds..

By removing this line

qcom,boot-partitions = <0x0 0x1180000 0x1340000 0x2400000>;

from the 5.15 dts file (/openwrt/target/linux/ipq806x/files-5.15/arch/arm/boot/dts) I was able to compile a build that will now boot on the RT4230W.

&nand {
	status = "okay";

	nand@0 {
		reg = <0>;
		compatible = "qcom,nandcs";

		nand-ecc-strength = <4>;
		nand-bus-width = <8>;
		nand-ecc-step-size = <512>;

		qcom,boot-partitions = <0x0 0x1180000 0x1340000 0x2400000>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "0:SBL1";
				reg = <0x0000000 0x0040000>;
				read-only;
			};

Thanks to @Ansuel this issues has been addressed. The master snapshot 5.15 builds will now boot successfully on the RT4230W

1 Like

i've been using this device for 2 years now.in AP mode. the rados have been fast and strong.
my wan speed is symettric 300/300 up/down and I could consistently achieve or great (overprovisioning) that on a number of different test clients.
however, since upgrading to snapshots from 22.02, i've noticed consistent slowdown in wifi uploads, so now my best speeds are 300 donw/ 180 up. i've removed all add-ons, down a clean install/reset, and disabled all services.
is this a generic problem wiht linux 5.15 and ipq806x?
if this has already been addressed, or if another thread is better, i apologize and please re-direct.
thanks

1 Like

Hi there,
I attached 4Tb Toshiba Canvio Ready HDD to RAC2V1K USB 3 port.
After that I compare read disk speed copying large files from router samba share to Windows PC nul device. The PC (i5-12400 CPU) is a LAN device attached to router 1Gbps ethernet port, so network is definitely not a bottleneck.

Being attached directly to PC this disk performs at ~130Mb/sec, but performs at only 45Mb/sec on copying data from RAC2V1K/Samba share.

It there any way to speed it up? Or is it a kind of router hardware (SoC, periferals) or software limitation?

p.s.
Using this router as Samba/Transmission/Plex server (Plex is running on dockerd).

root@RAC2V1K:~# top
Mem: 713828K used, 281928K free, 4368K shrd, 64280K buff, 517388K cached
CPU:   1% usr   9% sys   0% nic  55% idle  30% io   0% irq   3% sirq
Load average: 1.30 1.16 1.06 2/110 10094
  PID  PPID USER     STAT   VSZ %VSZ %CPU COMMAND
11581  2487 sambause S    40468   4%   6% /usr/sbin/smbd -F
11583     2 root     DW       0   0%   5% [io_wqe_worker-0]
 6033     2 root     IW       0   0%   1% [kworker/u4:0-fl]

root@RAC2V1K:~# uname -a
Linux RAC2V1K 5.10.161 #0 SMP Tue Jan 3 00:24:21 2023 armv7l GNU/Linux

root@RAC2V1K:~# lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    |__ Port 1: Dev 2, If 0, Class=, Driver=usb-storage, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M

root@RAC2V1K:~# hdparm -Tt /dev/sda1

/dev/sda1:
 Timing cached reads:   1396 MB in  2.00 seconds = 698.31 MB/sec
 Timing buffered disk reads: 370 MB in  3.01 seconds = 123.03 MB/sec

Try these builds. They have the NSS cores active which speeds everything up. There is one based on the 22.03-snapshot (stable) and a master build as well. I have been using the 22.03 builds with the RT4230W as my main router and it works very well. I have 800/20 and get 600-700 down and easily 20 up on the wifi and all of it via ethernet.

1 Like

If the HDD is not already formatted as ext4, you could give that a try?

It's already ext4. I used WSL in Windows to access it.

I would guess that it is just a limitation of the router. I have a similar setup but using a USB 3.0 hub to attach a 5TB seagate drive divided into 3 partitions (sdb1-3) and a 64GB sdcard (sda1). The hub has a sd slot in it. My results are similar and seem to vary depending on what other activities the router is doing as well. The tests were done one right after another and degrade so I would guess there is a slight memory buffer issue possible too. I do notice that when I transfer a large file the router memory (RAM) fills up but will release after a bit.

root@Spectrum:~#hdparm -Tt /dev/sdb1

/dev/sdb1:
 Timing cached reads:   1340 MB in  2.00 seconds = 670.09 MB/sec
 Timing buffered disk reads: 402 MB in  3.01 seconds = 133.58 MB/sec
root@Spectrum:~#hdparm -Tt /dev/sdb2

/dev/sdb2:
 Timing cached reads:   1196 MB in  2.00 seconds = 598.44 MB/sec
 Timing buffered disk reads: 330 MB in  3.01 seconds = 109.53 MB/sec
root@Spectrum:~#hdparm -Tt /dev/sdb3

/dev/sdb3:
 Timing cached reads:   1188 MB in  2.00 seconds = 593.62 MB/sec
 Timing buffered disk reads: 220 MB in  3.01 seconds =  73.04 MB/sec
root@Spectrum:~#hdparm -Tt /dev/sda1

/dev/sda1:
 Timing cached reads:   1280 MB in  2.00 seconds = 640.74 MB/sec
 Timing buffered disk reads: 222 MB in  3.00 seconds =  73.97 MB/sec
root@Spectrum:~#uname -a
Linux Spectrum 5.10.161 #0 SMP Tue Jan 17 16:08:46 2023 armv7l GNU/Linux

I would think that a true NAS device would perform faster but it is not necessary for my needs. It just serves up media and acts as network backup storage for my desktop. The HDD is formatted ext4 and the sdcard is f2fs.

HdParm results are quite good (>120 MB/sec), so USB3.0 controller doesn't seems to be a bottleneck. It's strange that copying via samba slows it down 3 times.

root@RAC2V1K:/mnt/sda1/tmp# mknod /dev/null c 1 3
root@RAC2V1K:/mnt/sda1/tmp# chmod 666 /dev/null

root@RAC2V1K: echo -n 3 > /proc/sys/vm/drop_caches
root@RAC2V1K:/mnt/sda1/tmp# time dd if=/dev/sda of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
real    0m 7.81s
user    0m 0.02s
sys     0m 2.33s

1024/7.81 means ~140 Mb/sec when data is being read from USB disk internally.

so, logical conclusion - samba is a bottleneck.

Honestly, I haven't paid much attention to it. When I need to transfer large files it can take time but never seems too long. I did a test today watching the CPUs via htop while transferring and they stayed below 40% most of the time. Downloading via WiFi I got close to 60Mb/s and 45Mb/s up. I've never had issues streaming from the drive to a firestick or minidlna files to my stereo.

Looking for some help debugging why 2.4GHz 802.11bgn radio is missing in my RAC2V1K when running OpenWrt. I successfully flashed OpenWrt 22.03.03 on a few RAC2V1K machid=177d devices without issues, but for one of the devices, only the 5GHz 802.11nac radio0 is detected and the 2.4GHz 802.11bgn radio is missing. Is this a hardware issue or can this be fixed with firmware/software configuration? I tried power cycling and that didn't fix the issue. I tried removing and reseating the wireless card, but that didn't fix the issue. I tried setting the country, but wasn't able to as the 2.4GHz 802.11bgn radio was not detected.

boot logs collected from serial console

U-Boot 1.0.7 [spf6.0_csu1] (Oct 20 2020 - 03:37:17)

smem ram ptable found: ver: 0 len: 5
DRAM:  1003 MiB
setting 0x177d as machine type from smem
NAND:  SF: Unsupported manufacturer 00
ipq_spi: SPI Flash not found (bus/cs/speed/mode) = (0/0/48000000/0)
512 MiB
MMC:   
PCI0 Link Intialized
In:    serial
Out:   serial
Err:   serial
MMC Device 0 not found
cdp: get part failed for 0:HLOS
Net:   MAC0 addr:94:91:7f:79:60:7b
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17c init  done
MAC1 addr:94:91:7f:79:60:7c
eth0, eth1
Hit space key to stop autoboot:  0 
Creating 1 MTD partitions on "nand0":
0x000002400000-0x00001c400000 : "mtd=0"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    126976 bytes
UBI: smallest flash I/O unit:    2048
UBI: VID header offset:          2048 (aligned 2048)
UBI: data offset:                4096
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=0"
UBI: MTD device size:            416 MiB
UBI: number of good PEBs:        3328
UBI: number of bad PEBs:         0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     3
UBI: available PEBs:             47
UBI: total number of reserved PEBs: 3281
UBI: number of PEBs reserved for bad PEB handling: 33
UBI: max/mean erase counter: 100/13
Read 0 bytes from volume kernel to 44000000
No size specified -> Using max size (3047424)
   Loading Kernel Image ... OK
OK

device nand0 <nand0>, # parts = 1
 #: name		size		offset		mask_flags
 0: mtd_ubi             0x1a000000	0x02400000	0

active partition: nand0,0 - (mtd_ubi) 0x1a000000 @ 0x02400000

defaults:
mtdids  : none
mtdparts: none
Setting up atags for msm partition: mtd_ubi
Using machid 0x177d from environment

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.10.161 (builder@buildhost) (arm-openwrt-linux-muslgnueabi-gcc (OpenWrt GCC 11.2.0 r20028-43d71ad93e) 11.2.0, GNU ld (GNU Binutils) 2.37) #0 SMP Tue Jan 3 00:24:21 2023
[    0.000000] CPU: ARMv7 Processor [512f04d0] revision 0 (ARMv7), cr=10c5787d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: Askey RT4230W REV6
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000042000000-0x0000000071ffffff]
[    0.000000]   HighMem  [mem 0x0000000072000000-0x000000007fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000042000000-0x000000007fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000042000000-0x000000007fffffff]
[    0.000000] percpu: Embedded 15 pages/cpu s31180 r8192 d22068 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 252224
[    0.000000] Kernel command line: rootfstype=squashfs noinitrd
[    0.000000] Bootloader command line (ignored): 
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 994732K/1015808K available (6998K kernel code, 618K rwdata, 1024K rodata, 1024K init, 242K bss, 21076K reserved, 0K cma-reserved, 229376K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 305801671480 ns
[    0.000010] sched_clock: 32 bits at 6MHz, resolution 160ns, wraps every 343597383600ns
[    0.000029] Switching to timer-based delay loop, resolution 160ns
[    0.000350] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.50 BogoMIPS (lpj=62500)
[    0.000383] pid_max: default: 32768 minimum: 301
[    0.000563] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.000591] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.001688] CPU: Testing write buffer coherency: ok
[    0.002019] qcom_scm: convention: smc legacy
[    0.003097] Setting up static identity map for 0x42300000 - 0x42300060
[    0.003296] rcu: Hierarchical SRCU implementation.
[    0.003618] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[    0.003895] smp: Bringing up secondary CPUs ...
[    0.005972] smp: Brought up 1 node, 2 CPUs
[    0.005993] SMP: Total of 2 processors activated (25.00 BogoMIPS).
[    0.006010] CPU: All CPU(s) started in SVC mode.
[    0.016225] VFP support v0.3: implementor 51 architecture 64 part 4d variant 2 rev 0
[    0.016389] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.016423] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.016571] pinctrl core: initialized pinctrl subsystem
[    0.018347] NET: Registered protocol family 16
[    0.018712] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.020034] thermal_sys: Registered thermal governor 'step_wise'
[    0.022213] cpuidle: using governor ladder
[    0.022290] cpuidle: using governor menu
[    0.067838] usbcore: registered new interface driver usbfs
[    0.067930] usbcore: registered new interface driver hub
[    0.068004] usbcore: registered new device driver usb
[    0.068065] pps_core: LinuxPPS API ver. 1 registered
[    0.068082] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.068121] PTP clock support registered
[    0.070352] clocksource: Switched to clocksource dg_timer
[    0.071452] NET: Registered protocol family 2
[    0.071706] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.073295] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.073434] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    0.073500] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.073599] TCP: Hash tables configured (established 8192 bind 8192)
[    0.073722] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.073766] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.074056] NET: Registered protocol family 1
[    0.074119] PCI: CLS 0 bytes, default 64
[    0.075631] workingset: timestamp_bits=14 max_order=18 bucket_order=4
[    0.081424] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.081449] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.186718] bounce: pool size: 64 pages
[    0.186788] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[    0.188883] qcom-pcie 1b500000.pci: supply vdda not found, using dummy regulator
[    0.189133] qcom-pcie 1b500000.pci: supply vdda_phy not found, using dummy regulator
[    0.189248] qcom-pcie 1b500000.pci: supply vdda_refclk not found, using dummy regulator
[    0.189556] qcom-pcie 1b500000.pci: host bridge /soc/pci@1b500000 ranges:
[    0.189646] qcom-pcie 1b500000.pci:       IO 0x000fe00000..0x000fe0ffff -> 0x000fe00000
[    0.189693] qcom-pcie 1b500000.pci:      MEM 0x0008000000..0x000fdfffff -> 0x0008000000
[    0.416257] qcom-pcie 1b500000.pci: Link up
[    0.416447] qcom-pcie 1b500000.pci: PCI host bridge to bus 0000:00
[    0.416476] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.416504] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0xfe00000-0xfe0ffff])
[    0.416525] pci_bus 0000:00: root bus resource [mem 0x08000000-0x0fdfffff]
[    0.416615] pci 0000:00:00.0: [17cb:0101] type 01 class 0x060400
[    0.416771] pci 0000:00:00.0: supports D1
[    0.416791] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    0.420465] PCI: bus0: Fast back to back transfers disabled
[    0.421112] pci 0000:01:00.0: [168c:0046] type 00 class 0x028000
[    0.421409] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    0.422784] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    0.426851] PCI: bus1: Fast back to back transfers disabled
[    0.426951] pci 0000:00:00.0: BAR 8: assigned [mem 0x08000000-0x081fffff]
[    0.426980] pci 0000:01:00.0: BAR 0: assigned [mem 0x08000000-0x081fffff 64bit]
[    0.427135] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    0.427163] pci 0000:00:00.0:   bridge window [mem 0x08000000-0x081fffff]
[    0.428505] pcieport 0000:00:00.0: AER: enabled with IRQ 43
[    0.429577] qcom-pcie 1b700000.pci: supply vdda not found, using dummy regulator
[    0.429813] qcom-pcie 1b700000.pci: supply vdda_phy not found, using dummy regulator
[    0.429931] qcom-pcie 1b700000.pci: supply vdda_refclk not found, using dummy regulator
[    0.430203] qcom-pcie 1b700000.pci: host bridge /soc/pci@1b700000 ranges:
[    0.430291] qcom-pcie 1b700000.pci:       IO 0x0031e00000..0x0031e0ffff -> 0x0031e00000
[    0.430334] qcom-pcie 1b700000.pci:      MEM 0x002e000000..0x0031dfffff -> 0x002e000000
[    1.581909] qcom-pcie 1b700000.pci: Phy link never came up
[    1.583938] qcom-pcie 1b700000.pci: cannot initialize host
[    1.584577] qcom-pcie: probe of 1b700000.pci failed with error -110
[    1.587052] L2 @ QSB rate. Forcing new rate.
[    1.587283] L2 @ 384000 KHz
[    1.587484] CPU0 @ 800000 KHz
[    1.587501] CPU1 @ QSB rate. Forcing new rate.
[    1.587636] CPU1 @ 384000 KHz
[    1.592131] gsbi 16300000.gsbi: GSBI port protocol: 6 crci: 0
[    1.594629] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    1.597131] msm_serial 16340000.serial: msm_serial: detected port #0
[    1.597187] msm_serial 16340000.serial: uartclk = 7372800
[    1.597266] 16340000.serial: ttyMSM0 at MMIO 0x16340000 (irq = 44, base_baud = 460800) is a MSM
[    1.597310] msm_serial: console setup on port #0
[    2.331394] printk: console [ttyMSM0] enabled
[    2.336772] msm_serial: driver initialized
[    2.349239] loop: module loaded
[    2.351713] nand: device found, Manufacturer ID: 0xc2, Chip ID: 0xac
[    2.351766] nand: Macronix MX30UF4G18AB
[    2.357811] nand: 512 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    2.361488] Block protection check failed
[    2.369304] 21 fixed-partitions partitions found on MTD device qcom_nand.0
[    2.373315] OF: Bad cell count for /soc/nand-controller@1ac00000/nand@0/partitions
[    2.379939] OF: Bad cell count for /soc/nand-controller@1ac00000/nand@0/partitions
[    2.388920] Creating 21 MTD partitions on "qcom_nand.0":
[    2.395068] 0x000000000000-0x000000040000 : "0:SBL1"
[    2.402018] 0x000000040000-0x000000180000 : "0:MIBIB"
[    2.408646] 0x000000180000-0x0000002c0000 : "0:SBL2"
[    2.413655] 0x0000002c0000-0x000000540000 : "0:SBL3"
[    2.420996] 0x000000540000-0x000000660000 : "0:DDRCONFIG"
[    2.423993] 0x000000660000-0x000000780000 : "0:SSD"
[    2.428559] 0x000000780000-0x000000a00000 : "0:TZ"
[    2.435942] 0x000000a00000-0x000000c80000 : "0:RPM"
[    2.441545] 0x000000c80000-0x000001180000 : "0:APPSBL"
[    2.451837] 0x000001180000-0x000001200000 : "0:APPSBLENV"
[    2.453719] 0x000001200000-0x000001340000 : "0:ART"
[    2.459537] 0x000001340000-0x0000013a0000 : "0:BOOTCONFIG"
[    2.462599] 0x0000013a0000-0x0000014e0000 : "0:SBL2_1"
[    2.469675] 0x0000014e0000-0x000001760000 : "0:SBL3_1"
[    2.477221] 0x000001760000-0x000001880000 : "0:DDRCONFIG_1"
[    2.480216] 0x000001880000-0x0000019a0000 : "0:SSD_1"
[    2.485219] 0x0000019a0000-0x000001c20000 : "0:TZ_1"
[    2.492955] 0x000001c20000-0x000001ea0000 : "0:RPM_1"
[    2.498583] 0x000001ea0000-0x000001f00000 : "0:BOOTCONFIG1"
[    2.500310] 0x000001f00000-0x000002400000 : "0:APPSBL_1"
[    2.513383] 0x000002400000-0x00001c400000 : "ubi"
[    2.900637] random: crng init done
[    3.328380] switch0: Atheros AR8337 rev. 2 switch registered on 37000000.mdio-mii
[    4.143376] ipq806x-gmac-dwmac 37000000.ethernet: IRQ eth_wake_irq not found
[    4.143421] ipq806x-gmac-dwmac 37000000.ethernet: IRQ eth_lpi not found
[    4.150364] ipq806x-gmac-dwmac 37000000.ethernet: PTP uses main clock
[    4.156727] ipq806x-gmac-dwmac 37000000.ethernet: User ID: 0x10, Synopsys ID: 0x37
[    4.162551] ipq806x-gmac-dwmac 37000000.ethernet: 	DWMAC1000
[    4.169903] ipq806x-gmac-dwmac 37000000.ethernet: DMA HW capability register supported
[    4.175796] ipq806x-gmac-dwmac 37000000.ethernet: RX Checksum Offload Engine supported
[    4.183512] ipq806x-gmac-dwmac 37000000.ethernet: COE Type 2
[    4.191416] ipq806x-gmac-dwmac 37000000.ethernet: TX Checksum insertion supported
[    4.197158] ipq806x-gmac-dwmac 37000000.ethernet: Wake-Up On Lan supported
[    4.204601] ipq806x-gmac-dwmac 37000000.ethernet: Enhanced/Alternate descriptors
[    4.211388] ipq806x-gmac-dwmac 37000000.ethernet: Enabled extended descriptors
[    4.218859] ipq806x-gmac-dwmac 37000000.ethernet: Ring mode enabled
[    4.225968] ipq806x-gmac-dwmac 37000000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    4.234142] ipq806x-gmac-dwmac 37200000.ethernet: IRQ eth_wake_irq not found
[    4.240842] ipq806x-gmac-dwmac 37200000.ethernet: IRQ eth_lpi not found
[    4.248040] ipq806x-gmac-dwmac 37200000.ethernet: PTP uses main clock
[    4.254664] ipq806x-gmac-dwmac 37200000.ethernet: User ID: 0x10, Synopsys ID: 0x37
[    4.260803] ipq806x-gmac-dwmac 37200000.ethernet: 	DWMAC1000
[    4.268163] ipq806x-gmac-dwmac 37200000.ethernet: DMA HW capability register supported
[    4.274065] ipq806x-gmac-dwmac 37200000.ethernet: RX Checksum Offload Engine supported
[    4.281794] ipq806x-gmac-dwmac 37200000.ethernet: COE Type 2
[    4.289602] ipq806x-gmac-dwmac 37200000.ethernet: TX Checksum insertion supported
[    4.295506] ipq806x-gmac-dwmac 37200000.ethernet: Wake-Up On Lan supported
[    4.302879] ipq806x-gmac-dwmac 37200000.ethernet: Enhanced/Alternate descriptors
[    4.309571] ipq806x-gmac-dwmac 37200000.ethernet: Enabled extended descriptors
[    4.317187] ipq806x-gmac-dwmac 37200000.ethernet: Ring mode enabled
[    4.324247] ipq806x-gmac-dwmac 37200000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    4.332486] i2c /dev entries driver
[    4.343705] sdhci: Secure Digital Host Controller Interface driver
[    4.343746] sdhci: Copyright(c) Pierre Ossman
[    4.348785] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.356040] NET: Registered protocol family 10
[    4.360408] Segment Routing with IPv6
[    4.363417] NET: Registered protocol family 17
[    4.367016] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    4.371618] 8021q: 802.1Q VLAN Support v1.8
[    4.384558] Registering SWP/SWPB emulation handler
[    4.417892] qcom_rpm 108000.rpm: RPM firmware 3.0.16777375
[    4.432425] s1a: Bringing 0uV into 1050000-1050000uV
[    4.432720] s1a: supplied by regulator-dummy
[    4.436614] s1b: Bringing 0uV into 1050000-1050000uV
[    4.441047] s1b: supplied by regulator-dummy
[    4.445812] s2a: Bringing 0uV into 775000-775000uV
[    4.450129] s2a: supplied by regulator-dummy
[    4.454719] s2b: Bringing 0uV into 775000-775000uV
[    4.459180] s2b: supplied by regulator-dummy
[    4.470674] thermal thermal_zone0: failed to read out thermal zone (-110)
[    4.484895] UBI: auto-attach mtd20
[    4.484920] ubi0: attaching mtd20
[    7.519510] ubi0: scanning is finished
[    7.530647] ubi0: attached mtd20 (name "ubi", size 416 MiB)
[    7.530749] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    7.535095] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    7.542118] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    7.548896] ubi0: good PEBs: 3328, bad PEBs: 0, corrupted PEBs: 0
[    7.555737] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[    7.561989] ubi0: max/mean erase counter: 100/13, WL threshold: 4096, image sequence number: 1303712253
[    7.569040] ubi0: available PEBs: 0, total reserved PEBs: 3328, PEBs reserved for bad PEB handling: 80
[    7.578494] ubi0: background thread "ubi_bgt0d" started, PID 81
[    7.588645] block ubiblock0_1: created from ubi0:1(rootfs)
[ [    7.642577] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.
[    7.643470] Freeing unused kernel memory: 1024K
[    7.670980] Run /sbin/init as init process
[    8.280948] init: Console is alive
[    8.281122] init: - watchdog -
[    8.807324] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    8.861296] genirq: irq_chip msmgpio did not update eff. affinity mask of irq 45
[    8.862849] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    8.870363] SCSI subsystem initialized
[    8.880854] ehci-fsl: Freescale EHCI Host controller driver
[    8.881359] ehci-platform: EHCI generic platform driver
[    8.888719] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    8.890938] ohci-platform: OHCI generic platform driver
[    9.037857] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    9.037905] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    9.042469] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x0000000002010010
[    9.049839] xhci-hcd xhci-hcd.0.auto: irq 47, io mem 0x10000000
[    9.060117] hub 1-0:1.0: USB hub found
[    9.065238] hub 1-0:1.0: 1 port detected
[    9.069081] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    9.073047] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    9.078264] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
[    9.087057] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    9.092820] hub 2-0:1.0: USB hub found
[    9.100739] hub 2-0:1.0: 1 port detected
[    9.104500] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    9.108301] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[    9.113787] xhci-hcd xhci-hcd.1.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x0000000002010010
[    9.121235] xhci-hcd xhci-hcd.1.auto: irq 48, io mem 0x11000000
[    9.131180] hub 3-0:1.0: USB hub found
[    9.136437] hub 3-0:1.0: 1 port detected
[    9.140431] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    9.144391] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[    9.149617] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
[    9.157301] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[    9.164170] hub 4-0:1.0: USB hub found
[    9.172085] hub 4-0:1.0: 1 port detected
[    9.176991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    9.187060] init: - preinit -
[   10.966703] dwmac1000: Master AXI performs any burst length
[   10.966746] ipq806x-gmac-dwmac 37200000.ethernet eth1: No Safety Features support found
[   10.981208] ipq806x-gmac-dwmac 37200000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[   10.981354] ipq806x-gmac-dwmac 37200000.ethernet eth1: registered PTP clock
[   11.011133] ipq806x-gmac-dwmac 37200000.ethernet eth1: configuring for fixed/sgmii link mode
[   11.012363] ipq806x-gmac-dwmac 37200000.ethernet eth1: Link is Up - 1Gbps/Full - flow control off
[   11.019688] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
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
1
[   13.098237] UBIFS (ubi0:2): Mounting in unauthenticated mode
[   13.102475] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 169
[   13.186321] UBIFS (ubi0:2): recovery needed
[   13.360881] UBIFS (ubi0:2): recovery completed
[   13.360988] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[   13.364263] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   13.372198] UBIFS (ubi0:2): FS size: 402640896 bytes (383 MiB, 3171 LEBs), journal size 20189184 bytes (19 MiB, 159 LEBs)
[   13.382116] UBIFS (ubi0:2): reserved for root: 4952683 bytes (4836 KiB)
[   13.393012] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID 60677BA5-7D7F-4B1E-9767-685F8EC7C1F3, small LPT model
[   13.404982] mount_root: switching to ubifs overlay
[   13.421048] urandom-seed: Seeding with /etc/urandom.seed
[   13.510463] ipq806x-gmac-dwmac 37200000.ethernet eth1: Link is Down
[   13.573443] procd: - early -
[   13.573743] procd: - watchdog -
[   14.132103] procd: - watchdog -
[   14.291695] procd: - ubus -
[   14.356152] procd: - init -
Please press Enter to activate this console.
[   14.844206] urngd: v1.0.2 started.
[   14.860113] kmodloader: loading kernel modules from /etc/modules.d/*
[   14.925621] Loading modules backported from Linux version v5.15.81-0-ge4a7232c917c
[   14.925658] Backport generated by backports.git v5.15.81-1-0-ge1867d55
[   15.008352] PPP generic driver version 2.4.2
[   15.009883] NET: Registered protocol family 24
[   15.030592] ath10k 5.15 driver, optimized for CT firmware, probing pci device: 0x46.
[   15.035406] ath10k_pci 0000:01:00.0: enabling device (0140 -> 0142)
[   15.038182] ath10k_pci 0000:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[   16.208025] ath10k_pci 0000:01:00.0: qca9984/qca9994 hw1.0 target 0x01000000 chip_id 0x00000000 sub 168c:cafe
[   16.208101] ath10k_pci 0000:01:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   16.223518] ath10k_pci 0000:01:00.0: firmware ver 10.4b-ct-9984-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 7ea63dc5
[   18.536246] ath10k_pci 0000:01:00.0: Loading BDF type 0
[   18.537938] ath10k_pci 0000:01:00.0: board_file api 2 bmi_id 0:1 crc32 85498734
[   22.082378] ath10k_pci 0000:01:00.0: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   22.082407] ath10k_pci 0000:01:00.0: msdu-desc: 2500  skid: 32
[   22.164685] ath10k_pci 0000:01:00.0: wmi print 'P 48/48 V 16 K 144 PH 176 T 186  msdu-desc: 2500  sw-crypt: 0 ct-sta: 0'
[   22.165535] ath10k_pci 0000:01:00.0: wmi print 'free: 84920 iram: 13156 sram: 11224'
[   22.455779] ath10k_pci 0000:01:00.0: htt-ver 2.2 wmi-op 6 htt-op 4 cal pre-cal-file max-sta 32 raw 0 hwcrypto 1
[   22.569432] kmodloader: done loading kernel modules from /etc/modules.d/*
[   26.793449] dwmac1000: Master AXI performs any burst length
[   26.793482] ipq806x-gmac-dwmac 37200000.ethernet eth1: No Safety Features support found
[   26.807844] ipq806x-gmac-dwmac 37200000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[   26.807971] ipq806x-gmac-dwmac 37200000.ethernet eth1: registered PTP clock
[   26.815857] ipq806x-gmac-dwmac 37200000.ethernet eth1: configuring for fixed/sgmii link mode
[   26.822784] ipq806x-gmac-dwmac 37200000.ethernet eth1: Link is Up - 1Gbps/Full - flow control off
[   26.831716] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[   26.844956] br-lan: port 1(eth1.1) entered blocking state
[   26.846086] br-lan: port 1(eth1.1) entered disabled state
[   26.851945] device eth1.1 entered promiscuous mode
[   26.857018] device eth1 entered promiscuous mode
[   26.865222] br-lan: port 1(eth1.1) entered blocking state
[   26.866507] br-lan: port 1(eth1.1) entered forwarding state
[   26.887969] dwmac1000: Master AXI performs any burst length
[   26.888003] ipq806x-gmac-dwmac 37000000.ethernet eth0: No Safety Features support found
[   26.902447] ipq806x-gmac-dwmac 37000000.ethernet eth0: IEEE 1588-2008 Advanced Timestamp supported
[   26.902581] ipq806x-gmac-dwmac 37000000.ethernet eth0: registered PTP clock
[   26.917824] ipq806x-gmac-dwmac 37000000.ethernet eth0: configuring for fixed/rgmii link mode
[   26.918126] ipq806x-gmac-dwmac 37000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[   26.931271] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   27.850609] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready

fw_printenv, uci show wireless

BusyBox v1.35.0 (2023-01-03 00:24:21 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 22.03.3, r20028-43d71ad93e
 -----------------------------------------------------
=== 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:/# fw_printenv
baudrate=115200
bootargs=console=ttyMSM0,115200n8
bootcmd=set mtdids nand0=nand0; set mtdparts mtdparts=nand0:416M@0x2400000(mtd_ubi); ubi part mtd_ubi && ubi read 0x44000000 kernel && bootm; set mtdparts mtdparts=nand0:220M@0x2400000(mtd_ubi); ubi part mtd_ubi && ubi read 0x44000000 kernel && bootm
bootdelay=2
eth1addr=94:91:7f:79:60:7c
ethact=eth0
ethaddr=94:91:7f:79:60:7b
fdt_high=48000000
fdtaddr=0
machid=177d
mtddevname=mtd_ubi
mtddevnum=0
mtdids=nand0=nand0
mtdparts=mtdparts=nand0:220M@0x2400000(mtd_ubi)
partition=nand0,0
reboot-reason=rea=ffffffff
reboot-time=time=ffffffff
stderr=serial
stdin=serial
stdout=serial
root@OpenWrt:/# uci show wireless
wireless.radio0=wifi-device
wireless.radio0.type='mac80211'
wireless.radio0.path='soc/1b500000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
wireless.radio0.channel='36'
wireless.radio0.band='5g'
wireless.radio0.htmode='VHT80'
wireless.radio0.disabled='1'
wireless.default_radio0=wifi-iface
wireless.default_radio0.device='radio0'
wireless.default_radio0.network='lan'
wireless.default_radio0.mode='ap'
wireless.default_radio0.ssid='OpenWrt'
wireless.default_radio0.encryption='none'
root@OpenWrt:/# uci set wireless.radio0.country='us'
root@OpenWrt:/# uci set wireless.radio0.disabled=0
root@OpenWrt:/# uci set wireless.radio1.country='us'
uci: Invalid argument

I've not run into this issue on the two I have. It certainly sounds like a hardware issue to me. You can probably find it with search - I do recall another user relating that they discovered a chip had come loose on the board of their RAC2V1K and they were able to re-solder it, so you could open up the case and see what you can see?

Considering most of these units have had prior lives as cable company rentals, I can imagine they have not had easy lives. Falling off shelves, bangs, knocks, etc. Comes with the territory when a unit is rented and the renter knows it will be immediately replaced at no charge if it "breaks."

1 Like

Try interrupting uboot and run wifi_detect (if it can't find the command just do help and run the one with a similar name). If it fails and the light on the router turns red it means the 2.4ghz portion of the wifi card has a hardware problem. Since the card is made specifically for the router and replacements aren't available you'll just need to replace the entire router pretty much.

1 Like

Tried interrupting uboot and running wifi_detect, got WiFi detect OK message which was misleading because 802.11bgn radio is still missing in my RAC2V1K when running OpenWrt :frowning_face:

Next, I will try removing the heatsink from the radio circuit board next and see if I find any loose chips.

U-Boot 1.0.7 [spf6.0_csu1] (Oct 20 2020 - 03:37:17)

smem ram ptable found: ver: 0 len: 5
DRAM:  1003 MiB
setting 0x177d as machine type from smem
NAND:  SF: Unsupported manufacturer 00
ipq_spi: SPI Flash not found (bus/cs/speed/mode) = (0/0/48000000/0)
512 MiB
MMC:   
PCI0 Link Intialized
PCI1 Link Intialized
In:    serial
Out:   serial
Err:   serial
MMC Device 0 not found
cdp: get part failed for 0:HLOS
Net:   MAC0 addr:94:91:7f:79:60:7b
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17c init  done
MAC1 addr:94:91:7f:79:60:7c
eth0, eth1
Hit space key to stop autoboot:  0 
(IPQ) # wifi_detect
WiFi detect OK

I'm trying to understand where to replace this "0x1A000000 " with this" 0xDC00000"in the command quoted below from the wiki page.

set bootcmd 'set mtdids nand0=nand0; set mtdparts mtdparts=nand0:416M@0x2400000(mtd_ubi); ubi part mtd_ubi && ubi read 0x44000000 kernel && bootm; set mtdparts mtdparts=nand0:220M@0x2400000(mtd_ubi); ubi part mtd_ubi && ubi read 0x44000000 kernel && bootm'
set bootdelay 2
saveenv

I have read the entire form posts and will do what it takes for success.
I have device 177e the Rev 9.3 After the initial intramfs flash I logged into luci and flashed the upgrade. Rebooted into current prompt below with errors.

It looks like there is now a new "Method 2" here since I flashed my RAC2V1K's and that the new method does not require different commands for hardware versions with different flash sizes any longer. I do recall reading some discussion on this.

The original commit instructions show where "0x1A000000" was used and there is probably more than one post in this thread using the old method describing the switch.

As to which method to follow? You may want to wait and see if a more knowledgeable member than me can add to this.

I have only a 66% success rate (2 out of 3) flashing these myself. A really bad pin soldering job caused more problems than I wanted to try to fix on the unsuccessful attempt, so technically not a flashing problem. Still, as you know, these have great hardware and are available used cheap, but they are not the most flash friendly choice.

I tried again and got the intramfs to flash. repeated the sysupgrade through luci. Success! Thanks so much and all who contributed to give such a gem! :slight_smile:

I'm having trouble booting back into my router. I had flashed OpenWRT and went to do an upgrade the other day and seem to have broke something. I'm able to see the router booting through serial, but I cannot interrupt with the keyboard. Output of serial console. I'm hoping I just have a wrong setting and its not something worse.

Any clues to what I might be missing?

image



U-Boot 1.0.6 [spf.5.0.2_csu1.1] (Jan 15 2020 - 03:36:44)

smem ram ptable found: ver: 0 len: 5
DRAM:  1003 MiB
setting 0x177d as machine type from smem
NAND:  SF: Unsupported manufacturer 00
ipq_spi: SPI Flash not found (bus/cs/speed/mode) = (0/0/48000000/0)
512 MiB
MMC:
PCI0 Link Intialized
PCI1 Link Intialized
In:    serial
Out:   serial
Err:   serial
MMC Device 0 not found
cdp: get part failed for 0:HLOS
Net:   MAC0 addr:78:29:ed:33:xx:xx
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17c init  done
MAC1 addr:78:29:ed:33:xx:xx
eth0, eth1
Hit space key to stop autoboot:  0
Creating 1 MTD partitions on "nand0":
0x000002400000-0x00001c400000 : "mtd=0"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    126976 bytes
UBI: smallest flash I/O unit:    2048
UBI: VID header offset:          2048 (aligned 2048)
UBI: data offset:                4096
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=0"
UBI: MTD device size:            416 MiB
UBI: number of good PEBs:        3328
UBI: number of bad PEBs:         0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             3291
UBI: total number of reserved PEBs: 37
UBI: number of PEBs reserved for bad PEB handling: 33
UBI: max/mean erase counter: 12/9
Volume kernel not found!
UBI: mtd1 is detached from ubi0
(IPQ) #

your serial settings are correct.
you are at the uboot prompt with #
it looks like your last update borked the boot image (kernel not found)
you might be sending but not receving bytes at this point?
i suggest resetting your uboot environment with 'env reset -a'