OpenWrt support on rt2600ac (synology) 2021

iperf3 tests show poor (82Mbit/s) speed on 5Ghz band compared to the 2.4 Ghz band (200Mbit/s) . I'm in the same room as the router, same iperf client device and same iperf server. Weird.

Edit: not saying it's related to the image though :slight_smile: Currently still working stable after some dummy testing :stuck_out_tongue:

1 Like

yeah pretty much all that stuff is now common with the other users...

  1. 4.19 was/is probably optimal in terms of max performance + stability
  2. forgot irqbalance which is preferable (should install from repos ok i think as its a userpace-ish package)
  3. look at upping the base frequency although i'm pretty sure they included this now

for the next port 5.10/dsa does not seem super beneficial so i'd probably port to NSS / @ACwifidude s base...

apart from the OEM change dishonouring root= ... this is probably the next best thing to come out of your testing on this device...

if you truly do get bored... you could fire up the OEM os...

  • ssh in (dont forget to type 'su' every time you do that... some of your earlier inventory commands didnt run due to this)

  • poke around in the sysfs to try to pinpoint whats going on with the lan-led-gpio assignments...

i'd honestly forgotten there are 4 leds for each lan port on this hardware

(the 'wan2' i'm not super concerned about at this stage but it's interesting that one physical port technically has a 'two-leds'... guess it just a spare gpio that gets toggled on software 'lanX is wan2 now and wan2 is connected')

I have a feeling that the lan leds are 'muxed' (or we might be missing a switch driver compile option or dts definition is off if they are attached to the switch chip which starts to get beyond my skillset)

