restore required Makefile option NSS_DRV_IPV6_ENABLE
fixes the following:
../qca-nss-drv-2024-01-04-89cc01b5/nss_rps.c:289:24: error: 'nss_rps_ipv4_hash_bitmap_cfg' defined but not used [-Werror=unused-function]
289 | static nss_tx_status_t nss_rps_ipv4_hash_bitmap_cfg(struct nss_ctx_instance *nss_ctx, int hash_bitmap)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Similar to how memory profile is assignable for ath11k, introduce a
config option to set NSS memory profile. Default was always set to
512MB in upstream for ipq807x even though the platform is available in
256MB/512MB/1GB.
This option primarily limits the default number of offloaded
connections, and for low memory profile, empty buffer pool size
Default number of connections for each IPv4 and IPv6
* NSS_MEM_PROFILE_HIGH 4096
* NSS_MEM_PROFILE_MEDIUM 2048
* NSS_MEM_PROFILE_LOW 512
MAX Connection shared between IPv4 and IPv6
* NSS_MEM_PROFILE_HIGH 8192
* NSS_MEM_PROFILE_MEDIUM 4096
* NSS_MEM_PROFILE_LOW 1024
Everytime a virtual interface is created/destroyed, nss driver
tries to create a debugfs entry, without checking if it exists.
Prevent creation if it already exists. This will also prevent the
annoying kernel warning.
'virt_if' in directory 'stats' already present!
The option for wifi offload is `NSS_DRV_WIFIOFFLOAD_ENABLE` but the
package Makefile was showing it as `NSS_DRV_WIFI_ENABLE` but then enabling the
flag as `NSS_DRV_WIFI_ENABLE`. Incorrectly assumed `NSS_DRV_WIFI_ENABLE`
was the global option. Reverted the change and updated the option to use
`NSS_DRV_WIFIOFFLOAD_ENABLE`.
2024-01-02 - 89cc01b - Introduce new msg for pn error"
2024-01-02 - 8f31ae5 - Fix greredir stats partial copy issue
If the kernel passes smaller user buffer to copy stats
than required, copy the partial content from local buffer
and in the next call, copy the remaining content.
2023-12-27 - bd89094 - qca-nss-drv: Introduce new msg for pn error
Since NSS IRQs use the same name for each core, the current function
assigns all matching names to the same CPU core. Add function
'set_affinity_last' to specify that only the 'last' matching irq ID be set
to the specified CPU core.
NSS drivers were being built unconditionally for QVPN, LSO_RX, MAPT,
CAPWAP, and UDP_ST when it was not required. Include options to disable
them manually, as well as expose them to be built should any client
in 'qca-nss-clients' require them.
Now that qualcommax exists as a target and dependencies have been updated,
move ipq807x support to subtarget of qualcommax.
Signed-off-by: bitthief <bitthief@protonmail.ch>
Add patch to permit more modularization and disable
additional module not used. PPPOE is disabled by default.
Will be enabled later if PPPOE offload will be reintroduced.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Drop use of dmac_{inv/clean}_range and use generic dma sync api.
This should permit us to compile nss-drv without adding additional
patch to the upstream kernel.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Codeaurora is now in archive-only mode as everything has been moved to the
Gitlab based git.codelinaro.org
So, update all of the source URL-s as well as update to the latest 11.4
commit if there is a newer one.
Refresh patches as well if any have offsets or fuzzes.
Signed-off-by: Robert Marko <robimarko@gmail.com>
There is no need for the mismatched 11.3 FW support on 11.4
SPF drivers, so drop the support.
This reverts commit f806309bbe.
Signed-off-by: Robert Marko <robimarko@gmail.com>
DMA functions used for NSS FW coredump are called
with NULL being passed instead of device pointer.
This will obviously cause a NULL pointer exception
and crash the kernel.
So, fix it by passing proper device structure pointer.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Permit to use mismatched NSS firmware version with higher QSDK version.
As we currently have 11.3 public NSS firmware, set this version by default.
This can be expanded later to support previous NSS version or to use newer
QSDK version if they are still compatible with basic NSS firmware loading
and handling.
Tested feature and working for now are basic ipv4 and ipv6 handling, virt_if
and wifili (wifi offload).
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Add NSS-DRV from QSDK11.4.
NSS-DRV is the core NSS driver providing NSS firmware
loading and communication between NSS cores and
other NSS offloading drivers.
It includes patches to it in order to work under kernel 5.10.
Made for and tested on IPQ807x.
Signed-off-by: Robert Marko <robimarko@gmail.com>