IPQ4019: Adding support for TP-Link Deco M5

Hello! Yeah, I actually had a PR approved for tplink-safeloader, building the structure for the partitioning scheme needed for the M5 :slight_smile: -So it should be there now, but I haven't had time to follow up afterwards, to add the actual partition table for the M5.

I realize this is old but any chance you could share the binary with me as well? I have tried both https://github.com/TomerCo/openwrt.git and https://github.com/oklona/openwrt.git but have not had success.

I am unable to compile TomerCo code but was able to generate a binary on oklona and use tftp to load it to my Deco M4 v3. It boots but when I try to access luci, I am met with a "Bad Gateway" error. I have ssh'd into the deco and tried to do some troubleshooting to no avail.

If you have a binary or any ideas why I am met with that error, would be very much appreciative!

Thanks

Hi. I've flashed @parker-stephens 's build (22.03) and most of the things work smooth (thank you Devs! :slight_smile: Even though it has DSA showing up fine, including setting up VLAN's - enabling tagging on a given device doesn't seem to take real effect (it doesn't want to communicate with the tagged VLAN and tcpdump doesn't even show the packets going out on the NIC).

Is this expected to not work or had anyone made VLANs work and can share the how-to?

Hi, exactly the same situation here! The Deco boots successfully and most of the things work smooth, even the wifi radios. But when I start to configure VLANs the device becomes unavailable.

I've been following this thread for a while now. I have flashed my Deco M5 (v3.0) successfully with the build @parker-stephens made.
I also found the following interesting pull request, which I believe is in the master branch now: https://github.com/openwrt/openwrt/pull/4721
I'm not sure if the DSA support for the IPQ4019 SoC is already in parker-stephens build. Or if the master build will work on the Deco M5.

When I take a closer look at the branch and pull requests in parker-stephens build I can see the "remotes/TomerCo/openwrt-22.03" is merged and than some small changes are made by parker-stephens.

Following all the threads and pull requests make it a little bit difficult for me to create a complete picture of the current status and possibilities. As @pawlik13 says; Does anyone have more information?

Thanks in advance!

1 Like

I built my own firmware base on 21.02 about 18 months ago. I wasn't able to issue any pull requests at the time, as repositories were migrating, and the general state of OpwnWRT was quite fluid.
However - after a LOT of trial and error I managed to get everything I needed working reliably and it has done so for months.
This includes the usual lan/wifi config, plus multiple 802.11q VLANs, Mesh etc. Probably a lot I've forgotten about.

Haven't kept up to date with what people are doing - but would my config be useful to anyone?

2 Likes

Definitely - please share your config. Preferably with the firmware binary you're using.

Hello all,

Continuing on my journey to get openwrt installed into my Deco M5 (EU v3.2 ). I managed find time to the project and opened it up and did the serial console thing. In addition, I compiled and installed @parker-stephens version of openwrt 22.03 to it and below is the boot log:

Format: Log Type - Time(microsec) - Message - Optional Info
Log Type: B - Since Boot(Power On Reset),  D - Delta,  S - Statistic
S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.1.1-00103
S - IMAGE_VARIANT_STRING=DAABANAZA
S - OEM_IMAGE_VERSION_STRING=CRM
S - Boot Config, 0x00000021
S - Core 0 Frequency, 0 MHz
B -       262 - PBL, Start
B -      1343 - bootable_media_detect_entry, Start
B -      1687 - bootable_media_detect_success, Start
B -      1701 - elf_loader_entry, Start
B -      5142 - auth_hash_seg_entry, Start
B -      7324 - auth_hash_seg_exit, Start
B -    590224 - elf_segs_hash_verify_entry, Start
B -    707709 - PBL, End
B -    707733 - SBL1, Start
B -    795071 - pm_device_init, Start
D -         6 - pm_device_init, Delta
B -    796618 - boot_flash_init, Start
D -     57945 - boot_flash_init, Delta
B -    858602 - boot_config_data_table_init, Start
D -      3831 - boot_config_data_table_init, Delta - (419 Bytes)
B -    865818 - clock_init, Start
D -      7561 - clock_init, Delta
B -    877777 - CDT version:2,Platform ID:8,Major ID:1,Minor ID:0,Subtype:1
B -    881264 - sbl1_ddr_set_params, Start
B -    886252 - cpr_init, Start
D -         2 - cpr_init, Delta
B -    890742 - Pre_DDR_clock_init, Start
D -         5 - Pre_DDR_clock_init, Delta
D -     13148 - sbl1_ddr_set_params, Delta
B -    904024 - pm_driver_init, Start
D -         2 - pm_driver_init, Delta
B -    974155 - sbl1_wait_for_ddr_training, Start
D -        29 - sbl1_wait_for_ddr_training, Delta
B -    989664 - Image Load, Start
D -    138260 - QSEE Image Loaded, Delta - (269176 Bytes)
B -   1128423 - Image Load, Start
D -      1435 - SEC Image Loaded, Delta - (2048 Bytes)
B -   1138674 - Image Load, Start
D -    220666 - APPSBL Image Loaded, Delta - (451967 Bytes)
B -   1359762 - QSEE Execution, Start
D -        60 - QSEE Execution, Delta
B -   1366009 - SBL1, End
D -    660356 - SBL1, Delta
S - Flash Throughput, 2001 KB/s  (723962 Bytes,  361690 us)
S - DDR Frequency, 672 MHz


U-Boot 2012.07 [Chaos Calmer 15.05.1,unknown] (Oct 09 2022 - 16:30:16)

smem ram ptable found: ver: 1 len: 3
DRAM:  256 MiB
machid : 0x8010001
NAND:  SF: Detected ST micro with page size 64 KiB, total 32 MiB
ipq_spi: page_size: 0x100, sector_size: 0x10000, size: 0x2000000
32 MiB
SF: Detected ST micro with page size 64 KiB, total 32 MiB
MAC is 00 00
MMC:   
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
machid: 8010001
flash_type: 0
Net:   MAC0 addr:0:3:7f:ba:db:ad
PHY ID1: 0x4d
PHY ID2: 0xd0b2
ipq40xx_ess_sw_init done
eth0
disable phy 3 val is 0x1840
disable phy 4 val is 0x1840
Enter magic string to stop autoboot in 1 seconds
SF: Detected ST micro with page size 64 KiB, total 32 MiB
## Booting kernel from FIT Image at 84000000 ...
   Using 'config@1' configuration
   Trying 'kernel-1' kernel subimage
     Description:  ARM OpenWrt Linux-5.10.161
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x840000e4
     Data Size:    4081374 Bytes = 3.9 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x80208000
     Entry Point:  0x80208000
     Hash algo:    crc32
     Hash value:   188a7c73
     Hash algo:    sha1
     Hash value:   59ff1fc1b7e6cb73ba5364eae788237a49043fc9
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Flattened Device Tree from FIT Image at 84000000
   Using 'config@1' configuration
   Trying 'fdt-1' FDT blob subimage
     Description:  ARM OpenWrt tp-link_deco-m5-eu-v3.0 device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x843e4908
     Data Size:    17815 Bytes = 17.4 KiB
     Architecture: ARM
     Hash algo:    crc32
     Hash value:   0ad78054
     Hash algo:    sha1
     Hash value:   769c32df7ac274655df483982393372619257fb5
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Booting using the fdt blob at 0x843e4908
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 862a8000, end 862af596 ... OK
ipq: fdt fixup unable to find compatible node
Device nand0 not found!
eth0 MAC Address from ART is not valid
eth1 MAC Address from ART is not valid
Using machid 0x8010001 from environment

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.10.161 (veehoo@yoga) (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 [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: TP-Link Deco M5 EU v3.0
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000]   HighMem  empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x0000000087dfffff]
[    0.000000]   node   0: [mem 0x0000000087e00000-0x0000000087ffffff]
[    0.000000]   node   0: [mem 0x0000000088000000-0x000000008fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000] percpu: Embedded 15 pages/cpu s30860 r8192 d22388 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64960
[    0.000000] Kernel command line: root=mtd:1:rootfs rootfstype=squashfs rootwait root=/dev/mtdblock16
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 247180K/262144K available (6186K kernel code, 604K rwdata, 1552K rodata, 1024K init, 237K bss, 14964K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, 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] arch_timer: cp15 timer(s) running at 48.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xb11fd3bfb, max_idle_ns: 440795203732 ns
[    0.000008] sched_clock: 56 bits at 48MHz, resolution 20ns, wraps every 4398046511096ns
[    0.000024] Switching to timer-based delay loop, resolution 20ns
[    0.000324] Calibrating delay loop (skipped), value calculated using timer frequency.. 96.00 BogoMIPS (lpj=480000)
[    0.000349] pid_max: default: 32768 minimum: 301
[    0.000529] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.000549] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.001527] CPU: Testing write buffer coherency: ok
[    0.001878] qcom_scm: convention: smc legacy
[    0.002818] Setting up static identity map for 0x80300000 - 0x8030003c
[    0.002979] rcu: Hierarchical SRCU implementation.
[    0.003247] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[    0.003598] smp: Bringing up secondary CPUs ...
[    0.007049] smp: Brought up 1 node, 4 CPUs
[    0.007072] SMP: Total of 4 processors activated (384.00 BogoMIPS).
[    0.007082] CPU: All CPU(s) started in SVC mode.
[    0.012156] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.012323] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.012350] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.012581] pinctrl core: initialized pinctrl subsystem
[    0.014378] NET: Registered protocol family 16
[    0.014745] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.015849] thermal_sys: Registered thermal governor 'step_wise'
[    0.016273] cpuidle: using governor ladder
[    0.016327] cpuidle: using governor menu
[    0.043243] cryptd: max_cpu_qlen set to 1000
[    0.047495] usbcore: registered new interface driver usbfs
[    0.047567] usbcore: registered new interface driver hub
[    0.047626] usbcore: registered new device driver usb
[    0.047678] pps_core: LinuxPPS API ver. 1 registered
[    0.047690] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.047716] PTP clock support registered
[    0.049424] clocksource: Switched to clocksource arch_sys_counter
[    0.050388] NET: Registered protocol family 2
[    0.050642] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.051339] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.051402] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.051444] TCP bind hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.051494] TCP: Hash tables configured (established 2048 bind 2048)
[    0.051623] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.051664] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.051936] NET: Registered protocol family 1
[    0.051984] PCI: CLS 0 bytes, default 64
[    0.054248] workingset: timestamp_bits=14 max_order=16 bucket_order=2
[    0.058680] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.058704] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.191132] bam-dma-engine 8e04000.dma: num-channels unspecified in dt
[    0.191157] bam-dma-engine 8e04000.dma: num-ees unspecified in dt
[    0.191851] tcsr 194b000.tcsr: setting usb hs phy mode select = e700e7
[    0.191955] tcsr 1953000.ess_tcsr: setting ess interface select = 0
[    0.192047] tcsr 1949000.tcsr: setting wifi_glb_cfg = 41000000
[    0.192146] tcsr 1957000.tcsr: setting wifi_noc_memtype_m0_m2 = 2222222
[    0.192472] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.193055] msm_serial 78af000.serial: msm_serial: detected port #0
[    0.193100] msm_serial 78af000.serial: uartclk = 1843200
[    0.193152] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 34, base_baud = 115200) is a MSM
[    0.193182] msm_serial: console setup on port #0
[    0.732445] printk: console [ttyMSM0] enabled
[    0.737652] msm_serial 78b0000.serial: msm_serial: detected port #1
[    0.741429] msm_serial 78b0000.serial: uartclk = 1843200
[    0.747483] 78b0000.serial: ttyMSM1 at MMIO 0x78b0000 (irq = 35, base_baud = 115200) is a MSM
[    0.753497] msm_serial: driver initialized
[    0.766550] loop: module loaded
[    0.767571] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    0.769689] spi-nor spi0.0: unrecognized JEDEC id bytes: 20 40 19 20 40 19
[    0.775827] spi-nor: probe of spi0.0 failed with error -2
[    0.816353] ESS reset ok!
[    0.890629] ESS reset ok!
[    1.567330] EDMA using MAC@ - using
[    1.567346] ce:ba:8d:c2:da:3e
[    1.570557] EDMA using MAC@ - using
[    1.570571] 02:34:34:ea:f0:ad
[    1.703126] i2c /dev entries driver
[    1.703389] i2c_qup 78b7000.i2c: using default clock-frequency 100000
[    1.707970] sdhci: Secure Digital Host Controller Interface driver
[    1.712125] sdhci: Copyright(c) Pierre Ossman
[    1.718100] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.725997] NET: Registered protocol family 10
[    1.729925] Segment Routing with IPv6
[    1.732601] NET: Registered protocol family 17
[    1.736301] 8021q: 802.1Q VLAN Support v1.8
[    1.740728] Registering SWP/SWPB emulation handler
[    1.756728] Waiting for root device /dev/mtdblock16...