(as I think the external mmc-cs is also muxed possibly with those but the external mmc definition is another level of pain so don't worry about that)

there are a few guides on the openwrt wiki about poking around in sysfs (re: gpio's or class/leds )

(actually from memory they also have some sort of custom binary for something related to these... but also ignore that for now)

if all that goes over your head or is too hard... mostly just try this on the stock-os;

cat /sys/kernel/debug/gpio

one other thing that is on my support thread but i'll repeat...

switching power off to the board whilst uboot is initializing can force it to rewrite all the uboot variables/environment ... (at least on the early stock version i'm running)

this is kinda good as a means of indirect recovery of those stock variables... but i'm yet to really work out an exact method of triggering/not-triggering this...

in other words... avoid quickly switching off and on whilst it's in the early stages of boot...

and if all of a sudden the thing stops booting as you expect... take a look that your settings are still present... ( likely to happen after user triggered on<>off<>on action )

1 Like

I did the command, rest is not so clear atm

SynologyRouter> cat /sys/kernel/debug/gpio
GPIOs 0-68, platform/800000.pinmux, 800000.pinmux:
 gpio0   : in  0 8mA no pull
 gpio1   : out 0 8mA no pull
 gpio2   : in  0 8mA no pull
 gpio3   : out 1 12mA no pull
 gpio4   : in  0 2mA pull down
 gpio5   : in  0 2mA pull down
 gpio6   : out 0 2mA pull down
 gpio7   : out 0 2mA pull down
 gpio8   : out 0 2mA pull down
 gpio9   : out 0 2mA pull down
 gpio10  : out 1 12mA no pull
 gpio11  : out 1 12mA no pull
 gpio12  : in  0 2mA no pull
 gpio13  : in  0 2mA no pull
 gpio14  : in  0 2mA pull down
 gpio15  : in  0 2mA pull down
 gpio16  : in  0 2mA pull down
 gpio17  : in  0 2mA pull down
 gpio18  : in  1 10mA pull down
 gpio19  : in  1 10mA pull down
 gpio20  : out 0 10mA pull up
 gpio21  : in  1 10mA pull down
 gpio22  : in  0 2mA pull down
 gpio23  : in  0 2mA pull down
 gpio24  : out 0 2mA pull down
 gpio25  : out 0 2mA pull down
 gpio26  : out 0 2mA pull down
 gpio27  : out 2 8mA no pull
 gpio28  : out 2 8mA no pull
 gpio29  : out 2 8mA no pull
 gpio30  : out 2 8mA no pull
 gpio31  : out 2 8mA no pull
 gpio32  : out 2 8mA no pull
 gpio33  : in  0 2mA pull down
 gpio34  : out 1 10mA no pull
 gpio35  : out 1 10mA no pull
 gpio36  : out 1 10mA no pull
 gpio37  : out 1 10mA no pull
 gpio38  : in  2 10mA pull up
 gpio39  : in  2 10mA pull up
 gpio40  : in  2 10mA pull up
 gpio41  : in  2 10mA pull up
 gpio42  : in  2 16mA pull down
 gpio43  : in  2 10mA pull up
 gpio44  : in  2 10mA pull up
 gpio45  : in  2 10mA pull up
 gpio46  : in  2 10mA pull up
 gpio47  : in  2 10mA pull up
 gpio48  : out 1 12mA no pull
 gpio49  : in  0 2mA pull down
 gpio50  : in  0 2mA pull down
 gpio51  : in  2 8mA no pull
 gpio52  : in  2 2mA pull down
 gpio53  : in  0 2mA pull down
 gpio54  : in  0 2mA pull down
 gpio55  : in  0 2mA pull down
 gpio56  : in  0 2mA pull down
 gpio57  : in  0 2mA pull down
 gpio58  : in  0 2mA pull down
 gpio59  : in  2 8mA no pull
 gpio60  : in  2 8mA no pull
 gpio61  : in  2 8mA no pull
 gpio62  : in  2 8mA no pull
 gpio63  : in  0 2mA pull up
 gpio64  : in  0 2mA pull down
 gpio65  : in  0 2mA pull down
 gpio66  : in  1 8mA no pull
 gpio67  : in  0 2mA pull down
 gpio68  : in  0 2mA pull down
1 Like

I did notice that there is a possibility to modify the LEDs operation mode from the syno web config. So it has some advanced operation of these leds indeed.

But even as root (su root) I can't seem to peer inside:

~ # cat /sys/class/gpio/gpiochip0/device/driver/800000.pinmux/driver/bind
cat: can't open '/sys/class/gpio/gpiochip0/device/driver/800000.pinmux/driver/bind': Permission denied

1 Like

thanks for that...

oem-noconsole-note

likely cause of this is you/we overwrote the 'bootargs' or the command that sets them (or the command that calls the command that sets them)

not a big deal for now... but feel free to pm me 'printenv' if you think you stuffed it up and I can probably offer some advice / point out where the issue is...

depending on if you think you are gonna stick with openwrt I need to polish up the commands which is not a quick thing... and relies a little on what I have to change in the upgrade code to support no root= anymore...

uploaded @ACwifidude NSS branch build... no idea if will run well or at all... from scanning that thread there may be;

  • some issues with running sqm with it...
  • occasional crashing

in case you wanted to test performance... can't really provide any guidance or support with it tho... but you may find some answers in that thread

if your internet is over ~215 or your expecting huge wifi throughput it's well worth a shot...

SQM requires a custom script. That being said NSS can do fq_codel at nearly line rate. :grin:

Regarding stability- I run my NSS build on my home setup with three r7800. I’ve never had reboots. Ipq8065 devices have the best stability. There are a few ipq8064 device users that are reporting reboots (after 1-2 weeks) but that is not all ipq8064 users.

1 Like

oem-noconsole-note

Not necessary, I configured the WAN section in syno, so I can access it now over SSH as well, which is enough for running/testing what you need :slight_smile:

Will that NSS branch build run on this hardware ? I can run it from USB just like @anon50098793 's build?
Edit: I now see that you've uploaded it, tnx, i'll test later today

1 Like

NSS build ~should run~... it's basically created using the same process as the regular OpenWrt

Yes... i've modded it to include the necessary stuff to run from your usb...
(but i've yet to include some of the custom packages that I probably chose in the regular build but it seems there were most of the things included already anyways)

1 Like

Think still a problem with root

Loading file "kernel" from usb device 0:1 (usbda1)
4194304 bytes read
   Image Name:   ARM OpenWrt Linux-5.4.128
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2922495 Bytes = 2.8 MiB
   Load Address: 42208000
   Entry Point:  42208000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
mtdids not defined, no default present
info: "mtdparts" not set
Using machid 0x136c from environment

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.4.128 (vert@peanut) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r16983-e4a4b77263)) #0 SMP Sat Jun 19 02:00:38 2021
[    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: Synology RT2600AC
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] percpu: Embedded 15 pages/cpu s30220 r8192 d23028 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 121800
[    0.000000] Kernel command line: rootfstype=squashfs,ext4 root=/dev/sda2 rootwait noinitrd
[    0.000000] Bootloader command line (ignored):
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 476880K/491520K available (6256K kernel code, 197K rwdata, 1560K rodata, 1024K init, 232K bss, 14640K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    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] random: get_random_bytes called from start_kernel+0x340/0x4e8 with crng_init=0
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 305801671480 ns
[    0.000007] sched_clock: 32 bits at 6MHz, resolution 160ns, wraps every 343597383600ns
[    0.000020] Switching to timer-based delay loop, resolution 160ns
[    0.000242] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.50 BogoMIPS (lpj=62500)
[    0.000262] pid_max: default: 32768 minimum: 301
[    0.000460] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.000477] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.001516] CPU: Testing write buffer coherency: ok
[    0.002679] Setting up static identity map for 0x42300000 - 0x42300060
[    0.002857] rcu: Hierarchical SRCU implementation.
[    0.003352] smp: Bringing up secondary CPUs ...
[    0.005277] smp: Brought up 1 node, 2 CPUs
[    0.005291] SMP: Total of 2 processors activated (25.00 BogoMIPS).
[    0.005301] CPU: All CPU(s) started in SVC mode.
[    0.016279] VFP support v0.3: implementor 51 architecture 64 part 4d variant 2 rev 0
[    0.016427] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.016456] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.016599] pinctrl core: initialized pinctrl subsystem
[    0.017744] NET: Registered protocol family 16
[    0.018080] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.019476] cpuidle: using governor ladder
[    0.019544] cpuidle: using governor menu
[    0.056065] usbcore: registered new interface driver usbfs
[    0.056145] usbcore: registered new interface driver hub
[    0.056212] usbcore: registered new device driver usb
[    0.056272] pps_core: LinuxPPS API ver. 1 registered
[    0.056284] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.056317] PTP clock support registered
[    0.057166] workqueue: max_active 576 requested for napi_workq is out of range, clamping between 1 and 512
[    0.058361] clocksource: Switched to clocksource dg_timer
[    0.059226] thermal_sys: Registered thermal governor 'step_wise'
[    0.061709] NET: Registered protocol family 2
[    0.061877] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.062897] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.062939] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    0.062978] TCP bind hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.063032] TCP: Hash tables configured (established 4096 bind 4096)
[    0.063139] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.063170] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.063420] NET: Registered protocol family 1
[    0.063470] PCI: CLS 0 bytes, default 64
[    0.064829] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.071999] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.072014] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.112128] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda not found, using dummy regulator
[    0.112269] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda_phy not found, using dummy regulator
[    0.112381] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda_refclk not found, using dummy regulator
[    0.112665] qcom-pcie 1b500000.pci: host bridge /soc/pci@1b500000 ranges:
[    0.112736] qcom-pcie 1b500000.pci:    IO 0x0fe00000..0x0fefffff -> 0x0fe00000
[    0.112776] qcom-pcie 1b500000.pci:   MEM 0x08000000..0x0fdfffff -> 0x08000000
[    0.334031] qcom-pcie 1b500000.pci: Link up
[    0.334206] qcom-pcie 1b500000.pci: PCI host bridge to bus 0000:00
[    0.334229] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.334249] pci_bus 0000:00: root bus resource [io  0x0000-0xfffff] (bus address [0xfe00000-0xfefffff])
[    0.334264] pci_bus 0000:00: root bus resource [mem 0x08000000-0x0fdfffff]
[    0.334325] pci 0000:00:00.0: [17cb:0101] type 01 class 0xff0000
[    0.334492] pci 0000:00:00.0: supports D1
[    0.334507] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    0.338691] PCI: bus0: Fast back to back transfers disabled
[    0.339029] pci 0000:01:00.0: [168c:0046] type 00 class 0x028000
[    0.339386] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    0.340533] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    0.344807] PCI: bus1: Fast back to back transfers disabled
[    0.344893] pci 0000:00:00.0: BAR 8: assigned [mem 0x08000000-0x081fffff]
[    0.344918] pci 0000:01:00.0: BAR 0: assigned [mem 0x08000000-0x081fffff 64bit]
[    0.345046] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    0.345070] pci 0000:00:00.0:   bridge window [mem 0x08000000-0x081fffff]
[    0.345827] pcieport 0000:00:00.0: AER: enabled with IRQ 40
[    0.346355] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda not found, using dummy regulator
[    0.346470] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda_phy not found, using dummy regulator
[    0.346600] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda_refclk not found, using dummy regulator
[    0.346869] qcom-pcie 1b700000.pci: host bridge /soc/pci@1b700000 ranges:
[    0.346929] qcom-pcie 1b700000.pci:    IO 0x31e00000..0x31efffff -> 0x31e00000
[    0.346962] qcom-pcie 1b700000.pci:   MEM 0x2e000000..0x31dfffff -> 0x2e000000
[    0.575763] qcom-pcie 1b700000.pci: Link up
[    0.575926] qcom-pcie 1b700000.pci: PCI host bridge to bus 0001:00
[    0.575944] pci_bus 0001:00: root bus resource [bus 00-ff]
[    0.575959] pci_bus 0001:00: root bus resource [mem 0x2e000000-0x31dfffff]
[    0.576013] pci 0001:00:00.0: [17cb:0101] type 01 class 0xff0000
[    0.576163] pci 0001:00:00.0: supports D1
[    0.576176] pci 0001:00:00.0: PME# supported from D0 D1 D3hot
[    0.580286] PCI: bus0: Fast back to back transfers disabled
[    0.580628] pci 0001:01:00.0: [168c:0046] type 00 class 0x028000
[    0.581006] pci 0001:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    0.582244] pci 0001:01:00.0: PME# supported from D0 D3hot D3cold
[    0.582547] pci 0001:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s x1 link at 0001:00:00.0 (capable of 4.000 Gb/s with 5 GT/s x1 link)
[    0.586571] PCI: bus1: Fast back to back transfers disabled
[    0.586644] pci 0001:00:00.0: BAR 8: assigned [mem 0x2e000000-0x2e1fffff]
[    0.586668] pci 0001:01:00.0: BAR 0: assigned [mem 0x2e000000-0x2e1fffff 64bit]
[    0.586801] pci 0001:00:00.0: PCI bridge to [bus 01-ff]
[    0.586824] pci 0001:00:00.0:   bridge window [mem 0x2e000000-0x2e1fffff]
[    0.587663] pcieport 0001:00:00.0: AER: enabled with IRQ 42
[    0.590481] L2 @ QSB rate. Forcing new rate.
[    0.590711] L2 @ 384000 KHz
[    0.590895] CPU0 @ 800000 KHz
[    0.590906] CPU1 @ QSB rate. Forcing new rate.
[    0.591033] CPU1 @ 384000 KHz
[    0.594860] gsbi 16300000.gsbi: GSBI port protocol: 6 crci: 0
[    0.596388] gsbi 1a200000.gsbi: GSBI port protocol: 3 crci: 0
[    0.598148] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.599115] msm_serial 16340000.serial: msm_serial: detected port #0
[    0.599166] msm_serial 16340000.serial: uartclk = 7372800
[    0.599242] 16340000.serial: ttyMSM0 at MMIO 0x16340000 (irq = 43, base_baud = 460800) is a MSM
[    0.599281] msm_serial: console setup on port #0
[    1.389831] printk: console [ttyMSM0] enabled
[    1.394833] msm_serial: driver initialized
[    1.404239] loop: module loaded
[    1.405445] spi_qup 1a280000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    1.407727] spi-nor spi0.0: mx25u6435f (8192 Kbytes)
[    1.413640] 13 qcomsmem partitions found on MTD device spi0.0
[    1.418596] Creating 13 MTD partitions on "spi0.0":
[    1.424160] 0x000000000000-0x000000020000 : "0:sbl1"
[    1.429957] 0x000000020000-0x000000040000 : "0:mibib"
[    1.434964] 0x000000040000-0x000000080000 : "0:sbl2"
[    1.440003] 0x000000080000-0x000000100000 : "0:sbl3"
[    1.444933] 0x000000100000-0x000000110000 : "0:ddrconfig"
[    1.449991] 0x000000110000-0x000000120000 : "0:ssd"
[    1.455158] 0x000000120000-0x0000001a0000 : "0:tz"
[    1.459970] 0x0000001a0000-0x000000220000 : "0:rpm"
[    1.464732] 0x000000220000-0x0000002a0000 : "0:appsbl"
[    1.469644] 0x0000002a0000-0x0000002e0000 : "0:appsblenv"
[    1.474705] 0x0000002e0000-0x000000320000 : "0:art"
[    1.480286] 0x000000320000-0x0000003f0000 : "0:vendorpart"
[    1.484898] 0x0000003f0000-0x000000400000 : "0:fis"
[    1.491899] libphy: ipq8064_mdio_bus: probed
[    1.509577] switch0: Atheros AR8337 rev. 2 switch registered on 37000000.mdio-mii
[    2.355039] ar8327: qca,phy-rgmii-en is not specified
[    2.355636] libphy: Fixed MDIO Bus: probed
[    2.359727] i2c /dev entries driver
[    2.366028] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    2.366579] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    2.374907] mmci-pl18x 12400000.sdcc: mmc0: PL180 manf 51 rev0 at 0x12400000 irq 38,0 (pio)
[    2.381236] mmci-pl18x 12400000.sdcc: DMA channels RX dma1chan1, TX dma1chan2
[    2.415391] sdhci: Secure Digital Host Controller Interface driver
[    2.415420] sdhci: Copyright(c) Pierre Ossman
[    2.420556] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.427461] NET: Registered protocol family 10
[    2.432037] Segment Routing with IPv6
[    2.434957] NET: Registered protocol family 17
[    2.438806] Bridge firewalling registered
[    2.443405] 8021q: 802.1Q VLAN Support v1.8
[    2.447194] Registering SWP/SWPB emulation handler
[    2.477720] qcom_rpm 108000.rpm: RPM firmware 3.0.16777381
[    2.491549] s1a: Bringing 0uV into 1050000-1050000uV
[    2.491843] s1a: supplied by regulator-dummy
[    2.495783] s1b: Bringing 0uV into 1050000-1050000uV
[    2.500134] s1b: supplied by regulator-dummy
[    2.504923] s2a: Bringing 0uV into 775000-775000uV
[    2.509322] s2a: supplied by regulator-dummy
[    2.513772] s2b: Bringing 0uV into 775000-775000uV
[    2.518279] s2b: supplied by regulator-dummy
[    2[    2.534711] Waiting for root device /dev/sda2...
[    2.567014] mmc0: new high speed MMC card at address 0001
[    2.567720] mmcblk0: mmc0:0001 M62704 3.53 GiB
[    2.571788] mmcblk0boot0: mmc0:0001 M62704 partition 1 2.00 MiB
[    2.575999] mmcblk0boot1: mmc0:0001 M62704 partition 2 2.00 MiB
[    2.581827] mmcblk0rpmb: mmc0:0001 M62704 partition 3 512 KiB, chardev (248:0)
[    2.590027]  mmcblk0: p1 p3 p4 < p5 p6 p7 >
1 Like

cheers... you can test with the initramfs > 'kernel' for now...

i'll sort it out... (edit: done)

nope... looks like there is an issue loading the (wifi) firmware...

(i'll need to double check I haven't missed something)

dmesg-without-boardandfirmware_ath10k-ct_as-y
--
[   11.756587] tun: Universal TUN/TAP device driver, 1.6
[   11.763487] **********************************************************
[   11.764786] * Driver    :NSS GMAC Driver - RTL v(3.72a)
[   11.771263] * Version   :1.0
[   11.776317] * Copyright :Copyright (c) 2013-2018 The Linux Foundation. All rights reserved.
[   11.779507] **********************************************************
[   11.852139] nss_driver - fw of size 536324  bytes copied to load addr: 40000000, nss_id : 0
[   11.852719] nss_driver - Turbo Support 1
[   11.859362] Supported Frequencies - 
[   11.859365] 733Mhz 
[   11.863450] 733Mhz 
[   11.867015] 733Mhz 
[   11.868832] 
[   11.873241] 62196b20: meminfo init succeed
[   11.886733] nss_driver - fw of size 218224  bytes copied to load addr: 40800000, nss_id : 1
[   11.886967] 4b7f8d5f: meminfo init succeed
[   11.894003] debugfs: File 'n2h' in directory 'stats' already present!
[   11.898053] debugfs: File 'qrfs' in directory 'stats' already present!
[   11.904640] debugfs: File 'c2c_tx' in directory 'stats' already present!
[   11.905718] node size 1 # items 2
[   11.911033] debugfs: File 'c2c_rx' in directory 'stats' already present!
[   11.917838] memory: 0 0 (avl 541552640) items 2 active_cores 2
[   11.921121] debugfs: File 'unaligned' in directory 'stats' already present!
[   11.923972] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[   11.927838] 62196b20: nss core 0 booted successfully
[   11.938023] Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
[   11.940601] node size 1 # items 2
[   11.957773] memory: 0 0 (avl 541552640) items 2 active_cores 2
[   11.961059] 4b7f8d5f: nss core 1 booted successfully
[   11.978148] cryptodev: driver 1.11 loaded.
[   11.980604] PPP generic driver version 2.4.2
[   11.981636] NET: Registered protocol family 24
[   11.988802] GACT probability on
[   11.991897] Mirror/redirect action on
[   11.997128] u32 classifier
--
[   12.008729] fuse: init (API version 7.31)
[   12.012066] Loading modules backported from Linux version v5.10.42-0-g65859eca4dff
[   12.012092] Backport generated by backports.git v5.10.42-1-0-gbee5c545
[   12.068662] xt_time: kernel timezone is -0000
[   12.101317] wireguard: WireGuard 1.0.0 loaded. See www.wireguard.com for information.
[   12.101348] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
[   12.122382] ath10k 5.10 driver, optimized for CT firmware, probing pci device: 0x46.
[   12.127165] ath10k_pci 0000:01:00.0: enabling device (0140 -> 0142)
[   12.129900] ath10k_pci 0000:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[   66.048425] ath10k_pci 0000:01:00.0: Failed to find firmware-N.bin (N between 2 and 6) from ath10k/QCA9984/hw1.0:
 -12
[   66.048457] ath10k_pci 0000:01:00.0: could not fetch firmware files (-12)
[   66.058121] ath10k_pci 0000:01:00.0: could not probe fw (-12)
[   66.065096] ath10k 5.10 driver, optimized for CT firmware, probing pci device: 0x46.
[   66.071161] ath10k_pci 0001:01:00.0: enabling device (0140 -> 0142)
[   66.079098] ath10k_pci 0001:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[   66.994782] ath10k_pci 0001:01:00.0: Failed to find firmware-N.bin (N between 2 and 6) from ath10k/QCA9984/hw1.0:
 -12
[   66.994814] ath10k_pci 0001:01:00.0: could not fetch firmware files (-12)
[   67.004433] ath10k_pci 0001:01:00.0: could not probe fw (-12)
[   67.011716] kmodloader: done loading kernel modules from /etc/modules.d/*
[   95.081721] ECM init
[   95.081762] ECM database jhash random seed: 0xa4f1975b
[   95.084002] ECM init complete
[   96.896651] ipq8064-mdio 37000000.mdio eth1: 1000 Mbps Full Duplex
[   98.012662] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready

ok board+firmware were not selected... (selected them again)

but I need to read-up on that thread to see if i'm supposed to extract some NSS specific blobs from oem sdk or device...

might be ok... no idea...

[  141.269112] wlan0: Created a NSS virtual interface
[  134.791685] wlan1: Created a NSS virtual interface

root@synology-001132 /41# iwinfo wlan0 assoclist | grep TX
	TX: 130.0 MBit/s, VHT-MCS 1, 80MHz, VHT-NSS 2        15 Pkts.
	TX: 150.0 MBit/s, MCS 7, 40MHz                 42467 Pkts.
	TX: 585.1 MBit/s, VHT-MCS 6, 80MHz, VHT-NSS 2        95 Pkts.
	TX: 866.7 MBit/s, VHT-MCS 9, 80MHz, VHT-NSS 2       163 Pkts.
	TX: 433.3 MBit/s, VHT-MCS 9, 80MHz, VHT-NSS 1       870 Pkts.

#or-not

root@synology-001132 /41# cat /sys/kernel/debug/qca-nss-drv/stats/wifi | grep _PACKETS
RX_PACKETS = 0
TX_PACKETS = 0
RX_PACKETS = 0
TX_PACKETS = 0
RX_PACKETS = 0
TX_PACKETS = 0

Seems good now (it boots).

weird looking Luci :stuck_out_tongue: I'll test the wireless again

Edit: same performance using iperf, 5ghz 95mbit/s while 2.4ghz reaches 190 mbit/s using OOB config

1 Like

I've done test from windows laptop using the NSS image:

  • 239 mbit/s wired
  • 237 mbit/s 2.4ghz
  • 105 mbit/s 5ghz

iPhone 11 confirms these results

I would have expected at least the same ,normally even better, performance from the 5ghz band, why is it half?

1 Like

read the second post in that nss thread...

enable (and start) irqbalance and test again... probably wont fix everything but you want irqbalance running on these

i'm not really that knowledgable when it comes to wifi...

my expectation is that it meets my internet bandwidth (or whatever I might realistically stream to the phone) which is 50Mb/s so I don't do much tweaking or testing beyond some basic 'make XYZ legacy devices play ball by downtuning stuff'

Hmm, isn't irqbalance already on by default?

I did set the governer to performance and tried:

uci set irqbalance.irqbalance.enabled=1; uci set network.globals.packet_steering=1; uci commit

But doesn't make any noticeable difference. 5Ghz signal still looks to significantly underperform. Could be iperf also ofc... but just weird. could be a hardware or driver thing.

1 Like

not that I think it's the issue here... but worth the note...

i've been sloppy in the past reconnecting the antennae 's to the right sockets...

Euh, good point though. They're all identical, could I have swapped the 2.4ghz with the 5ghz antenna's perhaps? How to know the difference? :smiley:

They are all correctly in tho :stuck_out_tongue:

Edit: it was my mistake, in short it was a mixup of ap names and a 'channel width' difference between the two. When setting them to the same channel width I have the same speed. Ofc the 5ghz at 80 width does significantly better than the 2.4ghz 40 width.

And I seem to really like the NSS build so far. If it proves stable it would be awesome to use it on this device as well (as long as it comes with an update once and a while)

Edit2 : unrelated question to this image, what is the easiest way to import my dhcp static leases from a file? I really have a lot in my network due to IOT devices and would hate to re-enter them each time I switch build or setup :slight_smile: + i'm a configuration through code kinda guy

Edit3: nvm, I found it in /etc/config/dhcp I can concat to that file

1 Like

Issue1:
While setting VLAN's I've discovered that the LAN ports are reversed with whats on the switch.

device => OpenWRT
LAN 1 => LAN 4
LAN 2 => LAN 3
LAN 3 => LAN 2
LAN 4 => LAN 1

Issue 2:

[ 1387.235934] ipq8064-mdio 37000000.mdio eth0: 1000 Mbps Full Duplex
[ 1387.239928] device eth0 entered promiscuous mode
[ 1402.486364] device eth0 left promiscuous mode
[ 1402.815636] ipq8064-mdio 37000000.mdio eth0: 1000 Mbps Full Duplex
[ 1402.820920] device eth0 entered promiscuous mode

My log is full with this every 10-15s seconds.... What's happening?

1 Like

issue 1 is my bad... i've been working with the pi alot lately and lan is eth0...

I changed the setup yesterday from eth1>eth0 because I was alarmed when I saw it...
(edit: nope that was just the led(net activity)... will test this some more)
(edit: ooo i remember that easy fix... musnt have pulled that one across from the last buildroot patchset)

issue 2 could be related to packages i've added or nss something...

suggest testing on non-nss build to see if it's present there...
(note: i haven't seen this ~could be something local to you~ but i'm not using the wan port)
(and i'll double check the dts + test my wan port)