Build for Netgear R7800

To add to to your explanation: with ath10k and later (pretty much all modern wifi drivers), the wifi driver is actually two components:

  • Wifi firmware blob, closed source
  • wifi driver, open source

The earlier ath9k was 100% open-source, which made it ideal for OpenWrt, but all current drivers (ath10k, ath11k, mwlwifi, mt76xx, etc.) contain also a closed-source "firmware" part.

The sad part is that we can find and fix bugs in the open driver part, but the closed source firmware blob is a black box.

The ath10k firmware blob is closed source, but the ath10k-ct author has its source under NDA, and has modified a tailored version of it the -ct version of the firmware.

2 Likes

Thank you for correcting me, I was under the impression this was not the case, but glad to know.

Thanks for this detailed addition :+1:

Test-RRDtool172-R7800-r17637-fa13dd658f-20210930

I have lately tested a newer version for RRDtool, the database engine for collectd and LuCI statistics. It increases the firmware image size by some 2.5 MBytes due to glib2 and font utilities (pango, cairo, etc...)

The graphs are a bit more polished, especially the year-long graph. The difference is visible to the year 2003/2005 version (that we still use due to its really small size).

Not sure yet if I would try getting the needed packages to the main feeds repo, but in any case, I uploaded a build (without rebuild source)

Note that the musl 64bit time transition forces some changes/fixes to the old rrdtool in any case. See discussion in https://github.com/openwrt/packages/pull/16703

I'm unable to make the build due to errors even going through the instructions, though I was a bit confused about the /etc part to chmod scripts as there is no /etc folder in the directory, unless you mean the folder on the system?

I'm building this on my Ubuntu 20.04.3 LTS vm.

Below, I listed the steps I took and their results.

Base directory with required files and chmod

zetix@pvm:~/Openwrt$ ls
drwxr-xr-x  4 zetix zetix  4096 Sep 30 18:12 .
drwxr-xr-x  9 zetix zetix  4096 Sep 30 18:07 ..
-rw-rw-r--  1 zetix zetix  4206 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-luci.patch
-rw-rw-r--  1 zetix zetix 26224 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-main.patch
-rwxrwxr-x  1 zetix zetix  2227 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-newBuildroot.sh
-rw-rw-r--  1 zetix zetix  1570 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-packages.patch

Verify FILESTAMP

zetix@pvm:~/Openwrt$ cat R7800-owrt2102-r16295-3a051a234a-20210924-2219-newBuildroot.sh | grep R7800-owrt2102-r16295-3a051a234a-20210924-2219
FILESTAMP=R7800-owrt2102-r16295-3a051a234a-20210924-2219

Files in base directory after running newBuildroot.sh

zetix@pvm:~/Openwrt$ ls -la
total 60
drwxr-xr-x  4 zetix zetix  4096 Sep 30 18:12 .
drwxr-xr-x  9 zetix zetix  4096 Sep 30 18:07 ..
drwxr-xr-x  2 zetix zetix  4096 Sep 30 18:12 dl
drwxr-xr-x 17 zetix zetix  4096 Sep 30 18:14 owrt2102
-rw-rw-r--  1 zetix zetix  4206 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-luci.patch
-rw-rw-r--  1 zetix zetix 26224 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-main.patch
-rwxrwxr-x  1 zetix zetix  2227 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-newBuildroot.sh
-rw-rw-r--  1 zetix zetix  1570 Sep 24 23:20 R7800-owrt2102-r16295-3a051a234a-20210924-2219-packages.patch
zetix@pvm:~/Openwrt/owrt2102$ ls -la
total 124
drwxr-xr-x 17 zetix zetix  4096 Sep 30 18:14 .
drwxr-xr-x  4 zetix zetix  4096 Sep 30 18:12 ..
-rw-r--r--  1 zetix zetix   106 Sep 30 18:13 BSDmakefile
-rw-r--r--  1 zetix zetix  3897 Sep 30 18:14 .config
drwxr-xr-x  2 zetix zetix  4096 Sep 30 18:13 config
-rw-r--r--  1 zetix zetix   502 Sep 30 18:13 Config.in
-rw-r--r--  1 zetix zetix  3897 Sep 30 18:13 .config.init
-rw-r--r--  1 zetix zetix   284 Sep 30 18:13 COPYING
lrwxrwxrwx  1 zetix zetix     5 Sep 30 18:13 dl -> ../dl
drwxr-xr-x  8 zetix zetix  4096 Sep 30 18:14 feeds
-rw-r--r--  1 zetix zetix   334 Sep 30 18:13 feeds.conf.default
drwxr-xr-x  3 zetix zetix  4096 Sep 30 18:13 files
drwxr-xr-x  8 zetix zetix  4096 Sep 30 18:14 .git
-rw-r--r--  1 zetix zetix     8 Sep 30 18:13 .gitattributes
drwxr-xr-x  2 zetix zetix  4096 Sep 30 18:13 .github
-rw-r--r--  1 zetix zetix   270 Sep 30 18:13 .gitignore
drwxr-xr-x  2 zetix zetix  4096 Sep 30 18:13 hnscripts
drwxr-xr-x  3 zetix zetix  4096 Sep 30 18:13 include
drwxr-xr-x  2 zetix zetix  4096 Sep 30 18:13 LICENSES
-rw-r--r--  1 zetix zetix  3831 Sep 30 18:13 Makefile
drwxr-xr-x 12 zetix zetix  4096 Sep 30 18:14 package
-rw-r--r--  1 zetix zetix  3449 Sep 30 18:13 README.md
-rw-r--r--  1 zetix zetix 14603 Sep 30 18:13 rules.mk
drwxr-xr-x  4 zetix zetix  4096 Sep 30 18:13 scripts
drwxr-xr-x  3 zetix zetix  4096 Sep 30 18:13 staging_dir
drwxr-xr-x  6 zetix zetix  4096 Sep 30 18:13 target
drwxr-xr-x  3 zetix zetix  4096 Sep 30 18:14 tmp
drwxr-xr-x 11 zetix zetix  4096 Sep 30 18:13 toolchain
drwxr-xr-x 60 zetix zetix  4096 Sep 30 18:13 tools

