In case of legacy to multi-link MLO roaming, if roam sync event
handling fails, then the pe_session is deleted for the link
VDEV and the cleanup happens only for the assoc vdev. Since,
the link vdev doesn't have proper session/vdev params, the
cleanup fails in link VDEV. This leaves the link vdev in UP
state, even after disconnection. Therefore, subsequent attempts
to connect to an MLO-AP would fail since the partner link is
never cleaned up and is in invalid state(UP).
To fix this, propagate the HO-failure error through state machine
and move the VDEV SM from UP->DOWN directly.
Change-Id: I6480a1821ab4c8cf9af6cd96af0f7889307c3b18
CRs-Fixed: 3362995
Once the radar is found, identify the affected sub 20 MHz channels in the
current channel. From the position(s) of the sub 20 MHz subchannels, find
the nearest valid puncturing pattern.
If a valid puncturing pattern is found, find the corresponding reduced
bandwidth new channel for the legacy ( <= 11AX) devices and send CSA. At
the end of CSA, do a vdev restart so that the 11BE devices see a new
puncturing pattern.
And If not found, then fallback to the default behavior of changing channel
using Random channel selection.
Change-Id: I41e6206f310722bc3dacc9ce8d024f679ff1af3e
CRs-Fixed: 3386022
Don't enable FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE on SDXPINN
platform, which is similar mobile router platform as SDXPRAIRIE
and SDXLEMUR.
Change-Id: Id6c90be0c7467d85c23cac55fb0e7091e6c4814d
CRs-Fixed: 3393286
Add ini groam_info_stats_num used to control wlan driver
cache roam statistics information number.
Change-Id: I203257af37dcac76c6822ddfcc2e9dc723078a25
CRs-Fixed: 3393712
Previous code was already align with spec.
This reverts Change-Id Id16123baf7a18ce10c3c5776b6ef33864a0d9a82.
Change-Id: I83102059e94f71d61ec2eb564f0c9e2d6b253872
CRs-Fixed: 3361303
In SAP+NDI DBS case, SAP channel is changed for channel avoid event,
policy_mgr_update_indoor_concurrency is called, and country_change_work is
scheduled, but blocked for channel switch is already in progress,
both SAP and NDI adapter hold ref NET_DEV_HOLD_COUNTRY_CHANGE_UPDATE_SAP.
At same time, NDI interface is destroyed, assert when found ref leaked.
To fix it, for 2nd CSA req (found CSA in progress already), don't
block, just log and return.
When channel change finished, policy_mgr_check_sap_go_force_scc is called
to check whether new channel change required.
Change-Id: I0bb3b35265f77d949b3c2916ee1ba95a8239c61c
CRs-Fixed: 3396079
There are function parameters missing in kernel doc for TWT.
Add the parameters to kernel doc and fix mispellings.
Change-Id: Ice88e22fed8fb01760b4ed7981cb6b042f3751d6
CRs-Fixed: 3349940
Current code will force SAP restart on other channel when SAP/STA scc
on indoor channel and STA get disconnected. If indoor channel support
is enabled, SAP shall be able to start on indoor channel alone. So add
indoor channel support check before making SAP restart decision.
Change-Id: I3666f11cda75984636bdda9160bb8232d64615d6
CRs-Fixed: 3379903
Add APIs to set/clear link removal flag on vdev object.
If link is removed, drop the disassoc or deauth frame for
the vdev.
If disconnect start is indicated, stop the reconfig timer.
Clear the link removal flag on disconnect complete.
Change-Id: I729621aec36b82de6e88970675b020a2c5721e68
CRs-Fixed: 3352779
Add check for CONFIG_ARCH_PARROT to enable packet capture
compilation for parrot.
Change-Id: I9eab0c37f5a4a849ed6e340bb8b26153030ad5b6
CRs-Fixed: 3377226
In very noisy environment and with 6 GHz co-located AP, scan
database size of 300 might not be enough.
So increase the size to 500.
Change-Id: I26077b2ab0d24f73a7c8e29990504d5b284eccf4
CRs-Fixed: 3395834
Currently if host enable AFC in WMI INIT CMD, target will trigger AFC
request if current country has AP SP reg rules. We have changed regdb
on specific SP to enable AFC test, to not affect other SP which shares
regdb and FW, introduce INI to control AFC enable/disable for
flexibility.
And because currently no country support AP SP reg rule per spec,
so disable AFC by default.
Change-Id: I0e5eb2dac0a8df01635437fe8353ca5431ae5d2a
CRs-Fixed: 3393896
with recent host change
"Trigger SSR on wakeup from pagefault"
missed to update copyright year for some files
This change will update that missed copyright
year to 2023.
Change-Id: I1b2972e824b21e70c697bf819ee34312946aed6b
CRs-Fixed: 3387893
This reverts Change-id: I12e8871fb606d180eabc63c8841017d7240ac829
Revert the change as it causes timer leak in case of
When SAP starts on DFS channel for CAC the timer
hdd_medium_assess_init() need to be initialized properly.
Change-Id: I489bdd37b4935d98c8a3c30da2f52316c29743a7
CRs-Fixed: 3393190
The current channel list alone is not enough to represent the
capability of the chip or device. Given a channel, in many
cases it may be required to know all the power modes that are
supported by this channel.
Additionally add the arguments of power mode and puncture bit map
in the caller API wlan_reg_decide_6ghz_power_within_bw_for_freq.
Change-Id: Ib96c1a15d4696ddb36cc27853a2ff0d4e0cb5cdc
CRs-Fixed: 3359248
RSNXE bits are modified in the recent draft. Rename
WLAN_RSNX_CAPAB_PROT_RANGE_NEG to WLAN_RSNX_CAPAB_URNM_MFPR
and the bit position is changed to 15 instead of 10.
Use WLAN_RSNX_CAPAB_URNM_MFPR instead of
WLAN_RSNX_CAPAB_PROT_RANGE_NEG.
Change-Id: I166b2569cb18bf9a4c9552188429ccda998da359
CRs-Fixed: 3388505
DEBUGFS_LLSTATS_BUF_SIZE is defined for both ML and non-ML
cases separately under WLAN_FEATURE_11BE_MLO & CFG80211_11BE_BASIC
feature flags. CFG80211_11BE_BASIC is set to 1 based on 11BE
supported kernel versions in wlan_osif_features.h and it's included
in wlan_hdd_main header file.So, this header file should be included
before its usage for above length calculations.
Otherwise, it results DEBUGFS_LLSTATS_BUF_SIZE as 16384 instead
of 32768 as CFG80211_11BE_BASIC becomes 0.
When ll_stats requested for station connected with ML-AP
because of insuffient buffer size stats are getting truncated.
from hdd_debugfs_process_radio_stats.
To fix this issue move header file inclusion to beginning
of header file.
Change-Id: I962d81057680dab07b6569fff49a8711c0c628e8
CRs-Fixed: 3387517
Currently, host multiplies ROC duration by 10 for GAS tx frame.
since a one shot ULW (absence notice) has been given to peer,
peer would not be available for ULW duration due to which fw
can’t cancel the already communicated absence schedule.
Fix is, avoid multiplying the received ROC duration for
GAS frame.
Change-Id: If53d5ee446fc5f4df2fcf117a436133116270b9e
CRs-Fixed: 3378272
When EasyMesh agents send channel preference report to EasyMesh
controller to indicate current operating DFS channel is not allowed,
EasyMesh controller checks operating channel is the same channel
indicated by EasyMesh agent or not. If it is, EasyMesh controller
adds current channel to NOL. If EasyMesh controller receives channel
preference report more than once from EasyMesh agents, it may trigger
adding current channel to NOL more than once. Then vdev CSA state is
triggered more than once during CSA process, which is not necessary.
If operating channel is in NOL, ignore current command.
Change-Id: Ibe15789adaac1d86838fbaa4602d3c6f4d734a95
CRs-Fixed: 3379859
Remove WLAN_ENABLE_AGEIE_ON_SCAN_RESULTS macro as BSS age
is calculated using NL80211_BSS_SEEN_MS_AGO
Change-Id: I5473f9cea216df4968a43551875b0385605f616f
CRs-Fixed: 3391078
WMA MGT RX process extraction are logged in err level.
Rate limit the logs to avoid excessive logs to kernel
logging.
Change-Id: Idde55ab4dab24d55ff9e7239a69d586bd4f855ef
CRs-Fixed: 3391246
The current channel list alone is not enough to represent the
capability of the chip or device. Given a channel, in many
cases it may be required to know all the power modes that are
supported by this channel.
Add pwrmode argument to callers of wlan_reg_get_opclass_details.
Change-Id: Ia470ae99cb374e4cfdbea8ce77cceabba5c7c959
CRs-Fixed: 3357155
In STA+SAP / GO concurrency, SCC is enforced by moving SAP / GO
to STA's operating channel. STA side, if there is a CSA
then SCC will be enforced only after STA moves to new channel.
In usecase of STA + GO SCC on DFS channel, CSA is sent with no-TX
and STA's movement will only happen once CSA count becomes 0.
This will block data transmission till then, which will have bad
user experience in case of XR where, it needs to have periodic data
transmission in every 1 second with GO interface.
This new INI is added to handle this scenario where SAP / GO will
move first followed by STA.
Change-Id: Id642872da4f3403a5168a2fad58b4c971cd88288
CRs-Fixed: 3380861