Adding OpenWrt support for TP-Link RE700X, IPQ5018

Hey everyone, any pointers on how to port openwrt to this device?

I got the firmware extracted, it's already a fork of OpenWRT 15.05, running on IPQ5018 it seems.

OpenWRT Data:

DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='Chaos Calmer'
DISTRIB_REVISION='b5a0bd4+r49254'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ipq/ipq50xx'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05.1'
DISTRIB_TAINTS='no-all busybox override'
15.05.1

Partition data:

cat partition-table 
total=29,flash=128M
0=                SBL1,0x00000000,0x00080000, 0, 0, 0, 1, bin/sbl1_nand.mbn
1=               MIBIB,0x00080000,0x00080000, 0, 0, 0, 1, bin/nand-system-partition-ipq5018.bin
2=       boot-config_0,0x00100000,0x00040000, 0, 0, 0, 1, bin/bootconfig.bin
3=       boot-config_1,0x00140000,0x00040000, 0, 0, 0, 1, bin/bootconfig.bin
4=                QSEE,0x00180000,0x00100000, 0, 0, 0, 1, bin/tz.mbn
5=              DEVCFG,0x00280000,0x00040000, 0, 0, 0, 1, bin/devcfg.mbn
6=                 CDT,0x002c0000,0x00040000, 0, 0, 0, 1, bin/cdt.bin
7=           uboot-env,0x00300000,0x00080000, 0, 0, 0, 0, #
8=               uboot,0x00380000,0x00140000, 0, 0, 0, 1, bin/openwrt-ipq5018-u-boot.mbn
9=               radio,0x004c0000,0x00100000, 0, 1, 0, 0, #
10=           TRAINING,0x005c0000,0x00080000, 0, 0, 0, 0, #
11=      file-system@0,0x00640000,0x02a00000, 0, 0, 2, 1, bin/root.ubi
12=      file-system@1,0x03040000,0x02a00000, 0, 0, 1, 1, bin/root.ubi
13=           ETHPHYFW,0x05a40000,0x00080000, 0, 0, 0, 0, #
14=       factory_data,0x05ac0000,0x00900000, 0, 0, 0, 1, bin/factory_data.ubi
15=       runtime_data,0x063c0000,0x01100000, 0, 0, 0, 1, bin/runtime_data.ubi
16=    partition-table,0x00000000,0x00000000, 1, 0, 0, 0, #
17=     default-config,0x00000000,0x00000000, 1, 0, 0, 0, bin/default-config.bin
18=       support-list,0x00000000,0x00000000, 1, 0, 0, 6, bin/supportlist.bin
19=       soft-version,0x00000000,0x00000000, 1, 0, 0, 6, bin/soft-version.bin
20=            profile,0x00000000,0x00000000, 1, 0, 0, 0, bin/profile.bin
21=        default-mac,0x00000000,0x00000000, 2, 2, 0, 0, #
22=          device-id,0x00000000,0x00000000, 2, 2, 0, 0, #
23=       product-info,0x00000000,0x00000000, 2, 2, 0, 0, bin/product-info.bin
24=        user-config,0x00000000,0x00000000, 3, 2, 0, 4, bin/user-config.bin
25=      device-config,0x00000000,0x00000000, 3, 2, 0, 4, bin/default-config.bin
26=             tm-sig,0x00000000,0x00000000, 3, 2, 0, 0, #
27=                pin,0x00000000,0x00000000, 2, 2, 0, 0, #
28=      backup-config,0x00000000,0x00000000, 3, 2, 0, 0, #

I can upload the fully decompressed rootfs somewhere if needed

Unfortunately, there is currently no support in the kernel for IPQ5018, not even to boot to UART

3 Likes

Damn... and now I'm sad!

https://patchwork.kernel.org/project/linux-arm-msm/patch/1601270140-4306-7-git-send-email-varada@codeaurora.org/

It is getting ready. IPQ5018 is also in the tp-link archer ax72, together with a QCN6024.
https://fccid.io/2AXJ4AX72/Internal-Photos/2012TW0008-Internal-Photo-5566364

1 Like