chmod +x functions.sh in scripts folder

zetix@pvm:~/Openwrt/owrt2102/scripts$ ls -la
total 792
drwxr-xr-x  4 zetix zetix   4096 Sep 30 18:13 .
drwxr-xr-x 17 zetix zetix   4096 Sep 30 18:14 ..
-rwxr-xr-x  1 zetix zetix   2021 Sep 30 18:13 arm-magic.sh
-rwxr-xr-x  1 zetix zetix   3847 Sep 30 18:13 brcmImage.pl
-rwxr-xr-x  1 zetix zetix   4467 Sep 30 18:13 bundle-libraries.sh
-rwxr-xr-x  1 zetix zetix   1318 Sep 30 18:13 cfe-bin-header.py
-rwxr-xr-x  1 zetix zetix   5514 Sep 30 18:13 cfe-partition-tag.py
-rwxr-xr-x  1 zetix zetix   5483 Sep 30 18:13 cfe-wfi-tag.py
-rwxr-xr-x  1 zetix zetix 207508 Sep 30 18:13 checkpatch.pl
-rwxr-xr-x  1 zetix zetix   3507 Sep 30 18:13 cleanfile
-rwxr-xr-x  1 zetix zetix    453 Sep 30 18:13 clean-package.sh
-rwxr-xr-x  1 zetix zetix   5148 Sep 30 18:13 cleanpatch
-rwxr-xr-x  1 zetix zetix   2202 Sep 30 18:13 combined-ext-image.sh
-rwxr-xr-x  1 zetix zetix   1022 Sep 30 18:13 combined-image.sh
drwxr-xr-x  3 zetix zetix   4096 Sep 30 18:13 config
-rwxr-xr-x  1 zetix zetix  44150 Sep 30 18:13 config.guess
-rwxr-xr-x  1 zetix zetix  18343 Sep 30 18:13 config.rpath
-rwxr-xr-x  1 zetix zetix  31430 Sep 30 18:13 config.sub
-rw-r--r--  1 zetix zetix   1009 Sep 30 18:13 const_structs.checkpatch
-rwxr-xr-x  1 zetix zetix   5549 Sep 30 18:13 deptest.sh
-rwxr-xr-x  1 zetix zetix    999 Sep 30 18:13 diffconfig.sh
-rwxr-xr-x  1 zetix zetix   6094 Sep 30 18:13 dl_cleanup.py
-rwxr-xr-x  1 zetix zetix  14639 Sep 30 18:13 dl_github_archive.py
-rwxr-xr-x  1 zetix zetix   8756 Sep 30 18:13 download.pl
-rwxr-xr-x  1 zetix zetix   2319 Sep 30 18:13 dump-target-info.pl
-rwxr-xr-x  1 zetix zetix   4848 Sep 30 18:13 env
-rwxr-xr-x  1 zetix zetix  14633 Sep 30 18:13 ext-toolchain.sh
-rwxr-xr-x  1 zetix zetix  22300 Sep 30 18:13 feeds
-rwxr-xr-x  1 zetix zetix   2807 Sep 30 18:13 fixup-makefile.pl
drwxr-xr-x  2 zetix zetix   4096 Sep 30 18:13 flashing
-rwxr-xr-x  1 zetix zetix    931 Sep 30 18:13 functions.sh
-rwxr-xr-x  1 zetix zetix    927 Sep 30 18:13 gen-dependencies.sh
-rwxr-xr-x  1 zetix zetix   1274 Sep 30 18:13 gen_image_generic.sh
-rwxr-xr-x  1 zetix zetix    757 Sep 30 18:13 get_source_date_epoch.sh
-rwxr-xr-x  1 zetix zetix   1487 Sep 30 18:13 getver.sh
-rwxr-xr-x  1 zetix zetix   4484 Sep 30 18:13 ipkg-build
-rwxr-xr-x  1 zetix zetix    772 Sep 30 18:13 ipkg-make-index.sh
-rwxr-xr-x  1 zetix zetix    373 Sep 30 18:13 ipkg-remove
-rwxr-xr-x  1 zetix zetix   1860 Sep 30 18:13 json_add_image_info.py
-rwxr-xr-x  1 zetix zetix   1979 Sep 30 18:13 json_overview_image_info.py
-rwxr-xr-x  1 zetix zetix   3853 Sep 30 18:13 kconfig.pl
-rwxr-xr-x  1 zetix zetix   1881 Sep 30 18:13 linksys-image.sh
-rwxr-xr-x  1 zetix zetix    741 Sep 30 18:13 make-ipkg-dir.sh
-rwxr-xr-x  1 zetix zetix     25 Sep 30 18:13 md5sum
-rw-r--r--  1 zetix zetix   9038 Sep 30 18:13 metadata.pm
-rw-r--r--  1 zetix zetix  21869 Sep 30 18:13 mkhash.c
-rwxr-xr-x  1 zetix zetix   1440 Sep 30 18:13 mkits-qsdk-ipq-image.sh
-rwxr-xr-x  1 zetix zetix   3253 Sep 30 18:13 mkits.sh
-rwxr-xr-x  1 zetix zetix   2401 Sep 30 18:13 om-fwupgradecfg-gen.sh
-rwxr-xr-x  1 zetix zetix  15660 Sep 30 18:13 package-metadata.pl
-rwxr-xr-x  1 zetix zetix   2444 Sep 30 18:13 pad_image
-rwxr-xr-x  1 zetix zetix   1387 Sep 30 18:13 patch-kernel.sh
-rwxr-xr-x  1 zetix zetix   1782 Sep 30 18:13 patch-specs.sh
-rwxr-xr-x  1 zetix zetix    171 Sep 30 18:13 portable_date.sh
-rwxr-xr-x  1 zetix zetix   9017 Sep 30 18:13 qemustart
-rwxr-xr-x  1 zetix zetix   3432 Sep 30 18:13 redboot-script.pl
-rwxr-xr-x  1 zetix zetix    403 Sep 30 18:13 relink-lib.sh
-rwxr-xr-x  1 zetix zetix   1890 Sep 30 18:13 remote-gdb
-rwxr-xr-x  1 zetix zetix   1192 Sep 30 18:13 rstrip.sh
-rwxr-xr-x  1 zetix zetix   1720 Sep 30 18:13 sercomm-crypto.py
-rwxr-xr-x  1 zetix zetix   1555 Sep 30 18:13 sercomm-partition-tag.py
-rwxr-xr-x  1 zetix zetix    994 Sep 30 18:13 sercomm-payload.py
-rwxr-xr-x  1 zetix zetix    937 Sep 30 18:13 sign_images.sh
-rwxr-xr-x  1 zetix zetix   4300 Sep 30 18:13 size_compare.sh
-rwxr-xr-x  1 zetix zetix  41514 Sep 30 18:13 slugimage.pl
-rw-r--r--  1 zetix zetix  30828 Sep 30 18:13 spelling.txt
-rwxr-xr-x  1 zetix zetix   1324 Sep 30 18:13 srecimage.pl
-rwxr-xr-x  1 zetix zetix    923 Sep 30 18:13 strip-kmod.sh
-rwxr-xr-x  1 zetix zetix    810 Sep 30 18:13 symlink-tree.sh
-rwxr-xr-x  1 zetix zetix   1482 Sep 30 18:13 sysupgrade-tar.sh
-rwxr-xr-x  1 zetix zetix  11680 Sep 30 18:13 target-metadata.pl
-rwxr-xr-x  1 zetix zetix   1152 Sep 30 18:13 time.pl
-rwxr-xr-x  1 zetix zetix   1371 Sep 30 18:13 timestamp.pl
-rwxr-xr-x  1 zetix zetix   2644 Sep 30 18:13 ubinize-image.sh