It seems that it can't find the root device. Has anybody seen something like this before and have a suggestion how to go forward?

Thanks in advance,

wilho

and here's the boot log with the original firmware:

Format: Log Type - Time(microsec) - Message - Optional Info
Log Type: B - Since Boot(Power On Reset),  D - Delta,  S - Statistic
S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.1.1-00103
S - IMAGE_VARIANT_STRING=DAABANAZA
S - OEM_IMAGE_VERSION_STRING=CRM
S - Boot Config, 0x00000021
S - Core 0 Frequency, 0 MHz
B -       262 - PBL, Start
B -      1343 - bootable_media_detect_entry, Start
B -      1687 - bootable_media_detect_success, Start
B -      1701 - elf_loader_entry, Start
B -      5142 - auth_hash_seg_entry, Start
B -      7324 - auth_hash_seg_exit, Start
B -    590188 - elf_segs_hash_verify_entry, Start
B -    707673 - PBL, End
B -    707697 - SBL1, Start
B -    795042 - pm_device_init, Start
D -         6 - pm_device_init, Delta
B -    796589 - boot_flash_init, Start
D -     57952 - boot_flash_init, Delta
B -    858579 - boot_config_data_table_init, Start
D -      3833 - boot_config_data_table_init, Delta - (419 Bytes)
B -    865800 - clock_init, Start
D -      7544 - clock_init, Delta
B -    877744 - CDT version:2,Platform ID:8,Major ID:1,Minor ID:0,Subtype:1
B -    881232 - sbl1_ddr_set_params, Start
B -    886220 - cpr_init, Start
D -         2 - cpr_init, Delta
B -    890710 - Pre_DDR_clock_init, Start
D -         5 - Pre_DDR_clock_init, Delta
D -     13147 - sbl1_ddr_set_params, Delta
B -    903992 - pm_driver_init, Start
D -         2 - pm_driver_init, Delta
B -    974198 - sbl1_wait_for_ddr_training, Start
D -        28 - sbl1_wait_for_ddr_training, Delta
B -    989927 - Image Load, Start
D -    138389 - QSEE Image Loaded, Delta - (269176 Bytes)
B -   1128815 - Image Load, Start
D -      1436 - SEC Image Loaded, Delta - (2048 Bytes)
B -   1139095 - Image Load, Start
D -    220853 - APPSBL Image Loaded, Delta - (451967 Bytes)
B -   1360371 - QSEE Execution, Start
D -        60 - QSEE Execution, Delta
B -   1366619 - SBL1, End
D -    661001 - SBL1, Delta
S - Flash Throughput, 1999 KB/s  (723962 Bytes,  362017 us)
S - DDR Frequency, 672 MHz