I'm currently hacking the firmware to see if I get some extra functionality, already decrypted config file, editing uci configs, data mining, can already upload manual configs, feeling tempted to open one.

Bootlog

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.4.60 (jenkins@sohoicilinux5) (gcc version 5.2.0 (OpenWrt GCC 5.2.0 b5a0bd4+r49254) ) #1 SMP PREEMPT Fri Apr 29 00:04:06 CST 2022
[    0.000000] CPU: ARMv7 Processor [51af8014] revision 4 (ARMv7), cr=10c0383d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Qualcomm Technologies, Inc. IPQ5018/AP-MP02.1
[    0.000000] Reserved memory: OVERLAP DETECTED!
[    0.000000] q6_mem_regions@4B000000 (0x4b000000--0x4e900000) overlaps with q6_code_data@4B000000 (0x4b000000--0x4b040000)
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] On node 0 totalpages: 46848
[    0.000000] free_area_init_node: node 0, pgdat 81a05800, node_mem_map 8fdb9000
[    0.000000]   Normal zone: 576 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 46848 pages, LIFO batch:15
[    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] PERCPU: Embedded 11 pages/cpu @8fd7c000 s14592 r8192 d22272 u45056
[    0.000000] pcpu-alloc: s14592 r8192 d22272 u45056 alloc=11*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 46272
[    0.000000] Kernel command line: ubi.mtd=rootfs_1 root=mtd:ubi_rootfs rootfstype=squashfs rootwait swiotlb=1
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Memory: 177340K/187392K available (4915K kernel code, 280K rwdata, 1032K rodata, 1024K init, 323K bss, 10052K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0x90800000 - 0xff800000   (1776 MB)
[    0.000000]     lowmem  : 0x80000000 - 0x90000000   ( 256 MB)
[    0.000000]     pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
[    0.000000]     modules : 0x7f000000 - 0x7fe00000   (  14 MB)
[    0.000000]       .text : 0x81208000 - 0x818cef28   (6940 kB)
[    0.000000]       .init : 0x81900000 - 0x81a00000   (1024 kB)
[    0.000000]       .data : 0x81a00000 - 0x81a46398   ( 281 kB)
[    0.000000]        .bss : 0x81a49000 - 0x81a99e30   ( 324 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 32.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=2
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] GICv2m: Node v2m: range[0xb00a000:0xb00affc], SPI[448:480]
[    0.000000] GICv2m: Node v2m: range[0xb00b000:0xb00bffc], SPI[480:512]
[    0.000000] Architected cp15 timer(s) running at 24.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000006] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000018] Switching to timer-based delay loop, resolution 41ns
[    0.000507] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000524] pid_max: default: 32768 minimum: 301
[    0.000631] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000645] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001304] Initializing cgroup subsys io
[    0.001329] Initializing cgroup subsys memory
[    0.001364] Initializing cgroup subsys devices
[    0.001376] Initializing cgroup subsys freezer
[    0.001396] Initializing cgroup subsys net_cls
[    0.001407] Initializing cgroup subsys pids
[    0.001442] CPU: Testing write buffer coherency: ok
[    0.001889] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.001931] Setting up static identity map for 0x41300000 - 0x41300058
[    0.050058] MSM Memory Dump base table set up
[    0.050090] MSM Memory Dump apps data table set up
[    0.090434] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.090565] Brought up 2 CPUs
[    0.090583] SMP: Total of 2 processors activated (96.00 BogoMIPS).
[    0.090590] CPU: All CPU(s) started in SVC mode.
[    0.104858] VFP support v0.3: implementor 51 architecture 3 part 40 variant 3 rev 4
[    0.105197] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.105226] futex hash table entries: 512 (order: 3, 32768 bytes)
[    0.105432] pinctrl core: initialized pinctrl subsystem
[    0.106587] NET: Registered protocol family 16
[    0.108025] DMA: preallocated 2048 KiB pool for atomic coherent allocations
[    0.130224] cpuidle: using governor ladder
[    0.160243] cpuidle: using governor menu
[    0.160519] NET: Registered protocol family 42
[    0.165295] qcom,gcc-ipq5018 1800000.gcc: Registered ipq5018 GCC clocks provider
[    0.170032] irq: no irq domain found for /soc/smp2p-wcss/slave-kernel !
[    0.171487] irq: no irq domain found for /soc/smp2p-wcss/slave-kernel !
[    0.183950] ipq5018-pinctrl 1000000.pinctrl: invalid group "gpio12" for function "led0"
[    0.185038] CPU: IPQ0509, SoC Version: 1.1
[    0.186818] IPC logging disabled
[    0.186830] IPC logging disabled
[    0.186835] IPC logging disabled
[    0.186839] IPC logging disabled
[    0.186844] IPC logging disabled
[    0.187093] sps:sps is ready.
[    0.222284] pps_core: LinuxPPS API ver. 1 registered
[    0.222297] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.222320] PTP clock support registered
[    0.224253] Advanced Linux Sound Architecture Driver Initialized.
[    0.225071] clocksource: Switched to clocksource arch_sys_counter
[    0.227359] NET: Registered protocol family 2
[    0.228172] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.228209] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    0.228252] TCP: Hash tables configured (established 2048 bind 2048)
[    0.228315] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.228339] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.228539] NET: Registered protocol family 1
[    0.228582] PCI: CLS 0 bytes, default 64
[    0.237181] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.237195] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.241754] Key type asymmetric registered
[    0.241771] Asymmetric key parser 'x509' registered
[    0.241802] io scheduler noop registered
[    0.241810] io scheduler deadline registered (default)
[    0.250552] TZ Log : Will warn on Access Violation, as paniconaccessviolation is not set
[    0.251045] bt_driver 1943008.bt: bt_parse_ipc
[    0.251100] bt_driver 1943008.bt: bt_parse_mem
[    0.251146] bt_driver 1943008.bt: bt_parse_dt operating in secure mode
[    0.252331] 58000.qcom,msm-eud: ttyEUD0 at MMIO 0x0 (irq = 154, base_baud = 0) is a EUD UART
[    0.253823] Registered Sucessfully 
[    0.254407] msm_serial 78af000.serial: msm_serial: detected port #0
[    0.254465] msm_serial 78af000.serial: uartclk = 1843199
[    0.254521] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 20, base_baud = 115199) is a MSM
[    0.254551] msm_serial: console setup on port #0
[    0.906585] console [ttyMSM0] enabled
[    0.911773] msm_serial: driver initialized
[    0.915243] msm_serial_hsl_init: driver initialized
[    0.926412] loop: module loaded
[    0.926822] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    0.930335] m25p80 spi32766.0: unrecognized JEDEC id bytes: 00,  0,  0
[    0.936674] phase not found in dts, falling to 50MHz
[    0.941978] QPIC platform data not populated
[    0.947204] QPIC controller hw version Major:2, Minor:1
[    0.951351] QPIC controller support serial nand.
[    0.956680] nand: device found, Manufacturer ID: 0xc8, Chip ID: 0x11
[    0.961165] nand: GigaDevice F50D1G41LB(2M) SPI NAND 1G 1.8V
[    0.967533] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    0.973493] 16 ofpart partitions found on MTD device qcom_nand.0
[    0.980554] Creating 16 MTD partitions on "qcom_nand.0":
[    0.986705] 0x000000000000-0x000000080000 : "0:SBL1"
[    0.993594] 0x000000080000-0x000000100000 : "0:MIBIB"
[    0.998582] 0x000000100000-0x000000140000 : "0:BOOTCONFIG"
[    1.003313] 0x000000140000-0x000000180000 : "0:BOOTCONFIG1"
[    1.008699] 0x000000180000-0x000000280000 : "0:QSEE"
[    1.014644] 0x000000280000-0x0000002c0000 : "0:DEVCFG"
[    1.019277] 0x0000002c0000-0x000000300000 : "0:CDT"
[    1.024217] 0x000000300000-0x000000380000 : "0:APPSBLENV"
[    1.029241] 0x000000380000-0x0000004c0000 : "0:APPSBL"
[    1.035499] 0x0000004c0000-0x0000005c0000 : "0:ART"
[    1.040264] 0x0000005c0000-0x000000640000 : "0:TRAINING"
[    1.044616] 0x000000640000-0x000003040000 : "rootfs"
[    1.095713] mtd: device 11 (rootfs) set to be root filesystem
[    1.095981] mtdsplit: no squashfs found in "rootfs"
[    1.100452] 0x000003040000-0x000005a40000 : "rootfs_1"
[    1.155687] 0x000005a40000-0x000005ac0000 : "0:ETHPHYFW"
[    1.175639] 0x000005ac0000-0x0000063c0000 : "factory_data"
[    1.195669] 0x0000063c0000-0x0000074c0000 : "runtime_data"
[    1.226307] libphy: Fixed MDIO Bus: probed
[    1.445081] qca-mdio 88000.mdio: Could not find phy-reset-gpio
[    1.445276] libphy: qca_mdio: probed
[    1.465523] qca-mdio 88000.mdio: qca-mdio driver was registered
[    1.905094] qca-mdio 90000.mdio: Could not find phy-reset-gpio
[    1.905274] libphy: qca_mdio: probed
[    1.910264] qca-mdio 90000.mdio: qca-mdio driver was registered
[    2.015374] cnss: INFO: IPC Logging is disabled!
[    2.016064] cnss[2]: INFO: Platform driver probed successfully. plat 8f270010 tgt 0xfffc
[    2.019448] cnss[41]: INFO: Platform driver probed successfully. plat 8f278010 tgt 0xfffb
[    2.027537] i2c /dev entries driver
[    2.036463] qcom-tsens 4a8000.thermal-sensor: tsens calibration failed
[    2.040293] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 799999 KHz
[    2.045304] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 800000 KHz
[    2.052479] sdhci: Secure Digital Host Controller Interface driver
[    2.061054] sdhci: Copyright(c) Pierre Ossman
[    2.067030] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.072526] 
[    2.072526] Version Rollback Feature Disabled
[    2.079653] qcom-q6v5-wcss-pil cd00000.qcom_q6v5_wcss: ssr registeration success qcom_q6v5_wcss
[    2.082873] remoteproc remoteproc0: cd00000.qcom_q6v5_wcss is available
[    2.091464] q6v5_wcss_userpd1(8fda29e0) node found
[    2.099019] platform q6v5_wcss_userpd1: ssr registeration success q6v5_wcss_userpd1
[    2.102922] remoteproc remoteproc1: q6v5_wcss_userpd1 is available
[    2.110459] q6v5_wcss_userpd2(8fda2c84) node found
[    2.117643] platform q6v5_wcss_userpd2: ssr registeration success q6v5_wcss_userpd2
[    2.121497] remoteproc remoteproc2: q6v5_wcss_userpd2 is available
[    2.129529] of_graph_get_next_endpoint(): no port node found in /soc/csr@6001000
[    2.135373] coresight-csr 6001000.csr: CSR initialized
[    2.142986] of_graph_get_next_endpoint(): no port node found in /soc/cti@6010000
[    2.147963] of_graph_get_next_endpoint(): no port node found in /soc/cti@6011000
[    2.155519] of_graph_get_next_endpoint(): no port node found in /soc/cti@6012000
[    2.162820] of_graph_get_next_endpoint(): no port node found in /soc/cti@6013000
[    2.170261] of_graph_get_next_endpoint(): no port node found in /soc/cti@6014000
[    2.177616] of_graph_get_next_endpoint(): no port node found in /soc/cti@6015000
[    2.184946] of_graph_get_next_endpoint(): no port node found in /soc/cti@6016000
[    2.192382] of_graph_get_next_endpoint(): no port node found in /soc/cti@6017000
[    2.199732] of_graph_get_next_endpoint(): no port node found in /soc/cti@6018000
[    2.207124] of_graph_get_next_endpoint(): no port node found in /soc/cti@6019000
[    2.214445] of_graph_get_next_endpoint(): no port node found in /soc/cti@601a000
[    2.221893] of_graph_get_next_endpoint(): no port node found in /soc/cti@601b000
[    2.229248] of_graph_get_next_endpoint(): no port node found in /soc/cti@601c000
[    2.236637] of_graph_get_next_endpoint(): no port node found in /soc/cti@601d000
[    2.243975] of_graph_get_next_endpoint(): no port node found in /soc/cti@601e000
[    2.251400] of_graph_get_next_endpoint(): no port node found in /soc/cti@601f000
[    2.258780] of_graph_get_next_endpoint(): no port node found in /soc/cti@6198000
[    2.266334] of_graph_get_next_endpoint(): no port node found in /soc/cti@6199000
[    2.273625] of_graph_get_next_endpoint(): no port node found in /soc/cti@610c000
[    2.281142] sps_register_bam_device : unable to create IPC Logging 0 for bam 0x06064000
[    2.288100] sps_register_bam_device : unable to create IPC Logging 1 for bam 0x06064000sps_register_bam_device : unable to create IPC Logging 2 for bam 0x06064000
[    2.303773] sps_register_bam_device : unable to create IPC Logging 3 for bam 0x06064000sps_register_bam_device : unable to create IPC Logging 4 for bam 0x06064000
[    2.318280] sps:BAM 0x06064000 is registered.<6>[    2.325455] coresight-tmc 6048000.tmc: TMC initialized
[    2.329550] coresight-tmc 6047000.tmc: TMC initialized
[    2.334685] coresight-funnel 6041000.funnel: FUNNEL initialized
[    2.339756] coresight-funnel 6100000.funnel: FUNNEL initialized
[    2.345543] coresight-funnel 6120000.funnel: FUNNEL initialized
[    2.351380] coresight-funnel 6130000.funnel: FUNNEL initialized
[    2.357369] coresight-funnel 61a1000.funnel: FUNNEL initialized
[    2.363984] coresight-etm4x 619c000.etm: ETM 4.0 initialized
[    2.369608] coresight-etm4x 619d000.etm: ETM 4.0 initialized
[    2.375107] coresight-replicator-qcom 6046000.replicator: REPLICATOR 1.0 initialized
[    2.380878] coresight-stm 6002000.stm: STM initialized
[    2.389739] of_graph_get_next_endpoint(): no port node found in /soc/hwevent@6101000
[    2.393089] coresight-hwevent 6101000.hwevent: Hardware Event driver initialized
[    2.405100] NET: Registered protocol family 10
[    2.409121] NET: Registered protocol family 17
[    2.412507] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    2.416964] Bridge firewalling registered
[    2.429661] 8021q: 802.1Q VLAN Support v1.8
[    2.433756] Registering SWP/SWPB emulation handler
[    2.456612] ubi0: attaching mtd12
[    2.618145] ubi0: scanning is finished
[    2.622693] ubi0: attached mtd12 (name "rootfs_1", size 42 MiB)
[    2.622718] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    2.627448] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    2.634354] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    2.641228] ubi0: good PEBs: 336, bad PEBs: 0, corrupted PEBs: 0
[    2.648001] ubi0: user volume: 2, internal volumes: 1, max. volumes count: 128
[    2.654236] ubi0: max/mean erase counter: 0/0, WL threshold: 4096, image sequence number: 1095293815
[    2.661278] ubi0: available PEBs: 131, total reserved PEBs: 205, PEBs reserved for bad PEB handling: 20
[    2.670595] ubi0: background thread "ubi_bgt0d" started, PID 86
[    2.715649] hctosys: unable to open rtc device (rtc0)
[    2.722391] ALSA device list:
[    2.722410]   No soundcards found.
[    2.725145] random: nonblocking pool is initialized
[    2.729554] VFS: Mounted root (squashfs filesystem) readonly on device 31:17.
[    2.734062] Freeing unused kernel memory: 1024K (81900000 - 81a00000)
[    3.080314] init: Console is alive
[    3.080529] init: - watchdog -
[    3.864688] usbcore: registered new interface driver usbfs
[    3.864782] usbcore: registered new interface driver hub
[    3.869241] usbcore: registered new device driver usb
[    3.876558] Button Hotplug driver version 0.4.1
[    3.883635] remoteproc remoteproc3: bt_rproc_driver is available
[    3.883927] bt_rproc_driver bt_rproc_driver: Updated XO/TCXO config
[    3.890124] bt_rproc_driver bt_rproc_driver: Probed
[    4.085266] init: - preinit -
[    6.731651] mount_root: mounting /dev/root
[    7.934841] procd: - early -
[    7.934948] procd: - watchdog -
[    8.625332] procd: - ubus -
[    9.636323] procd: - init -
[    9.746728] ubi1: attaching mtd14
[    9.781016] ubi1: scanning is finished
[    9.786149] ubi1: attached mtd14 (name "factory_data", size 9 MiB)
[    9.786176] ubi1: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    9.791215] ubi1: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    9.798104] ubi1: VID header offset: 2048 (aligned 2048), data offset: 4096
[    9.804930] ubi1: good PEBs: 72, bad PEBs: 0, corrupted PEBs: 0
[    9.811724] ubi1: user volume: 1, internal volumes: 1, max. volumes count: 128
[    9.817626] ubi1: max/mean erase counter: 3/1, WL threshold: 4096, image sequence number: 1861854305
[    9.824898] ubi1: available PEBs: 0, total reserved PEBs: 72, PEBs reserved for bad PEB handling: 20
[    9.834226] ubi1: background thread "ubi_bgt1d" started, PID 178
[    9.903885] UBIFS (ubi1:0): background thread "ubifs_bgt1_0" started, PID 185
[    9.947125] UBIFS (ubi1:0): UBIFS: mounted UBI device 1, volume 0, name "ubi_factory_data"
[    9.947155] UBIFS (ubi1:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[    9.954279] UBIFS (ubi1:0): FS size: 4825088 bytes (4 MiB, 38 LEBs), journal size 1142785 bytes (1 MiB, 9 LEBs)
[    9.964298] UBIFS (ubi1:0): reserved for root: 0 bytes (0 KiB)
[    9.974180] UBIFS (ubi1:0): media format: w4/r0 (latest is w4/r0), UUID 323080B4-0FBF-46F1-9F9E-B1D71B3916A4, small LPT model
[    9.994045] ubi2: attaching mtd15
[   10.060658] ubi2: scanning is finished
[   10.065768] ubi2: attached mtd15 (name "runtime_data", size 17 MiB)
[   10.065795] ubi2: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[   10.070834] ubi2: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[   10.077813] ubi2: VID header offset: 2048 (aligned 2048), data offset: 4096
[   10.084636] ubi2: good PEBs: 136, bad PEBs: 0, corrupted PEBs: 0
[   10.091422] ubi2: user volume: 1, internal volumes: 1, max. volumes count: 128
[   10.097675] ubi2: max/mean erase counter: 4/1, WL threshold: 4096, image sequence number: 850805095
[   10.104691] ubi2: available PEBs: 0, total reserved PEBs: 136, PEBs reserved for bad PEB handling: 20
[   10.113667] ubi2: background thread "ubi_bgt2d" started, PID 191
[   10.147371] UBIFS (ubi2:0): background thread "ubifs_bgt2_0" started, PID 198
[   10.193874] UBIFS (ubi2:0): UBIFS: mounted UBI device 2, volume 0, name "ubi_runtime_data"
[   10.193904] UBIFS (ubi2:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   10.201112] UBIFS (ubi2:0): FS size: 9904128 bytes (9 MiB, 78 LEBs), journal size 1777664 bytes (1 MiB, 14 LEBs)
[   10.211030] UBIFS (ubi2:0): reserved for root: 0 bytes (0 KiB)
[   10.221265] UBIFS (ubi2:0): media format: w4/r0 (latest is w4/r0), UUID EC17AF22-A4F3-4C50-84A6-24E341AB95C2, small LPT model
[   12.183658] ubi: mtd12 is already attached to ubi0
[   13.670987] liblog: module license 'unspecified' taints kernel.
[   13.671016] Disabling lock debugging due to kernel taint
[   13.810765] ssdk_switch_device_num_init[1159]:INFO:ess-switch dts node number: 1
[   13.810807] ssdk_dt_get_switch_node[970]:INFO:ess-switch DT exist!
[   13.817266] ssdk_dt_parse_access_mode[856]:INFO:switch_access_mode: local bus
[   13.823211] ssdk_dt_parse_access_mode[869]:INFO:switchreg_base_addr: 0x39c00000
[   13.830432] ssdk_dt_parse_access_mode[870]:INFO:switchreg_size: 0x200000
[   13.837556] ssdk_dt_parse_mac_mode[295]:INFO:mac mode = 0xf
[   13.844475] ssdk_dt_parse_mac_mode[301]:INFO:mac mode1 doesn't exit!
[   13.849787] ssdk_dt_parse_mac_mode[310]:INFO:mac mode2 doesn't exit!
[   13.856415] ssdk_dt_parse_phy_info[659]:INFO:[PORT 2] port_mac_sel = QGMAC_PORT
[   13.862729] ssdk_dt_parse_phy_info[678]:INFO:port2's phy-reset-gpio is GPIO26
[   13.869757] ssdk_dt_parse_port_bmp[757]:INFO:port_bmp doesn't exist!
[   13.877057] ssdk_dt_parse_uniphy[332]:INFO:ess-uniphy DT exist!
[   13.883459] ssdk_dt_parse_led[943]:INFO:current dts led_source_num is 1
[   13.889122] ssdk_plat_init start
[   16.305086] ssdk_mp_reset_init[739]:INFO:MP reset successfully!
[   16.305147] ssdk_gcc_clock_init[1033]:INFO:SSDK gcc clock init successfully!
[   16.310993] mpge_phy_api_ops_init[1089]:INFO:qca probe mpge phy driver succeeded!
[   16.317515] rtl8211_phy_init[536]:ERROR:Init RTL8211, dev_id: 0, port_bmp: 4
[   16.324474] rtl8211_phy_api_ops_init[516]:INFO:qca probe rtl8211 phy driver succeeded!
[   16.331636] regi_init[3600]:INFO:Initializing SCOMPHY!
[   17.469123] _adpt_mp_uniphy_clk_output_ctrl_set[236]:INFO:uniphy will output clock as 25000000Hz
[   17.675065] hsl_port_phy_gpio_reset[698]:INFO:GPIO26 reset PHY done
[   17.785061] rtl8211_phy_init[536]:ERROR:Init RTL8211, dev_id: 0, port_bmp: 4
[   17.785119] ssdk_led_init[152]:INFO:ssdk_led_mode:3, ssdk_led_map:ffc, ssdk_led_src_id:0
[   17.791262] ssdk_switch_register[1710]:INFO:Chip version 0xee
[   17.799275] qca_link_polling_select[1315]:INFO:link-polling-required node does not exist
[   17.804879] ssdk_switch_register[1744]:INFO:polling is selected
[   17.813050] regi_init[3610]:INFO:Initializing SCOMPHY Done!!
[   17.818797] regi_init[3633]:INFO:qca-ssdk module init succeeded!
[   17.826775] GMAC1(8a718500) Invalid MAC@ - using 1e:f5:f7:63:03:68
[   17.833545] GMAC2(8a71a500) Invalid MAC@ - using 4a:52:cd:a6:f0:50
[   17.838947] **********************************************************
[   17.842736] * NSS Data Plane driver
[   17.849403] **********************************************************
[   18.064560] nss_driver - fw of size 762996  bytes copied to load addr: 40000000, nss_id : 0
[   18.066584] Supported Frequencies - 
[   18.071716] 850 MHz 1 GHz 
[   18.077349] 
[   18.078285] 7f112d80: set sdma 8a716200
[   18.080047] node size 2 # items 4
[   18.083258] memory: 40000000 268435456 (avl 198053888) items 4 active_cores 1
[   18.086827] addr/size storage words 2 2 # words 4 in DTS, ddr size 800000
[   18.093853] 7f112d80: NSS core 0 DDR from 40000000 to 40800000
[   18.100792] 7f112d80: meminfo init succeed
[   18.111396] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   18.122866] nf_conntrack version 0.5.0 (2786 buckets, 11144 max)
[   18.135498] init tp_hyfi_nss_acc_timer
[   18.135700] mc_netlink_init NETLINK_QCA_MC:26QCA Hy-Fi multicast installation successfully
[   18.142334] node size 2 # items 4
[   18.142341] memory: 40000000 268435456 (avl 198053888) items 4 active_cores 1
[   18.142352] addr/size storage words 2 2 # words 4 in DTS, ddr size 800000
[   18.142361] 7f112d80: nss core 0 booted successfully
[   18.165308] QCA Hy-Fi netfilter installation: OK
[   18.168732] DEBUG_LEVEL:1
[   18.176255] PPP generic driver version 2.4.2
[   18.177236] NET: Registered protocol family 24
[   18.184371] QCA multicast snooping installed successfully
[   18.196455] cannot find nss-macsec0 node
[   18.196576] cannot find nss-macsec1 node
[   18.199550] cannot find nss-macsec2 node
[   18.203351] nss_macsec init success
[   18.213471] arp_tables: (C) 2002 David S. Miller
[   18.216808] ip_tables: (C) 2000-2006 Netfilter Core Team
[   18.290106] nf_conntrack_rtsp v0.6.21 loading
[   18.418345] nf_nat_rtsp v0.6.21 loading
[   18.446302] xt_time: kernel timezone is -0000
[   24.911097] configuring additional NSS pbufs
[   24.915108] additional pbufs of size 802816 got added to NSS
[   24.990638] qdf: unknown parameter 'mem_debug_disabled' ignored
[   29.366644] wlan: [1012:I:RPTR] qca_multi_link_init_module: 