No additional files to copy as I'm only building it for old firmware
Ran cp .config.init .config and modified .config for mainline ath10k-firmware

zetix@pvm:~/Openwrt/owrt2102$ nano .config
  ## # Mainline ath10k wifi firmware and driver instead of -ct
  CONFIG_PACKAGE_ath10k-firmware-qca9984=y
  ## # CONFIG_PACKAGE_ath10k-firmware-qca9984-ct is not set
  CONFIG_PACKAGE_kmod-ath10k=y
  ## # CONFIG_PACKAGE_kmod-ath10k-ct is not set

Make, full log at: https://pastebin.com/TNcj7tWQ

zetix@pvm:~/Openwrt/owrt2102$ ./hnscripts/updateNmake.sh
---Clipped---
make[2]: Entering directory '/home/zetix/Openwrt/owrt2102'
make[2]: *** [package/Makefile:69: package/install] Error 255
make[1]: *** [package/Makefile:109: /home/zetix/Openwrt/owrt2102/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/stamp/.package_install] Error 2
make: *** [/home/zetix/Openwrt/owrt2102/include/toplevel.mk:230: world] Error 2

@D43m0n, thanks for the explanation!

Hi @hnyman ,

I patched your above pull request on top of current master and can see that both Makefile is patched and 100-fix-musl122-time_t-64bit.patch is created.