U-Boot 2012.07 [Chaos Calmer 15.05.1,unknown] (Oct 09 2022 - 16:30:16)

smem ram ptable found: ver: 1 len: 3
DRAM:  256 MiB
machid : 0x8010001
NAND:  SF: Detected ST micro with page size 64 KiB, total 32 MiB
ipq_spi: page_size: 0x100, sector_size: 0x10000, size: 0x2000000
32 MiB
SF: Detected ST micro with page size 64 KiB, total 32 MiB
MAC is 00 00
MMC:   
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
machid: 8010001
flash_type: 0
Net:   MAC0 addr:0:3:7f:ba:db:ad
PHY ID1: 0x4d
PHY ID2: 0xd0b2
ipq40xx_ess_sw_init done
eth0
disable phy 3 val is 0x1840
disable phy 4 val is 0x1840
Enter magic string to stop autoboot in 1 seconds
SF: Detected ST micro with page size 64 KiB, total 32 MiB
## Booting kernel from FIT Image at 84000000 ...
   Using 'config@ap.dk04.1-c1' configuration
   Trying 'kernel@1' kernel subimage
     Description:  ARM OpenWrt Linux-3.14.43
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x840000e4
     Data Size:    2608770 Bytes = 2.5 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x80208000
     Entry Point:  0x80208000
     Hash algo:    crc32
     Hash value:   2a06a287
     Hash algo:    sha1
     Hash value:   acd29e792469fcda166dca91706931c85b0c4f54
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Flattened Device Tree from FIT Image at 84000000
   Using 'config@ap.dk04.1-c1' configuration
   Trying 'fdt@ap.dk04.1-c1' FDT blob subimage
     Description:  ARM OpenWrt qcom-ipq40xx-ap.dkxx device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x8428577c
     Data Size:    37503 Bytes = 36.6 KiB
     Architecture: ARM
     Hash algo:    crc32
     Hash value:   e29abb58
     Hash algo:    sha1
     Hash value:   8c60177f580346697789237f6f21a29b22a6b737
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Booting using the fdt blob at 0x8428577c
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 862a3000, end 862af27e ... OK
Device nand0 not found!
eth0 MAC Address from ART is not valid
eth1 MAC Address from ART is not valid
Using machid 0x8010001 from environment

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.14.43 (user@ce01a0cee886) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 unknown) ) #30 SMP PREEMPT Tue Jan 10 11:31:38 CST 2023
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Qualcomm Technologies, Inc. IPQ40xx/AP-DK04.1-C1
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] PERCPU: Embedded 7 pages/cpu @cfdc8000 s7744 r8192 d12736 u32768
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 64512
[    0.000000] Kernel command line: root=mtd:1:rootfs rootfstype=squashfs rootwait clk_ignore_unused
[    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: 251720K/260096K available (3560K kernel code, 346K rwdata, 1248K rodata, 159K init, 536K bss, 8376K reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0208000 - 0xc06ba2b8   (4809 kB)
[    0.000000]       .init : 0xc06bb000 - 0xc06e2e40   ( 160 kB)
[    0.000000]       .data : 0xc06e4000 - 0xc073aabc   ( 347 kB)
[    0.000000]        .bss : 0xc073aabc - 0xc07c0d14   ( 537 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] Architected cp15 timer(s) running at 48.00MHz (virt).
[    0.000008] sched_clock: 56 bits at 48MHz, resolution 20ns, wraps every 2863311552512ns
[    0.000017] Switching to timer-based delay loop
[    0.000259] Calibrating delay loop (skipped), value calculated using timer frequency.. 96.00 BogoMIPS (lpj=480000)
[    0.000275] pid_max: default: 32768 minimum: 301
[    0.000530] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000545] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.011971] CPU: Testing write buffer coherency: ok
[    0.012310] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.012381] Setting up static identity map for 0x802130b8 - 0x80213110
[    0.090600] CPU1: Booted secondary processor
[    0.090646] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.110597] CPU2: Booted secondary processor
[    0.110634] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.130614] CPU3: Booted secondary processor
[    0.130650] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.130784] Brought up 4 CPUs
[    0.130826] SMP: Total of 4 processors activated (384.00 BogoMIPS).
[    0.130834] CPU: All CPU(s) started in SVC mode.
[    0.140954] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.141342] pinctrl core: initialized pinctrl subsystem
[    0.141758] regulator-dummy: no parameters
[    0.142412] NET: Registered protocol family 16
[    0.143903] DMA: preallocated 2048 KiB pool for atomic coherent allocations
[    0.144446] cpuidle: using governor ladder
[    0.144459] cpuidle: using governor menu
[    0.154361] 
[    0.154361] Version Rollback Feature Disabled
[    0.157712] i2c-msm-v2 78b7000.i2c: probing driver i2c-msm-v2
[    0.159118] sps:sps is ready.
[    0.162725] bio: create slab <bio-0> at 0
[    0.164485] SD0 VccQ: 1800 <--> 3000 mV 
[    0.164975] SCSI subsystem initialized
[    0.165318] msm_bus_fabric_init_driver
[    0.165474] msm_bus_device 580000.ad-hoc-bus: Util-fact is missing, default to 100
[    0.165493] msm_bus_device 580000.ad-hoc-bus: Vrail-comp is missing, default to 100
[    0.165512] msm_bus_device 580000.ad-hoc-bus: Failed to get bus clk for bus4096 ctx1
[    0.165556] msm_bus_device 580000.ad-hoc-bus: Util-fact is missing, default to 100
[    0.165571] msm_bus_device 580000.ad-hoc-bus: Vrail-comp is missing, default to 100
[    0.165588] msm_bus_device 580000.ad-hoc-bus: Failed to get bus clk for bus1024 ctx1
[    0.191979] 80000.qcom,pcie supply vreg-3.3 not found, using dummy regulator
[    0.192085] 80000.qcom,pcie supply vreg-1.8 not found, using dummy regulator
[    0.192141] 80000.qcom,pcie supply vreg-0.9 not found, using dummy regulator
[    0.192198] 80000.qcom,pcie supply gdsc-vdd not found, using dummy regulator
[    0.290494] msm_pcie_enable: msm_pcie_enable: PCIe: trigger the reset of endpoint of RC0.
[    0.300444] msm_pcie_enable: msm_pcie_enable: PCIe RC0 PHY is ready!
[    0.320445] msm_pcie_enable: msm_pcie_enable: PCIe: Release the reset of endpoint of RC0.
[    0.460575] msm_pcie_enable: msm_pcie_enable: RC0:No. 1:LTSSM_STATE:0x0
[    0.500625] msm_pcie_enable: msm_pcie_enable: RC0:No. 2:LTSSM_STATE:0x0
[    0.540674] msm_pcie_enable: msm_pcie_enable: RC0:No. 3:LTSSM_STATE:0x0
[    0.580724] msm_pcie_enable: msm_pcie_enable: RC0:No. 4:LTSSM_STATE:0x0
[    0.620773] msm_pcie_enable: msm_pcie_enable: RC0:No. 5:LTSSM_STATE:0x0
[    0.660822] msm_pcie_enable: msm_pcie_enable: PCIe: trigger the reset of endpoint of RC0.
[    0.660836] msm_pcie_enable: msm_pcie_enable: PCIe RC0 link initialization failed
[    0.660864] msm_pcie_enumerate: msm_pcie_enumerate: PCIe: failed to enable RC0.
[    0.660876] msm_pcie_probe: msm_pcie_probe: PCIe: RC0 is not enabled during bootup; it will be enumerated upon WAKE signal.
[    0.660887] msm_pcie_probe: msm_pcie_probe: PCIe: Driver probe failed for RC0:-1
[    0.661306] msm_pcie: probe of 80000.qcom,pcie failed with error -1
[    0.661513] Switched to clocksource arch_sys_counter
[    0.663266] NET: Registered protocol family 2
[    0.664468] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.664517] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    0.664568] TCP: Hash tables configured (established 2048 bind 2048)
[    0.664623] TCP: reno registered
[    0.664640] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.664672] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.665033] NET: Registered protocol family 1
[    0.666501] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.673896] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.673927] msgmni has been set to 491
[    0.675197] Key type asymmetric registered
[    0.675213] Asymmetric key parser 'x509' registered
[    0.675251] io scheduler noop registered
[    0.675262] io scheduler deadline registered (default)
[    0.676468] tcsr 194b000.tcsr: setting usb hs phy mode select = e700e7
[    0.676536] tcsr 1953000.ess_tcsr: setting ess interface select = 0
[    0.676606] tcsr 1949000.tcsr: setting wifi_glb_cfg = 41000000
[    0.676664] tcsr 1957000.tcsr: setting wifi_noc_memtype_m0_m2 = 2222222
[    0.677378] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.678415] msm_serial_hsl_probe: detected port #0 (ttyMSM0)
[    0.678455] msm_serial_hsl_probe: Bus scaling is disabled
[    0.678626] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 139, base_baud = 115200) is a MSM
[    0.678700] msm_hsl_console_setup: console setup on port #0
[    1.345330] console [ttyMSM0] enabled
[    1.349412] msm_serial_hsl_init: driver initialized
[    1.354507] BLSP UART: Bus scaling is disabled.
[    1.358339] unregister_client_adhoc: Null cl handle passed unregister
[    1.364843] msm_serial_hs: probe of 78b0000.uart failed with error -2
[    1.371231] msm_serial_hs module loaded
[    1.375535] uart_tx_gpio is not available
[    1.379002] uart_rx_gpio is not available
[    1.383033] uart_cts_gpio is not available
[    1.387074] uart_rfr_gpio is not available
[    1.391157] Wakeup irq not specified.
[    1.394822] BLSP UART: Bus scaling is disabled.
[    1.399515] sps: BAM device 0x07884000 is not registered yet.
[    1.405070] sps:BAM 0x07884000 is registered.
[    1.409526] 78b0000.uart: ttyQHS0 at MMIO 0x78b0000 (irq = 140, base_baud = 460800) is a MSM HS UART
[    1.418881] qca_serial_hs module loaded
[    1.424092] flash_chrdev : flash_chrdev_init 
[    1.427415] flash_chrdev : flash_chrdev_init 
[    1.433335] sps:BAM 0x07884000 (va:0xd0b40000) enabled: ver:0x19, number of pipes:12
[    1.440317] m25p80 spi0.0: found default, expected n25q128a11
[    1.445812] m25p80 spi0.0: default (32768 Kbytes)
[    1.450535] 16 ofpart partitions found on MTD device spi0.0
[    1.456034] Creating 16 MTD partitions on "spi0.0":
[    1.460884] 0x000000000000-0x000000030000 : "0:SBL1"
[    1.467047] 0x000000030000-0x000000040000 : "0:BOOTCONFIG"
[    1.472662] 0x000000040000-0x000000050000 : "0:MIBIB"
[    1.477672] 0x000000050000-0x000000060000 : "0:BOOTCONFIG1"
[    1.483284] 0x000000060000-0x0000000c0000 : "0:QSEE"
[    1.488238] 0x0000000c0000-0x0000000d0000 : "0:CDT"
[    1.493173] 0x0000000d0000-0x0000000e0000 : "0:DDRPARAMS"
[    1.498610] 0x0000000e0000-0x0000000f0000 : "0:APPSBLENV"
[    1.504067] 0x0000000f0000-0x000000170000 : "0:APPSBL"
[    1.509243] 0x000000170000-0x000000180000 : "0:ART"
[    1.514211] 0x000000180000-0x000000240000 : "OPAQUE"
[    1.519193] 0x000000240000-0x000000540000 : "0:HLOS"
[    1.524043] 0x000000540000-0x000000d10000 : "0:rootfs"
[    1.529111] 0x000000d10000-0x000000d90000 : "0:APPSBL_1"
[    1.534508] 0x000000d90000-0x000001190000 : "1:HLOS"
[    1.539391] 0x000001190000-0x000002000000 : "1:rootfs"
[    1.545649] libphy: ipq40xx_mdio: probed
[    1.552098] ipq40xx-mdio 90000.mdio: ipq40xx-mdio driver was registered
[    1.557739] i2c /dev entries driver
[    1.562177] requesting memory region failed
[    1.801876] i2c-msm-v2 78b7000.i2c: NACK: slave not responding, ensure its powered: msgs(n:1 cur:0 tx) bc(rx:0 tx:2) mode:FIFO slv_addr:0x32 MSTR_STS:0x011383c8 OPER:0x00000090
[    2.046546] i2c-msm-v2 78b7000.i2c: NACK: slave not responding, ensure its powered: msgs(n:1 cur:0 tx) bc(rx:0 tx:2) mode:FIFO slv_addr:0x32 MSTR_STS:0x011383c8 OPER:0x00000090
[    2.061282] lp5521 0-0032: device detection err: -107
[    2.066355] lp5521: probe of 0-0032 failed with error -107
[    2.073007] TCP: cubic registered
[    2.075973] NET: Registered protocol family 10
[    2.081764] NET: Registered protocol family 17
[    2.085280] Bridge firewalling registered
[    2.089175] 8021q: 802.1Q VLAN Support v1.8
[    2.093451] Registering SWP/SWPB emulation handler
[    2.098721] SD0 VccQ: disabling
[    2.101235] regulator-dummy: disabling
[    2.106077] input: gpio_keys.7 as /devices/soc.0/gpio_keys.7/input/input0
[    2.112111] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[    2.121304] clk: Not disabling unused clocks
[    2.133969] VFS: Mounted root (squashfs filesystem) readonly on device 31:15.
[    2.140319] Freeing unused kernel memory: 156K (c06bb000 - c06e2000)
[    3.772457] init: Console is alive
[    3.775082] init: - watchdog -
[    3.938953] random: nonblocking pool is initialized
[    7.005194] usbcore: registered new interface driver usbfs
[    7.009733] usbcore: registered new interface driver hub
[    7.015233] usbcore: registered new device driver usb
[    7.020723] Button Hotplug driver version 0.4.1
[    7.724757] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    7.729243] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    7.737166] xhci-hcd xhci-hcd.0.auto: irq 164, io mem 0x08a00000
[    7.743810] hub 1-0:1.0: USB hub found
[    7.746616] hub 1-0:1.0: 1 port detected
[    7.750951] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    7.755998] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    7.764530] hub 2-0:1.0: USB hub found
[    7.767355] hub 2-0:1.0: 1 port detected
[    7.771779] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    7.776718] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[    7.784612] xhci-hcd xhci-hcd.1.auto: irq 168, io mem 0x06000000
[    7.791203] hub 3-0:1.0: USB hub found
[    7.794129] hub 3-0:1.0: 1 port detected
[    7.798445] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    7.803476] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[    7.811957] hub 4-0:1.0: USB hub found
[    7.814840] hub 4-0:1.0: config failed, hub doesn't have any ports! (err -19)
[    8.779036] init: - preinit -
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
Before mount_root
mounting /dev/root
cp: can't stat '/tmp/log_export_tmp/*': No such file or directory
After mount_root
377+0 records in
377+0 records out
377+0 records in
377+0 records out
[   13.532218] procd: - early -
[   13.534207] procd: - watchdog -
[   14.287294] procd: - ubus -
[   15.302139] procd: - init -
Please press Enter to activate this console.
[   15.572668] QCE50: __qce_init_clk: Unable to get CE core src clk, set to NULL
[   15.578853] qcrypto 8e20000.qcrypto: Qualcomm Crypto 5.3.1 device found @0x8e20000
[   15.586405] qcrypto 8e20000.qcrypto: CE device = 0x0
[   15.586405] , IO base, CE = 0xd1140000
[   15.586405] , Consumer (IN) PIPE 2,    Producer (OUT) PIPE 3
[   15.586405] IO base BAM = 0x  (null)
[   15.586405] BAM IRQ 239
[   15.586405] Engines Availability = 0x2010453
[   15.610944] sps:BAM 0x08e04000 is registered.
[   15.616010] sps:BAM 0x08e04000 (va:0xd1180000) enabled: ver:0x27, number of pipes:4
[   15.623835] QCE50: qce_sps_init:  Qualcomm MSM CE-BAM at 0x0000000008e04000 irq 239
[   15.630808] bus_scale_table is NULL
[   15.634176] qcrypto 8e20000.qcrypto: qcrypto-ecb-aes
[   15.639043] qcrypto 8e20000.qcrypto: qcrypto-cbc-aes
[   15.644010] qcrypto 8e20000.qcrypto: qcrypto-ctr-aes
[   15.648930] qcrypto 8e20000.qcrypto: qcrypto-ecb-des
[   15.653912] qcrypto 8e20000.qcrypto: qcrypto-cbc-des
[   15.658827] qcrypto 8e20000.qcrypto: qcrypto-ecb-3des
[   15.663884] qcrypto 8e20000.qcrypto: qcrypto-cbc-3des
[   15.668896] qcrypto 8e20000.qcrypto: qcrypto-xts-aes
[   15.673866] qcrypto 8e20000.qcrypto: qcrypto-sha1
[   15.678534] qcrypto 8e20000.qcrypto: qcrypto-sha256
[   15.683418] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha1-cbc-aes
[   15.689653] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha1-cbc-des
[   15.695916] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha1-cbc-3des
[   15.702250] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha256-cbc-aes
[   15.708653] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha256-cbc-des
[   15.715100] qcrypto 8e20000.qcrypto: qcrypto-aead-hmac-sha256-cbc-3des
[   15.721597] qcrypto 8e20000.qcrypto: qcrypto-hmac-sha1
[   15.726708] qcrypto 8e20000.qcrypto: qcrypto-hmac-sha256
[   15.732027] qcrypto 8e20000.qcrypto: qcrypto-aes-ccm
[   15.736951] qcrypto 8e20000.qcrypto: qcrypto-rfc4309-aes-ccm
[   15.742505] qcrypto: FIPS140-2 Known Answer Tests: Skipped
[   15.756332] nf_conntrack version 0.5.0 (3935 buckets, 15740 max)
[   15.766120] PPP generic driver version 2.4.2
[   16.024621] ess-switch DT exist!
[   16.026839] switchreg_base_addr: 0xc000000
[   16.030899] switchreg_size: 0x80000
[   16.034425] switch_access_mode: local bus
[   16.038370] wan bmp:0x20
[   16.040896] ess-psgmii DT exist!
[   16.044120] mac mode=0
[   16.046438] current mac mode = 0
[   16.049651] current dts led_source_num is 0
[   16.053850] mdio DT exist!
[   16.056514] ssdk_plat_init start
[   16.059866] enable ess clk
[   16.172788] reset ok in probe!
[   16.175459] PHY ID is 0x4dd0b2
[   16.237798] qca probe malibu phy driver succeeded!
[   18.021118] Dakota Chip version 0x1401
[   18.025929] qca-ssdk module init succeeded!
[   18.033261] l2tp_core: L2TP core driver, V2.0
[   18.037474] l2tp_netlink: L2TP netlink interface
[   18.042599] sit: IPv6 over IPv4 tunneling driver
[   18.050728] tipc: Activated (version 2.0.0)
[   18.054465] NET: Registered protocol family 30
[   18.058932] tipc: Started in single node mode
[   18.063725] gre: GRE over IPv4 demultiplexor driver
[   18.068708] ip_gre: GRE over IPv4 tunneling driver
[   18.079705] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
[   18.096207] QCA Hy-Fi multicast installation successfully
[   18.103999] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   18.113851] edma module_init
[   18.117003] EDMA using MAC@ - using 6a:58:73:b5:a9:fd
[   18.123322] EDMA using MAC@ - using 46:67:2d:14:15:05
[   18.224095] u32 classifier
[   18.225780]     Performance counters on
[   18.229601]     input device check on
[   18.233297]     Actions configured
[   18.238021] Mirror/redirect action on
[   18.269925] Ebtables v2.0 registered
[   18.274460] ip_tables: (C) 2000-2006 Netfilter Core Team
[   18.428542] Netfilter messages via NETLINK v0.30.
[   18.436183] NET: Registered protocol family 24
[   18.441277] PPTP driver version 0.8.5
[   18.482140] xt_time: kernel timezone is -0000
[   18.487451] usbcore: registered new interface driver cdc_ether
[   18.503574] l2tp_ppp: PPPoL2TP kernel driver, V2.0
[   18.524005] ctnetlink v0.93: registering with nfnetlink.
[   18.537618] usbcore: registered new interface driver rndis_host
reloadprofile() begin
reloadprofile() end

It seams almost as if the version I compiled isn't setting up the whole partition table, if I'm reading the logs properly...

Wilho

So indeed the spi chip is not recognized here in 0x204019 address if understand correctly. How do I identify the spi chip on my board? And do I add something in respective source file in /drivers/mtd/spi-nor/, both kernel and u-boot?

...

So, after some (and then some ;)) fidling and googling, I got it to boot, yay!

In the end, all it took was to add the following to drivers/mtd/spi-nor/xmc.c:

   { "XM25QH256C", INFO(0x204019, 0, 64 * 1024, 512,
                        SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },

Below is the relevant part of the boot log now, I'm not sure if it's fully correct since there's some complaining about 'Bad cell count', but at least it boots. I'm happy.

Wilho

[    0.769551] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    0.772171] spi-nor spi0.0: XM25QH256C (32768 Kbytes)
[    0.777776] 15 fixed-partitions partitions found on MTD device spi0.0
[    0.782744] OF: Bad cell count for /soc/spi@78b5000/m25p80@0/partitions
[    0.789100] OF: Bad cell count for /soc/spi@78b5000/m25p80@0/partitions
[    0.795744] Creating 15 MTD partitions on "spi0.0":
[    0.802125] 0x000000000000-0x000000030000 : "0:SBL1"
[    0.807526] 0x000000030000-0x000000040000 : "0:BOOTCONFIG"
[    0.812695] 0x000000040000-0x000000050000 : "0:MIBIB"
[    0.817919] 0x000000050000-0x000000060000 : "0:BOOTCONFIG1"
[    0.823141] 0x000000060000-0x0000000c0000 : "0:QSEE"
[    0.828579] 0x0000000c0000-0x0000000d0000 : "0:CDT"
[    0.833718] 0x0000000d0000-0x0000000e0000 : "0:DDRPARAMS"
[    0.838249] 0x0000000e0000-0x0000000f0000 : "0:APPSBLENV"
[    0.843874] 0x0000000f0000-0x000000170000 : "0:APPSBL"
[    0.849196] 0x000000170000-0x000000180000 : "0:ART"
[    0.854273] 0x000000180000-0x000000240000 : "OPAQUE"
[    0.859014] 0x000000240000-0x000000540000 : "0:HLOS"
[    0.864253] 0x000000540000-0x000000d10000 : "0:rootfs"
[    0.869175] 0x000000d10000-0x000000d90000 : "0:APPSBL_1"
[    0.874329] 0x000000d90000-0x000002000000 : "firmware"
[    0.880350] 2 fit-fw partitions found on MTD device firmware
[    0.884039] Creating 2 MTD partitions on "firmware":
[    0.889893] 0x000000000000-0x0000003f0000 : "kernel"
[    0.895300] 0x000000400000-0x000001270000 : "rootfs"
[    0.900220] mtd: setting mtd16 (rootfs) as root device
[    0.904948] 1 squashfs-split partitions found on MTD device rootfs
[    0.909689] 0x0000007e0000-0x000001270000 : "rootfs_data"

1 Like

I've been playing around to get VLANs working on my Deco M5 3.0eu and after soldering the serial port with console was finally able to get them working (partially) with the "DSA-style" configuration on the 22.03.3 modified version by @parker-stephens . I had to include the swconfig vlans' disabling in the startup:

swconfig dev switch0 set enable_vlan 0
swconfig dev switch0 set apply

my config is for a "dumb AP", connected via a trunk (eth0) with the router (pfsense) that sends tagged vlan traffic. It has multiple SSIDs (lan & guest), each tied to one VLAN each (99 & 123). All works fine over WLAN, but eth1 still sends ethernet frames (802.11q) with the "1" VLAN ID (even though it's configured for untagged 99 VLAN) - not sure if there's anything I can do about it?
Alternatively if someone can share a working VLAN config for the "swconfig" (old) style on Deco M5 - that would be appreciated.

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth0'
        list ports 'eth1'

config interface 'lan'
        option proto 'static'
        option netmask '255.255.255.0'
        option device 'br-lan.99'
        option ipaddr '10.1.8.8'
        option gateway '10.1.8.1'

config bridge-vlan
        option device 'br-lan'
        option vlan '99'
        list ports 'eth0:t'
        list ports 'eth1:u*'

config bridge-vlan
        option device 'br-lan'
        list ports 'eth0:t'
        option vlan '123'

config interface 'GUEST'
        option proto 'none'
        option device 'br-lan.123'

I've tried compiling the "master" branch as well with merged M5 modifications, but didn't go anywhere yet other than getting it compiled and failing to boot up (if someone could share a working/bootable version that would be great - @Tomer @Rikbruggink ?

1 Like

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd95:31b0:ca0d::/48'
        option packet_steering '1'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option vid '1'
        option ports '0t 5t'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '0t 5t'
        option vid '401'

config switch_vlan
        option device 'switch0'
        option vlan '3'
        option vid '402'
        option ports '0t 5t 4'

config switch_vlan
        option device 'switch0'
        option vlan '4'
        option ports '0t 5t'
        option vid '403'

config device
        option type 'bridge'
        option name 'br-Admin_LA'
        list ports 'eth0.1'

config device
        option type 'bridge'
        option name 'br-Guest_LA'
        list ports 'eth0.401'

config device
        option type 'bridge'
        option name 'br-IoT_LA'
        list ports 'eth0.402'

config device
        option type 'bridge'
        option name 'br-NAS_LA'
        list ports 'eth0.403'

config interface 'Admin_LA'
        option proto 'dhcp'
        option device 'br-Admin_LA'

config interface 'Guest_LA'
        option proto 'dhcp'
        option device 'br-Guest_LA'

config interface 'IoT_LA'
        option proto 'dhcp'
        option device 'br-IoT_LA'

config interface 'NAS_LA'
        option proto 'dhcp'
        option device 'br-NAS_LA'


2 Likes

Thanks. Which version/build are you running this config on?

Thank you @survivor182ca ! - I've managed to get the VLANs working with the build based on the sources of @parker-stephens.

The difference between my previous attempts were that I was using the same vlan# and vid (e.g. vlan 99 and vid 99) - not sure if this was the actuall issue?. Also I was having eth0 & eth1 bridged together (which I suspect was causing some issues when eth0 & eth1 are in the same bridge)

1 Like

Running your binaries here on three M5 EU 3.0 devices. Stable and fine.

I have rebased and squashed the changes made by @oklona onto the latest master into a branch here and cleaned up the formatting.

There is also a cherry-picked branch from 23.05 here.

I have also opened a pull request for firmware-utils here.

Please test these changes and let me know if anything is broken.

Also note that I will be force-pushing changes to those branches.

3 Likes

I'm currently trying to unravel the mystery of the unusual partition naming in the Deco-M5, because the DTS files and the tplink-safeloader.c source code do not match.

|     DTS     |     Safeloader    |   Start   |    Size   |
|:-----------:|:-----------------:|:---------:|:---------:|
|     SBL1    |        SBL1       |       0x0 |   0x30000 |
|  BOOTCONFIG |   boot-config_0   |   0x30000 |   0x10000 |
|    MIBIB    |       MIBIB       |   0x40000 |   0x10000 |
| BOOTCONFIG1 |   boot-config_1   |   0x50000 |   0x10000 |
|     QSEE    |        QSEE       |   0x60000 |   0x60000 |
|     CDT     |        CDT        |   0xc0000 |   0x10000 |
|  DDRPARAMS  |     DDRPARAMS     |   0xd0000 |   0x10000 |
|  APPSBLENV  |     uboot-env     |   0xe0000 |   0x10000 |
|    APPSBL   |     fs-uboot@0    |   0xf0000 |   0x80000 |
|     ART     |         -         |  0x170000 |   0x10000 |
|      -      |       radio       |  0x170000 |    0xfff0 |
|      -      |   bluetooth-XTAL  |  0x17fff0 |      0x10 |
|    OPAQUE   |         -         |  0x180000 |   0xc0000 |
|      -      |    default-mac    |  0x180000 |    0x1000 |
|      -      |     device-id     |  0x182000 |    0x1000 |
|      -      |    product-info   |  0x183000 |    0x5000 |
|      -      |    support-list   |  0x190000 |   0x10000 |
|      -      |    user-config    |  0x200000 |   0x10000 |
|      -      |   device-config   |  0x210000 |   0x10000 |
|      -      |     group-info    |  0x220000 |   0x10000 |
|      -      | partition-table@0 |  0x230000 |    0x2000 |
|     HLOS    |     os-image@0    |  0x240000 |  0x300000 |
|    rootfs   |         -         |  0x540000 |  0x7d0000 |
|      -      |   file-system@0   |  0x540000 |  0x790000 |
|      -      |   soft-version@0  |  0xcd0000 |   0x10000 |
|      -      |     profile@0     |  0xce0000 |   0x10000 |
|      -      |  default-config@0 |  0xcf0000 |   0x10000 |
|      -      | partition-table@1 |  0xd00000 |    0x2000 |
|   APPSBL_1  |     fs-uboot@1    |  0xd10000 |   0x80000 |
|   firmware  |         -         |  0xd90000 | 0x1040000 |
|      -      |     os-image@1    |  0xd90000 |  0x400000 |
|      -      |   file-system@1   | 0x1190000 |  0xc40000 |
|      -      |   soft-version@1  | 0x1dd0000 |   0x10000 |
|      -      |     profile@1     | 0x1de0000 |   0x10000 |
|      -      |  default-config@1 | 0x1df0000 |   0x10000 |
|      -      |       tm-sig      | 0x1e00000 |  0x200000 |

So it appears that the partitions specified in the DTS files are further split into smaller partitions when using the safeloader. Please give me your feedbacks about this as I suspect that we will be asked to remove the if-else code block in the safeloader in order to align with other TP-Link devices.

2 Likes

@undisputed-seraphim : nice work to get it merge to the master branch of openwrt

Getting the master-based branch compiled and will come back with feedback. Thanks for investing the time to make this happen and share.

1 Like

The build completed, but only the "-sysupgrade.bin" image got created. The only add-on pkg I've selected was luci. Is this expected here to not produce the "-factory" image?

Would you be so kind to share your build steps with me?
I'm currently creating a build environment, so hopefully I'm able to build my own firmware image soon...
Also, does anyone know if DSA 'style' networking is possible with this latest build?
You can also PM me if we're going off topic here :slight_smile:

And also thanks to @undisputed-seraphim for your investment in this topic!