Right now the status of the NSS firmware would be like this:
NSS 11.4: working properly
NSS 12.1: working correctly, except Mesh (stats and inactivity time is okay?) @anom3
NSS 12.2: working correctly, except Mesh (stats and inactivity is fine)
NSS 12.5: KO
Just an FYI, Qualcomm's sources for ath11k list 11.4 as being the last "supported" version with NSS for IPQ807x. I had a conversation with @BrainSlayer about this confirming that it is the case.
This also explains why 11.4 is the only FW that seems to be the most feature filled of all the NSS fw available. It's also the one that has been most stable. I would advise everyone stick with 11.4 as to avoid a lot of these issues that seem to really only be WiFi related.
It should also cut down on the need for you having to build two separate flavors for each device.
I've compiled a build with NSS version 11.4 and Ath11k FW 2.12 (still this is the bloated build with lots of unnecessary NSS modules) and flashed it to my QNAP keeping the settings.
It looks like the Inactive time isn't OK.
'iw' 'dev' 'phy0-ap0' 'station' 'dump' | 'grep' 'inactive'
inactive time: 566360 ms
inactive time: 5680430 ms
inactive time: 2324200 ms
Before that I had a build with older Ath11k 2.9 FW and NSS 12.5 and it looked to me that Inactive time was reset from time to time.
Probably I will have to start with just the basic NSS .config file.
Edit - I've just tried a build with NSS version 12.2 and Ath11k FW 2.12 (still this is the bloated build with lots of unnecessary NSS modules) and flashed it to my QNAP keeping the settings.
With this combination Inactive Time really seems OK. I still have a 80 MHz cap on RX chain though. I will test it for some more days.
Currently I cannot test mesh nor WDS.
These inconsistencies are really irritating but your efforts are simply amazing.
Thanks guys!
I have updated my build system to use the GitHub API instead of relying on third-party actions that may break in the future. Excuse the spam that may have happened during the process.
You can ignore it. This happens when client changes between interfaces (2G/5G). It's specific to NSS managing wifi. Nothing critical and more of a race condition while clients transition. A lot of Qualcomm's NSS patches have overly verbose log messages. I've moved most of them to debug level vs. warning.
Just so we are on the same page - here's what I'm seeing now. It's way more frequent now, and it does not not look like clients are switching b/w interfaces. But looking at the code it does not look like anything important.
It seems so, at least in my case.
I had to try all of this myself (as you suggested) and I shared my experience so others may benefit too.
Twelve hours later running NSS 12.2 + Ath11k 2.12 - the Inactive Time is OK.
But I'm just thinking how important actually "Inactive Time" is for smaller home WLANs with 5-10 clients. Probably it is much more important when there are many WLAN clients (many IoT clients). Of course the best case would be if it just works properly out of the box and it doesn't need any tinkering with the settings. But I think even it was so, most of us here are not that kind of people - we simply need to explore and probe different settings to fine tune the "signal" a bit more.
I have it set at 86400 sec as @qosmio has suggested a few months ago and I haven't had any observable issues with my WLAN anyway (excluding 80 MHz RX Rate cap I have with ath11k 2.12).
And I don't use mesh nor WDS, to be noticed.