gram@HIMA-Debian:~/R7800/openwrt/feeds/packages/utils/rrdtool1$ ls -la patches/
total 40
drwxr-xr-x 2 gram gram 4096 Oct  1 22:07 .
drwxr-xr-x 3 gram gram 4096 Oct  1 22:07 ..
-rw-r--r-- 1 gram gram  531 Sep  9 20:20 001-no_ordering_cd_joke.patch
-rw-r--r-- 1 gram gram  719 Sep  9 20:20 002-no_timezone.patch
-rw-r--r-- 1 gram gram  280 Sep  9 20:20 020-x86-float-cast.patch
-rw-r--r-- 1 gram gram  324 Sep  9 20:20 030-pod2man-stderr.patch
-rw-r--r-- 1 gram gram 1000 Sep  9 20:20 040-no-e-notation-on-log-display.patch
-rw-r--r-- 1 gram gram  349 Sep  9 20:20 050-no-doc.patch
-rw-r--r-- 1 gram gram 6628 Oct  1 22:07 100-fix-musl122-time_t-64bit.patch

After that compilation goes ok and box is booting fine... but still the stats doesn't work and I have below type of logs filling the syslog (connection to NTP server & time is ok);

Fri Oct 1 22:43:51 2021 daemon.err collectd[1964]: rrdtool plugin: rrd_update_r failed: /mnt/rrd/R7800/iwinfo-wlan0/stations.rrd: illegal attempt to update using time 1633099431 when last update time is 5641689086823963107 (minimum one second step)

I have stats collected to a mounted usb drive under /mnt/rrd and prefer to keep the history.

Is my below patching process ok or am I still missing something ?

  1. In openwrt/feeds/packages/ directory to give;
    wget https://github.com/openwrt/packages/pull/16703/commits/9660f2648f16c9e413bbc6a1a4c5af388a8bb180.patch
  2. Patch with;
    patch -p 1 -i 9660f2648f16c9e413bbc6a1a4c5af388a8bb180.patch

Your process is fine, but the old database (with 32bit timestamps) is incompatible with the new 64bit time.

I converted my own historical database to 64bit by exporting the data with rrdtool to XML in the old 32bit firmware...
... and then after copying the XML files to the new firmware, use rrdtool in the new firmware to import it from XML to 64bit rrd.

Google for "rrd convert 32bit to 64bit". I found a handy python script that converted all dozens of individual files at one go.

https://www.google.com/search?q=rrdtool+convert+32bit+64bit

But the process requires to use the old firmware for export, and then a new one for import.

1 Like

Thanks, got it. I'll try and let's see how it goes.

Moved to the newest build (from 19 to 21) and speeds have dropped from 4-500 megabits/s to 2-250.

Anyone else experience similar?

Can we use sysupgrade to downgrade back to 19?

