The list of SW descriptors that we create from the HW descriptors
in DP Tx completion path is corrupted in intra-bss path. This is causing a
crash when corrupted descriptor is accessed.
The cause of corruption seems to be due to incorrect rings being accessed.
Use cpu index to fetch tx. ring IDs.
Change-Id: I5342b7c4e24df983900fde79f36df8395bf628cb
CRs-Fixed: 3223420
When EasyMesh feature is enable at compile time but not at runtime,
then the peer authorization is not proper.
Fix is to check for peer authentication irrespective of feature enable
at compile or runtime.
CRs-Fixed: 3252225
Change-Id: I5790e054c838114318f6e819a164b0a8c7b94c83
The parameter of callback of kernel struct hrtimer is itself, not
qdf_hrtimer_data_t. CFI failure happens if the function pointers
does not have the same type as the function that's called.
Add a new API __qdf_hrtimer_cb and assign it to hrtimer->function.
Change-Id: I9cf753272dd37635e82defac6cf7258c7a70425d
CRs-Fixed: 3245385
Add logic to set back port flag based on Linux kernel version
for multi AKM connect support.
Change-Id: Ia2365afc678edf025f63d4d3c0fc963c97193eb8
CRs-Fixed: 3246135
For QCN9224 splitphy mode do not rely on rx_desc_pool_id
to get to the VDEV as desc pool is common across PDEVs
Change-Id: I2552878bd56696a8df463b35e2b273ed4e591050
CRs-Fixed: 3220690
Use hal_debug_rl to limit the PN error print when lots PN
failure packets received, to avoid RX process slow down.
Change-Id: If3b008343d0cc273e4c5b718accd620c4deefeb5
CRs-Fixed: 3248037
Support for addition of AST entries for MLO peer event.
Deletion is handled implicitly
Change-Id: Id1caa85370fac847d18dc3bcbecad726bf927d0f
CRs-Fixed: 3251691
Currently, we are hardcoding the detector ID to mode table for different
chipsets. Starting QCN9224, the target sends information regarding the
detectors participating in that Spectral session in the FW_PARAMS event.
Use that to update the Detector ID to mode table.
Change-Id: Ic09358e0c3b9ac0166b39f5ce445a83697146d4a
CRs-Fixed: 3253076
Currently, the Spectral detector list building logic assumes that only
5 GHz or 6 GHz participates in SBS modes. With Split-PHY mode in QCN9224,
even a 2.4 GHz radio can participate in SBS mode.
So, consider this case as well while building the detector list.
Change-Id: I99c841584c52785e94c8ee1b0d59494cbdd37f42
CRs-Fixed: 3252986
Add support and handle tx monitor full buffer payload and
other minior fix include change of name for uniformity.
Change-Id: If401ecd5e1c6263584fa7013df672459c883ca8b
CRs-Fixed: 3215244
At 802.11BE 320 MHz throughputs, flow collision and
the resultant flow eviction can lead to throughput
degradation. Skid length is a parameter which can be
used to reduce these continuous flow eviction from the
FISA flow table.
Increase the FISA flow table skid length to 16 to reduce
the chances of flow eviction from FISA flow table.
Change-Id: I3badcb364d45b19a8a266fe335df320c30f999ae
CRs-Fixed: 3232508
Before GKI enforcement and driver modulization, vendor drivers’
data section was part of vmlinux and they were registered with
minidump and collected when crash happens.
With GKI, vendor modules’ data section is part of va-malloc
region, which is virtually contiguous but physically not. It
is difficult to fit into the existing PA based minidump framework.
New VA-minidump driver allocates some CMA region which is registered
as one entry in minidump infrastructure. During panic, the driver
creates an ELF which is based on VA, copies it into that CMA region,
and finally it gets dumped as md_KVA_DUMP.bin.
This change makes use of this VA-minidump framework and implement
the APIs accordingly.
Change-Id: Ib1282990c91408bcd4e68365afe694830b90d0ac
CRs-Fixed: 3232060
Since 6 GHz bss doesn't support vht, can't get beamformer cap from vht cap,
beamformee score is always 0. 5 GHz bss has vht and beamformee score, so
always win 6 GHz bss of same mld if other conditions are same when select
candidate by score.
To fix it, for 6 GHz bss, get beamformer cap from eht cap.
Change-Id: Ic057928876a6ee58a96c3881d004886d0ac0d3fa
CRs-Fixed: 3249097
Some operating class like 81, channel spacing is 25, need convert
channel width to 20 to get right score when select candidate.
Fix some code style issues too.
Change-Id: I15795d016cae74b7596a199ae2883aeababaf081
CRs-Fixed: 3250207
Create a new API to update wdi hdr type for IPA and Fix
the return type for cdp call.
CRs-Fixed: 3246990
Change-Id: Ic8adb1f46bfeda6598a01ffdda27339cfa04ee9d
Remove function reg_is_offload_enabled as its redundant function of
reg_is_regdb_offloaded.
Change-Id: Ib526a9a3fecbd9edee3fa4cebc04c2fd06a54033
CRs-Fixed: 3242777
In connect resp, while sending the connect resp indication to supplicant
fill mlo parameters only if connect resp status is successful
Change-Id: Ifa1baf34deaffff68e98b81bd20a4939aaec170f
CRs-Fixed: 3250884
Add null check on connect req params before
invoking cloning of rsn/rsnx ies for mlo stations
Change-Id: I651683ad7eb6a5c0404feee321402ac1f39edcfc
CRs-Fixed: 3234326
Monitor vdev attach is called both AP and Monitor VAPs
AP vap creation are started prior to monitor install.
So, add the check to determine whether valid monitor vdev or ap vdev.
Change-Id: If7a83a6826499574f88a4a1220ba3642c028f66a
CRs-Fixed: 3240300
Change macro IPA_WDI3_RX_TWO_PIPES to IPA_WDI3_VLAN_SUPPORT to represent
the feature supported under this macro
Change-Id: Ie1e387d641052cd5690c63f0c1216f4852544605
CRs-Fixed: 3250264
BIT() is unsigned long int, and is being printed using
an incorrect format specifier. This leads to a compilation
failure.
Fix the format specifier for macro which uses BIT().
Change-Id: I42a71c3c4a388285809ad17dc62a50bf2df13a5f
CRs-Fixed: 3249816
Add a field "bypass_fisa" to indicate that the
current flow is not to be added to the flow table.
This is used for short lived UDP flows.
Change-Id: Ib8dbd9d03da0e97f09f0a95e3f9655fe3b5b97a2
CRs-Fixed: 3249829
1. Changes to move hal_tx_config_rbm_mapping_be function from common to
device specific as it has ppe related snippets.
2. Changes to remove all PPE related codes in QCA5332 hal code.
3. Changes to correct macros according to fw_hrs.
4. Changes to move functions with device specific Macros to header files
so that it gets compiled with respective device's FW headers and gets
correct Macros
Change-Id: I479b406f318aa42d2b1032349aaf42d95b8c18e5
CRs-Fixed: 3235966
Currently while sending nbuf to rx fate logs
we are not removing rx tlv before sending nbuf
to logger which is causing issue of incorrect
packet type issue.
To Fix issue make changes to make sure that
rx tlv is removed and nbuf length is set
Change-Id: Ib56c8e009398b3410c43be910feb4048bfb06b54
CRs-Fixed: 3241828
Add change to support deletion/cleanup of AST entries on host
for BE platforms(Waikiki) based on peer map and unmap event received
from FW.
Change-Id: I494f7beb572e81cf68cc1cf90864eea0d8125369
CRs-Fixed: 3237943
Add change to support addition of AST entries on host
for BE platforms(Waikiki) based on peer map and unmap event received
from FW.
Change-Id: Ib9a76fd15d18e322b561ce9361d62643289817c4
CRs-Fixed: 3237940
Event based mechanism to reduce delay by removing sleep
while getting response from firmware
Change-Id: I9d553764127efaf06794f41c81cf646cf9dc695e
CRs-Fixed: 3233643
Add check to validate vendor IE length in util validate
reporting STA IE API to avoid OOB read.
Change-Id: I1cdd8eced7b5ffcecde6f0337eb45fc90077932f
CRs-Fixed: 3236561
Currently, in few instances the MLO peer APIs are called
with invalid ML peer pointer.
This change prevents NULL pointer access and clears MLO
flag for peer.
Change-Id: I8bcdae1d71655f7ed267cc5bc3f6d0fc51e930df
CRs-Fixed: 3245158
Duplicate X times of RX packet before delivering to stack, if OTA
RX T-put is 100 Mbps and try to simulate 200 Mbps RX T-put,
duplicate extra 1 time RX packets, this is aimed to test
driver/stack RX capability.
Change-Id: Iaf4db05d0ec0e0cda5fac19fa63b9d3133270847
CRs-Fixed: 3132743
Only one rx desc pool is used for MCL for Rx data. Pool_id from
the SW cookie is used to get the rx desc from the corresponding
rx desc pool. Checking pool_id against MAX_RXDESC_POOLS may lead
to kernel NULL pointer dereference Since, pool_id other than 0
is not valid for MCL.
Fix this issue by checking pool_id against MAX_PDEV_CNT
to get the rx desc from rx desc pool.
Change-Id: Ib9b152ac2cfe2c16d388aca9e22440fbcdf7fe6c
CRs-Fixed: 3244453
Shorten the strings in error prints in the helper that carries out
802.11 element/subelement defragmentation. This is in order to
decrease the size of the modules generated as required for some
platforms.
Change-Id: Idd37ea59467aa5ebc3928f336f05b603e5d7f6f5
CRs-Fixed: 3248821
Shorten the strings in error prints in the helper that determines
802.11 element/subelement fragment sequence information. This is in
order to decrease the size of the modules generated as required for
some platforms.
Change-Id: I5a15dc12404399c4670e0cb29205a728715f4923
CRs-Fixed: 3248813
Shorten the strings in error prints in the helper that determines
802.11 element/subelement successor fragments. This is in order to
decrease the size of the modules generated as required for some
platforms.
Change-Id: I4457e1228f848a52f9eea056541806220ff4e8da
CRs-Fixed: 3248806
Extract EML and MLD Capabilities from Target via
wmi_service_ready_ext2_event. These values can be
used while advertising EML and MLD Capabilities.
Add helper function to get EML related delays in
Micro Secs from values got from EML and MLD advertisments.
Send EML Capabilities received from node to Target
via WMI_PEER_ASSOC.
CRs-Fixed: 3225495
Change-Id: Ibfa2ff8dbf11d4293125331376a7986e611d5f63
WMI_SPECTRAL_CAPABILITIES_EVENTID event will be sent by the target SW to
indicate the different capabilities of the Spectral HW.
Add support to process this event and extract the capabilities.
Change-Id: I03b3236b6def98d24e77b2a9ea51ee866e62e6fe
CRs-Fixed: 3238450