Commit Graph

7 Commits

Author SHA1 Message Date
Qosmio
f47aab0ae0 qca-nss-drv: better logging + handle more IRQs + sane defaults
1.) Rather than modify upstream `smp_affinity` script, move changes into
    this init script.

    Primarily: "xhci-hcd:usb1", "ppdu-end-interrupts-mac1", "ppdu-end-interrupts-mac2"

2.) Move logging into separate function, and better account for NSS core
    specific output.

3.) Set the defaults for `enable_rps` and `enable_log` to true ('1').

4.) Change startup to sequence to `94` [after `smp_affinity` (93)]

Signed-off-by: Qosmio <datapronix@protonmail.com>
2024-04-08 18:36:03 -04:00
Qosmio
41f1217c5e qca-nss-drv: Rework smp_affinity + Add nss_stats
1.) Moved `set_affinity` function outside of `enable_rps`
2.) Added 2 new functions `bitmask_to_cpus` and `cpus_to_bitmask`
    a.) bitmask_to_cpus - Takes a bitmask of CPUs and returns a
        list of CPU numbers. (i.e. `bitmask_to_cpus "f"` -> 0,1,2,3)
    b.) cpus_to_bitmask - Takes a comma/space or range list of CPUs and returns
        a bitmask. (i.e. `cpus_to_bitmask "2,3"` -> c)
3.) Changed logic of `set_affinity` to now use physical CPUs rather than
    knowing the bitmask. This should make it more straight forward when
    testing changes
4.) Added an UCI option `enable_log` to enable/disable logging output to
   `logger`. Default is `1` (on)
5.) Removed unused UCI options `nss_firmware *`
6.) Changed the way UCI options are retrieved to account for missing
    options.
7.) Moved '/lib/debug/qca-nss-drv' to '/usr/bin/nss_stats' so it's in
    $PATH and has a more intuitive name
2024-04-06 19:59:50 -04:00
anonymous-one
29f9ba9648
Better handling of nss_queue + etc affinity
Using the previous version, not all nss related interrupts were being balanced across the available CPU cores.

This makes sure they are as well as moving a bit more off cpu0.
2024-04-06 10:32:14 +02:00
Qosmio
911ca7392c qca-nss-drv: show cpu_load_ubi in output 2024-03-15 19:43:57 -04:00
Qosmio
79597046e6 qca-nss-drv: Rework debug script to be more helpful
This version will print all non-zero stats, and highlight certain
keywords to better aide debugging.
2024-02-28 22:55:45 -05:00
Qosmio
dae6cba360 qca-nss-drv: Remove invalid sysctl settings
These values are now module parameters.
2024-02-28 22:54:05 -05:00
Qosmio
8d54d726c2 Move non-upstream NSS packages back into repo
To keep fork as closely synced with upstream, move NSS packages back
into repository. Not sure why they were moved out from my original fork.
* nss-firmware
* qca-nss-crypto
* qca-nss-cfi

Removed the following:
* mhz (already available in packages repo)
* qrtr (unecessary, and has been broken for years)

Also moved packages out of `qca` and back into root directory.
2024-02-19 01:35:04 -05:00