RSSI values are reported in 1/2 dBm steps for spectral HW gen III.
Convert the RSSI values to 1dBm scale.
CRs-Fixed: 2231546
Change-Id: I30962a95ba7a5f759d933e373c2b8708a98712fc
Module param capabilities stored per module per pdev and overall
target dbr ring capabilities allocated and stored during service ready
are not freed during detach.
Fix above mentioned memory leaks through below changes
1. Free module param capabilities allocated per pdev during ring deinit
2. Free DBR ring capabilities allocated during service ready event
as part of target psoc info free.
3. Free DBR entries allocated per event received from target
Change-Id: I93d5126063d3fa0094e15d57a75f03cf63b3c494
CRs-Fixed: 2228428
Spectral module gets the noisefloor value from the meta data
info send by FW through direct dma framework. Copy the noise floor
value to SAMP message.
CRs-Fixed: 2219818
Change-Id: Icbd146875be668cdb99be20264e931040b670d5b
Fix CP_STATS rx_ops registration in wlan_lmac_if.c, by including
dispatcher header and directly referencing public dispatcher tgt
APIs.
Change-Id: Id42aac8d2a7f1311d4319c77db05eadd75ee4aa0
CRs-Fixed: 2228934
Remove inconsistent API for scan start and stop, where pdev_wmi_handle
is derived from psoc_handle at the WMI layer instead of using
the wmi_handle passed from the above layer i.e target_if
Change-Id: If259260e6f8cf77bf68748a8130db4440b88588a
CRs-Fixed: 2203048
Avoid un-initialized pointer access by initializing pointer to NULL
or valid value that is address of another variable.
Change-Id: I0666e7cebf9f39928b6b095fa4f7f017b5b2a837
CRs-Fixed: 2219381
Add support to register cp_stats for lmac Tx Ops and
provide inline APIs to get cp_stats lmac Rx and Tx Ops
structure
CRs-Fixed: 2192386
Change-Id: I33e7e22018a3aa3d3e76836ef9ddf1ead21209ea
On IPQ8074, for report mode 2 only the in-band bins are DMA'ed.
Scatter/gather is used. However, the HW generates all bins, not just
in-band, and reports the number of bins accordingly. The subsystem
arranging for the DMA cannot change this value. The host driver needs
to check if report format is 2, and if so halve the number of bins
reported to get the number actually DMA'ed.
CRs-Fixed: 2218423
Change-Id: Ic0be87422c67110cf3595a4bea71dc872d5b2504
When the Green AP feature is disabled in the Kbuild the following
build issue is observed:
target_if_green_ap.h:59:10: error: 'struct wlan_green_ap_egap_params'
declared inside parameter list [-Werror]
target_if_green_ap.h:59:10: error: its scope is only this definition
or declaration, which is probably not what you want [-Werror]
Fix this by including a forward reference for the struct.
Change-Id: Ia5d867c0ebde17dba0f20c1e97391197ae9dbb77
CRs-Fixed: 2216249
Fix memory allocation during NDP firmware events by allocating
memory before wmi_extract APIs are called.
Change-Id: I3af2f49895a79a45b3add246eeb9025b1df92faa
CRs-Fixed: 2183493
Since vdev_id is globally unique across multiple pdev,
assuming vdev_id 0 to find the first vdev of a pdev wouldn’t work.
Fix this issue by getting the first vdev from the head of vdev
linked list maintained per pdev.
CRs-Fixed: 2211742
Change-Id: I5a7b5436cff363d5470fb600cca54f587a7d683e
This change fixes the null pointer dereference issues
observed when running spectral scan using direct dma
framework with ftm mode.
CRs-Fixed: 2214269
Change-Id: I06514b38b519da7eb972ff713feab97e7d5a9c29
Since, an AP may have any combinations of DA,PO, and FO chips on it,
having support for all chips always is redundant. Therefore, enable the
chip specific code as and when required.
DA:- Direct attach
PO:- Partial offload
FO:- Full offload
WLAN_DFS_DIRECT_ATTACH :- enable/disable DA specific DFS code.
WLAN_DFS_PARTIAL_OFFLOAD :- enable/disable PO specific DFS code.
WLAN_DFS_FULL_OFFLOAD :- enable/disable FO specific DFS code.
Change-Id: I498ac1f8cd1d6423032d7b3b8c233656c5f0bf22
CRs-Fixed: 2199819
GET_WMI_HDL_FROM_PDEV() returns wmi_hdl to the caller of the
func. In some Green AP functions, wmi_hdl is passed directly
to WMI functions without any NULL check that could lead to
NULL pointer dereference.
Add NULL check for wmi_hdl before use in Green AP functions.
Change-Id: Id6222ce30d66b660008c1a4ad1b5020235d5b351
CRs-Fixed: 2196071
Define os_if_spectral_netlink_deinit to close the Spectral socket and
de-register the os_if callbacks
Change-Id: I3d054c2a2d630d4d959861d3620592010d04c09a
CRs-Fixed: 2186113
1. Populate number of capabilities after extracting service ready ext param
2. Deinit ring during pdev destroy only if ring is configured
3. Do not allocate module param if no capability is shared for
the pdev by target
Change-Id: Ie92b7fc882ba8b7755fea150c724459264a0ea79
CRs-Fixed: 2192671
Initializing preferred_hw_mode to WMI_HOST_HW_MODE_MAX and removing
preferred_mode check. This is needed for Napier where preferred_hw_mode
of 0 is a valid configuation which represents single radio mode.
Change-Id: I8998745427427021f219667e03f767c66527d579
CRs-Fixed: 2192227
get_pdev_wmi_handle() can return a NULL pointer in some cases.
Perform a NULL check before using the returned pointer.
target_psoc_get_service_ext_param() can return NULL pointer in
some cases. Perform a NULL check before using the pointer.
The power debug command can take a maximum of WMI_MAX_POWER_DBG_ARGS
arguments. Check for the limit before indexing the array to avoid
illegal access of memory or overflow the array.
Change-Id: I264475e9f86c7a7e78b17b7a1fa025718a7c5af6
CRs-Fixed: 2196063
At some point WLAN_MACADDR_LEN was added to the driver, despite
QDF_MAC_ADDR_SIZE already serving the same purpose. There are cases
where these two macros are implicitly assumed to be the same value.
This is a classic single-source-of-truth violation, and only serves to
confuse developers. Deprecate WLAN_MACADDR_LEN and use
QDF_MAC_ADDR_SIZE instead.
Change-Id: I4e941d5e17d161a5810e693c89b95ae08f83c6b0
CRs-Fixed: 2179728
Currently dfs offload command is sent during event registration
when psoc object is created. Dfs offload command is sent by accessing
pdev object, as pdev object during this time may not be created
or maybe in logically deleted state and sending command may fail.
This failure may cause wifi_dfs_psoc_enable and thereby effecting
other module objects.
To fix this, avoid using pdev objects during psoc enable, and send
pdev object specific command when pdev is created.
Change-Id: Ia10d493267259d0fbd918453e532b4f244029163
CRs-Fixed: 2179845
FW provides a list of MAC addresses in ready event,
one per radio. Change event handler to extract the
list. Legacy HW will use the single MAC address
function.
Change-Id: If0a9db3b7dab81bbeed387d2b7417100021e912d
Process spectral summary and search fft report for
gen3 spectral HW. Add the frame work to register to
Direct dma module.
CRs-Fixed: 2184019
Change-Id: I4e2869d9c2887767d58685533265cc93c908b697
-Initialize the default Configuration as
gen2 for spectral module on MCL.
-Add support to general netlink socket.
Change-Id: Iab06f66d18c4791f0ff5483781634df2a7268ddb
CRs-Fixed: 2183870
Spectral Netlink related APIs are currently present in
target_if layer, move them to os_if layer.
Change-Id: I86a5495f6ec8aa85a2e9639902503a522b023f8e
CRs-Fixed: 2151548
Current Spectral module uses qdf_print. To improve the control over
logging, use module level logging
CRs-Fixed: 2165341
Change-Id: I205991347453c4dcc424ba1958e309b7c5fb71a0
Expose the target_if ap's for the set/get different values in the
target_psoc_info.
Change-Id: I7e84482faa46606b39bb64b82fe541b96f0eccce
CRs-Fixed: 2184015
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.
Change-Id: I8fe9079c6ba6b23cd5f1d98a7d1b333fde31f19b
CRs-Fixed: 2178143
pass psoc/pdev object as ctrl pointers to instead of legacy objects.
It introduces new APIs to get feature pointers of psoc/pdev.
DP attach API param modified to pass ctrl psoc (psoc object)
Change-Id: I3d83f28c3e72e5ee984a4220b9d5cf3c4522b501
CRs-Fixed: 2177109