For those who are building by themselves based on @hnyman 's scripts DSA test build (at least that one) since a few days has problems with Ethernet driver. Here is a proper list of interfaces while running hnyman's DSA build from September 29th:

Summary
ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1502 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f3 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1502 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
4: lan4@eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue master br-lan state LOWERLAYERDOWN mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff permaddr 8c:3b:ad:10:54:f3
5: lan3@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
6: lan2@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff permaddr 8c:3b:ad:10:54:f3
7: lan1@eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue master br-lan state LOWERLAYERDOWN mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
8: wan@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f3 brd ff:ff:ff:ff:ff:ff
9: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
10: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
11: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
12: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1450 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
20: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
21: br-lan.1@br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
22: br-lan.3@br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
23: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP mode DEFAULT group default qlen 1000
    link/ether 8c:3b:ad:10:54:f4 brd ff:ff:ff:ff:ff:ff

And here is the same list with newer build:

Summary
ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST> mtu 1502 qdisc noop state DOWN qlen 1000
    link/ether 8c:3b:ad:10:54:f3 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST> mtu 1502 qdisc noop state DOWN qlen 1000
    link/ether 8c:3b:ad:10:54:f2 brd ff:ff:ff:ff:ff:ff
4: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN qlen 1000
    link/gre 0.0.0.0 brd 0.0.0.0
5: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
6: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1450 qdisc noop state DOWN qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
9: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 8c:3b:ad:10:54:f4 brd ff:ff:ff:ff:ff:ff
10: br-lan.1@br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 8c:3b:ad:10:54:f4 brd ff:ff:ff:ff:ff:ff
11: br-lan.3@br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 8c:3b:ad:10:54:f4 brd ff:ff:ff:ff:ff:ff
17: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP qlen 1000
    link/ether 8c:3b:ad:10:54:f4 brd ff:ff:ff:ff:ff:ff

Brief update on stats patching.

, all good and historical stats retained. Thanks @hnyman

You can downgrade to 19 but some settings may be lost. B/G compatibility mode may get reenabled in WiFi for instance.

You can also try upgrading to another 21 or master branch which is for NSS hardware acceleration, you're unlikely to lose settings there.

In particular, try R7800-20210912-MasterNSS-ath10k build while it is still available. Make sure to NOT use SQM in the UI (it does not support it), and make sure to DISABLE SOFTWARE ACCELERATION in that build (that's what creator says).

I'm running that particular build right now and it seems more stable and faster than previous ones, though admittedly it's not been a whole week.

master-r17681-297cb8c147-20211005

ath10k-ct seems to have finally fixed DFS with 80/160 MHz wide bands.
There is a PR for OpenWrt that is still uncommitted, but I have imported it into this build.

2 Likes

How is the stability with 5.10 ? Does anyone notice any regression ?

No regression as such, I've been on v5.10 (nbg6817, g10) for the last ~half year - but uptimes rarely exceed two weeks (sometimes it crashes earlier), but that already affected v4.19 and v5.4.

1 Like

I have not noticed anything strange with 5.10 in my R7800.

1 Like

i honestly wonder if the problem is related to lack of nss firmware...
example i'm testing a device from ages with a special experimental image of 5.10 + nss accelleration and a special scaling driver that scale a clk using the same way qcom do... this clk is also related to the eth clk (it's shared) wonder if it's caused by that.... example now i'm at 5d of uptime but i remember having 25 days of uptime with this image... also it was overclocked just to add stuff to it and it was stable for some reason... can't really understand.

The weird part is that there is no real reason for this either. I've kept logread over ssh running for a while (rather than real netconsole), but the router just silently rebooted without any error message making it over logread/ ssh. The timing is also variable, most of the time around 13-15 days, but sometimes also after 1-2 days of uptime, I can't really point my fingers anywhere specific.

Case in point, I've let the 'new' (second hand) running (successfully/ continuously) for a month (behind my nbg6817, double-NAT, mostly serving wireless only - so not a whole lot to do) before (sys)upgrading it again, yesterday it rebooted after around 15 hours uptime - so far it's keeping up (26h).

Not sure if there’re massive differences between 5.4 and 5.10, but my R7800 running 21.02 + NSS + back ported L2 freq scaling driver from master has been up more than 53 days now.

From what I can see, the difference between builds with and without NSS enabled are the initialization of additional clocks and the NSS cores. Maybe without those initialized it may be causing the Krait cores to stall and watchdog timer taking over to reboot?

actually i notice we are completely missing the watchdog node entry and the extra clk... wonder if that's the cause...

2 Likes

Did the regular ath10k driver (that you supply separately) have this issue?