Continues , but the rest is pretty much repeater init. Still don't have root... working on it

Well, they bothered to send a v2 since 2020

That patch is 2 years old, has there been any further progress?

I misread 2020 as 2022. Sorry. Anyway, it is better to have something to begin with. It might even be easier to test in OpenWrt as it was targeting something as old as 5.10. However, it would be too much burden to maintain that kind of patch downstream.

Mildly put, that patchset will just get you booting to a working UART and thats it, there is so much more missing

1 Like

Any progress on IPQ5018? No new threads and I'm not seeing new information.

I'm looking at the wis networks WIS-S4500AX units and they run IPQ5018 and they appear to be running openwrt under the hood. I've asked for details etc on this.

Still looking for any outdoor 4x4 'ax radio so if you have any other better-supported options, I'd love to hear it.

Don't, in the best case it will take a long time before ipq50xx might get supported.

They aren't, they are using a heavily butchered up vendor SDK (QSDK).

Have a look at ipq807x (e.g. Dynalink DL-WRX36, I know, neither outdoor, nor PoE) instead, which are fully supported, everything would be a gamble with an unclear outcome (ipq601x would have a better chance (but still months+) than ipq50xx) or something Mediatek based.

1 Like

I'm just kinda holding out hope of finding something already outdoor ready vs banana-pi r3 units that are supported but I need to assemble my own everything :confused:

https://lore.kernel.org/lkml/20230221233808.1565509-1-kuba@kernel.org/

Ipq5018 support was added to mainline. Go nuts

Only ath11k support was added, everything else including most basic stuff like pinctrl and clocks are missing

1 Like

the v3 patch was submitted incl pinctrl. Do you know how long it typically takes for it to then appear in mainline once accepted?

https://lore.kernel.org/linux-arm-kernel/01b21803-9367-f253-3b66-b0a6c1d93cf2@linaro.org/T/

Well, considering how long it takes them between each revision and that they constantly keep ignoring the things to improve it's gonna be a while.

And, then we can actually give it a go and see what did they upstream that is completely broken or just how many clocks they managed to not send upstream at all.

Clear, wanted to work on support for Linksys MX5500 (Atlas 6 Pro), but better let it pass for now, I understand

With QCA I got used to having to fixup everything they upstream cause while working on IPQ8074 I found so much stuff that was broken during upstreaming and probably not even tested on a device.

2 Likes

IPQ5018 development lists are getting progress to bring a working ATH11k driver:
[PATCH 2/6] dt-bindings: PCI: qcom: Add IPQ5108 SoC
In the meantime the binary blobs in this rootfs will be useful to alternative firmwares including Snapshots and Dd-wrt builds.
I did a research on this chipset, and found a very considerable portion of users that chose Qualcomm instead of Broadcom, but didn't expect the lack of qualcomm support to their public.