As the IPA component has moved out of kernel,
WLAN currently does not have access to the IPA
header files that was previously part of kernel.
To resolve this, WLAN needs to include the path
to IPA header files, for successful compilation when
IPA_OFFLOAD is enabled. With this Kbuild change
now WLAN can support OUT-OF-TREE IPA module.
Change-Id: I56f66d3e7d7648ece5aeb68de1af7c0c5f59f84d
CRs-Fixed: 3482432
The WLAN_OPEN_SOURCE flag is a legacy flag which had a specific use
that is no longer applicable. So remove all usage of that flag.
Change-Id: If51b9421717bc82b3c200c6412a87b0e46a77476
CRs-Fixed: 3464926
Add support to stop t2lm timer during sta disconnection
and clear t2lm mapping.
Change-Id: I59e724331eda8b67fd1405031bdb00d12805ad09
CRs-Fixed: 3479496
Considering the case as below:
System shutdown comes when ndo_open is waiting for cnss power
up complete.
cnss shutdown handler completes all of the completions, and so
ndo_open continues.
while at the same time, cnss driver is processing firmware ready
event and trying to start cld modules, which will change debug
domain from INIT to ACTIVE, then it may hit debug domain mismatch
assertion:
It allocates some memory in ndo_open context when debug domain is
INIT, but when trying to free the memory, the debug domain is ACTIVE.
To fix this issue, when system reboot is in progress, skip debug
domain transition, and also skip modules start to avoid state mismatch
between cnss driver and CLD driver.
Change-Id: Ibc411e13e48269c66ec71aba6304578c9049f798
CRs-Fixed: 3470170
When roaming happens, vdev CM changes from CONNECTED to ROAMING first,
vdev still keeps up, then RSO becomes ROAMING_IN_PROG later,
so need permit RSO cmd during CM ROAMING state.
Change-Id: If4902dcff6b8b4f169fb43da4a889b09e1c2875d
CRs-Fixed: 3482158
While mlo wlan0 sta connecting with vdev0 up and vdev1 not up yet, wlan1
vdev2 disconnected, enabled roaming on other connected sta, then vdev0 RSO
enabled before vdev1 up, mlme session for vdev1 wasn't created in F/W. When
roaming happened, vdev1 peer wasn't deleted, F/W asserted.
To fix it, for mlo sta, follow legacy sta, if not all of requested links
are up, abort RSO operation except deinit on it.
Change-Id: I7026614ab91cf0a603c97e962433dc5139b210dd
CRs-Fixed: 3471655
Currently for REASSOC command host starts vdev ops
and tries to use vdev. In parallel if host receives
interface down and starts vdev trans then proceeds
to stop adapter and destroys the vdev, this leads
to null pointer dereference if vdev is destroyed
first.
This happens because driver doesn't wait for vdev ops
to complete after starting vdev trans.
To address this issue, start vdev trans and wait for
vdev ops to complete before proceeding to execute
further.
Change-Id: I363d05f742f7569dffed70cfa9b6bb9a0a766d9e
CRs-Fixed: 3445858
Fix incorrect center frequency seg1 value in ch params
structure by initializing it. This value is later used as
320 MHz band center frequency and results in all 6 GHz
channels to be devoid of 320 MHz bonded pairs and thus
reducing maximum supported BW to less than 320 MHz.
Change-Id: Icc996393654e3571b6969a40784ca622130959cb
CRs-Fixed: 3457159
While STA handle csa event from F/W and switch channel, disconnect
happened and bss peer was removed from vdev, assert happened in
cfg80211_ch_switch_notify.
To fix it, if found sta isn’t connected, don’t call
cfg80211_ch_switch_notify.
Change-Id: I016749ac4ac87563cc3de2aa930e7caeac858378
CRs-Fixed: 3478814
Channel switch wrapper IE V2 includes bandwidth indication sub IE from
IEEE802.11be draft 3.0 optionally.
When receive CSA event, Eht STA parse bandwidth indication IE of connected
Eht AP for channel switch or puncture update.
Change-Id: Id5740a1394766b02b65c5d6791ce98780bbacbd4
CRs-Fixed: 3458348
If PMKID present in AP expires, AP rejects the PMKID based association.
Current design is to clear the cache using BSSID/MAC address of link
in such cases to let a fresh SAE authentication to happen.
But host driver stores PMKSA with MLD address for ML BSS.
Adapt to the same and update PMKSA cache clear APIs to use
MLD address instead of link address.
Use the API which gives ML BSS peer's MLD address for
MLO VDEV or else legacy address for non MLO VDEV to remove
the correct entry in PMKSA cache based on association.
Change-Id: I4af9814e377737eef4a54fdf15db9f6bac38d954
CRs-Fixed: 3433723
Currently driver doesn't update mcs info while updating
he capabilities in wiphy. This leads to kernel rejecting
higher mcs when NL80211_CMD_SET_TX_BITRATE_MASK function
is invoked from userspace.
Change-Id: I7370de077364fa4287171544ee3ca1f495f9e519
CRs-Fixed: 3477587
Cleanup the SIR_* definitions of action frame and replace them
with common enums.
Change-Id: Ib72f9c452ca59e328d0f15a8643f6a803e517433
CRs-Fixed: 3479554
Add macro check about CFG80211_LINK_STA_PARAMS_PRESENT for
function wlan_cfg80211_tdls_extract_eht_params.
Change-Id: I1982d97f06e333936ea45828f5082d322664a2c0
CRs-Fixed: 3479244
Currently, support to get num_of_pwr level for 320 MHz chan width is
not present, so it is considered as Invalid channel width.
Add support to get num_of_pwr level for 320 MHz chan width
Change-Id: Iced6d58ac356bc85864ff4a240ca6f3ee35df94d
CRs-Fixed: 3478174
Add the following fixes to get Async TID to link map info:
1. Add APIs to register and unregister the T2LM callback.
2. Add HDD callbacks.
3. Send T2LM info, when receiving TID-to-link mapping response
from the associated AP MLD.
Change-Id: Ia98605b3244b24cc3cac41d2decf22ff6aa82f88
CRs-Fixed: 3431518
There is implicit declaration of function wlan_mlo_get_tdls_link_vdev
issue when compiling Fillmore devSP. To resolve it, add the
corresponding header file.
Change-Id: I6bc4dc01b82f3a0805e79fb7e25c4c4c7642c4e6
CRs-Fixed: 3477725
The macro definition for struct mlo_adapter_info in wlan_hdd_main.h
is #if (defined(WLAN_FEATURE_11BE_MLO) && defined(CFG80211_11BE_BASIC)),
but in wlan_hdd_main.c defined as #if (defined(WLAN_FEATURE_11BE_MLO).
Actually, "defined(CFG80211_11BE_BASIC)" can't be satisfied here, so we
change it in wlan_hdd_main.c to keep it consistent with the head file.
Change-Id: Ic8e49f541459c6712d15a1d55f361dd22042235a
CRs-Fixed: 3474597
Currently ol rx thread code is under QCA_CONFIG_SMP macro, which is
enabled for all the targets. But LI, BE and RH family targets don't
use this ol rx thread implementation. Hence, compile out ol rx thread
code for LI, BE and RH targets.
Change-Id: I1a1dfd09f5364ddb519c846e6c456d10f81e369c
CRs-Fixed: 3468499
In peach defconfig file, the CONFIG_FEATURE_WLAN_PRE_CAC
feature flag is not enabled for mobile router profile.
But it is need by all profiles. So, enable the flag by default.
Change-Id: I0281481d0ad227a716000b52447e77c6db5eb168
CRs-Fixed: 3472782
Order 7 allocation is coming from hal_soc allocation.
This is caused by debug change.
Regression cause is:: Ib98e48e1d32defb0d8b30b854b5b0c23691cca59
With above change struct hal_srng size increased from 320B to 1376B
In turn this increased the struct hal_soc size from 71648B to 310232B
Disable the debug feature from enabling it by default
Change-Id: I3e2fde17defc677401343c158ec40698b1dcb603
CRs-Fixed: 3469599
Currently when DWARFv5 is enabled, wlan driver compilation fails
with error, INT DW_ATE_unsigned_1024 Error emitting BTF type.
To unblock this compilation issue, temporarily switch
back to DWARFv4.
Change-Id: I2e37aff054e8a6161a80e97a227153eb2df68a74
CRs-Fixed: 3475979
Currently in defconfig files, the naming convention of
config flags BUILD_DIAG_VERSION and BUILD_DEBUG_VERSION
is not aligning with rest of them. So, rename the flags
to CONFIG_WLAN_DIAG_VERSION and CONFIG_WLAN_DEBUG_VERSION
Change-Id: Ia9357588cdbfc09199d7d44bd024beb0f92b9755
CRs-Fixed: 3472570
The return of hdd_adapter_get_mac_handle() API can be NULL.
Check the NULL pointer before accessing.
Change-Id: Iad0c6be8932323442bc0080ea311092207bf32e6
CRs-Fixed: 3463354
Breakdown wlan_hdd_get_sta_stats function into individual
functions to improve code readability.
Change-Id: I4b2745d3b65e4a779ca22445650add0504d68acc
CRs-Fixed: 3468138
An AP MLD advertises Medium Synchronization Delay support
and parameters to ML STA in assoc response frame. Host
extracts these values and sends it to FW via peer assoc
command. If the MSD support is absent in assoc response,
Host sends zeroes for MSD subfields. Change this to
configure specific default values as defined in 802.11BE
draft 3.0.
Change-Id: Idd044b23d350634d96b010176b0d8922e793290a
CRs-Fixed: 3416241
Add new cfg80211 command to get TID to link map info.
Below command can be used to get the T2LM info:
"DRIVER GET_ML_TID_MAPPING_STATUS"
Change-Id: I2a06cd615f89dec240a48a25d820c28f9dfdd7d1
CRs-Fixed: 3431486
In current design, each supported channel is packed
individually with range count as 1. This bloats the
size of the supported channel IE.
Instead as an optimization, break the supported channel
list into contiguous range of channels and encode only
the start frequency of the range and count of channels
in that range.
Change-Id: Ic5ba530ee6a8422ffc0c67acb621e76826775fa7
CRs-Fixed: 3467712