Refine PASN peer delete all path, to post message to
scheduler thread to process the peer delete all
message for PASN peers. Handle response timeout in WMA.
Resume vdev deletion after removing pasn peers
Add vendor command support to parse below vendor commands:
QCA_NL80211_VENDOR_SUBCMD_PASN
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT
Send install key command to firmware to install the
PTK upon receiving
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT
vendor command. If LTF keyseed is also received,
send the LTF keyseed to firmware.
Sent PASN auth status to firmware upon receiving
QCA_NL80211_VENDOR_SUBCMD_PASN command.
Change-Id: Idc9c69f7288b0774cc6d9bdcfed13ba3684bbc72
CRs-Fixed: 3231205
Currently, channel info event results are stored only if it is
received as part of SAP ACS scan. Channel info is used in
ACS algorithm to select best channel. There is a requirement to
reuse the STA's scan results for SAP to reduce the SAP bringup
time. So store the channel info event results received as part
of STA scan if WLAN_FEATURE_SAP_ACS_OPTIMIZE is enabled.
Change-Id: I99d4e8c13a9e4171c74c63907d29c585f89ecf9e
CRs-Fixed: 3239383
PASN authentication M1 should be initiated by I-STA.
Driver requests for the initiation of PASN auth from
wpa supplicant only for I-STA mode. For R-STA mode, M1
will be received from peer I-STA.
So update wifi pos module after peer create only for I-STA mode
and skip that for R-STA mode.
Change-Id: I09ac53bcd50cb012ad8cd5d351b91e6fb017c77d
CRs-Fixed: 3170770
With introduction of TDLS on 6 GHz, some of the channels
that peer can support will be same for 6 GHz band other
bands. So, extract frequency by using peer supported
operating class and supported channel list which can
be used for further processing.
If channel numbers are used then the duplicate channel
numbers are removed which may lead to skipping 6 GHz
supported channels.
Change-Id: Ic6838d05c3dab5a0cc17483890b83805e076684c
CRs-Fixed: 3233999
Currently, host is overwriting 2 GHz capabilities by 5 GHz
which is causing to send same capabilities for both bands.
To solve this:
1. Send HE and EHT capabilities by band.
2. While populating the eht mcs and nss,
for 2 GHz, only populate values for BW upto 80 MHz
for 5 GHz, populate BW upto 320 MHz
3. Send correct eht cap length.
Change-Id: I9bbad81341b49e4a98b3fcccadd162e82d93d11e
CRs-Fixed: 3225630
Irrespective of 6 GHz, wideband can be supported.
So, Allow TDLS connection in wideband only if FW supports TDLS
on 6Ghz.
If Fw doesn't support wideband then restrict the TDLS connection
BW to APs Bw.
Change-Id: If726233f381921a8eda25ac7a2705942db79d410
CRs-Fixed: 3223760
-Wimplicit-fallthrough is being enabled by default. Some compilers
such as clang require the attribute instead of just a fallthrough comment.
Change-Id: I97307a052db1784def408483689bcec7f157002b
CRs-Fixed: 3217421
Add new flag CONNECTIVITY_PKTLOG to make independent of
FEATURE_PKTLOG and REMOVE_PKT_LOG for packet logging.
This is because 32 tx/rx pkt logging is connection related
and this feature is independent of pkt log feature. Here
driver will send first 32 tx/rx pkts consisting of mgmt
and data pkts to userspace which can be used for debugging
Change-Id: If987ac8b6cb10b464a4ec2ace1c55215c0aa3614
CRs-Fixed: 3222970
In the current driver implementation, the vdev_id sent by FW
is ignored by link stats peer and radio event handler. It leads
to vdev_id mismatch in wlan_hdd_send_ll_stats_req and ultimately
causes LL_STATS timeout. To void this issue, update correct vdev_id
sent by FW in the link stats peer and radio event handler.
Change-Id: I283f8a8f4f4d4b3018072ecc0f19d55cf47d03eb
CRs-Fixed: 3224704
Enable bits in WMI_INIT command to let the FW know about host's
capability to support notify frame feature. If the feature is enabled,
host can mark certain TX frames as "notify frames" for hardware and they
need not be sent to FW. FW depends on this capability exchange to decide
whether to install HW rules for frames to be sent to HW.
Change-Id: I53b729acc938bc5877de5a872632dd9a2d58845a
CRs-Fixed: 3210693
The WOW reason types WOW_REASON_DELAYED_WAKEUP_HOST_CFG_TIMER_ELAPSED
and WOW_REASON_DELAYED_WAKEUP_DATA_STORE_LIST_FULL are currently
not identified by the driver and treated as unknown wakeup reasons.
Add these two reason codes in the WOW wakeup event.
Change-Id: Ia8966391588851b60af9ec27e47a2022423eb044
CRs-Fixed: 3214597
Add eMLSR HW mode support for ML STA. eMLSR mode
(Enhanced Multi-link Single-Radio) is a new HW mode within 802.11be
op mode. This change consists of the following
1) Handle the new eMLSR HW mode. FW sends this capability to host via
extended service ready event.
2) If FW supports this mode, then update the eMLSR capability sub-fields
in the Basic-variant MLO IE under the assoc request frame.
3) Provide peer info like eMLSR capability, transition timeout, and link
IDs to FW through WMI_PEER_ASSOC_CMDID.
Change-Id: Idc00f5f780b5617e513f307952b58277669dee85
CRs-Fixed: 3184708
EHT capabilities and EHT operation IE definitions are updated as per
new draft version D1.5. Update corresponding IE handling as per new
definitions.
Change-Id: I16b8c578e28c8d9fd24383879291e6e976da2efa
CRs-Fixed: 3197353
Add EHT MCS to rate mapping for NSS 1 and NSS 2.
Update TX/RX bitrate for EHT connection depending on current MCS/NSS
configuration.
Change-Id: I0c55beab2c6b9a9609d5a2e454a0c0e8c1312d09
CRs-Fixed: 3181127
In hw mode change offload case, update the mac id and
frequency range in hw mode transition event handler
instead of post msg to lim and sme to avoid the
information updating delay.
Change-Id: I3dc1d37880691148c4cffd8e1f5d46172f03cb0d
CRs-Fixed: 3211683
With this change add support for new ini ConDTIMSkipping_MaxTime
to set max modulated DTIM in ms.
Change-Id: I89ce2b5074ce75a1701365b5d09d8ed0244aeeef
CRs-Fixed: 3038346
Per 11BE Spec, only 320 MHz support in 6 GHz is defined in EHT
PHY capabilities. Therefore when deciding max target supported
EHT bandwidth, 320 MHz support is first checked using target
advertised EHT phy caps. If 320 MHz is not supported, fall back
to VHT channel width supported, which includes 160 MHz and 80 MHz.
Change-Id: I26ddfa250db66d72ca55a3c9f966d71740cb0414
CRs-Fixed: 3190474
Sta is not allowed to connect/roam in 6 GHz frequency or indoor
frequency in non-DBS target if SAP is active.
But STA roams to 6 GHz AP when SAP is active since the PCL allows
6 GHz frequency.
While populating PCL to firmware, check if 6 GHz and indoor
frequencies are allowed for non-dbs target and set the
weight appropriately if the channels are not allowed
Change-Id: I0e5fdc5b3c4177283d91cdfc58359336cc11910d
CRs-Fixed: 3205494
Currently, wakelock is only taken during initial connection if
pairwise key installation is pending and not during roaming. This
may lead to EAPOL delay/timeout during roaming as runtime pm and
suspend is allowed during roaming. To fix this issue, acquire
wakelock if key installation is pending during roaming.
This change also refactors the code and release the wakelock in
wma_remove_peer if EAPOL fails during initial connection or roaming.
Change-Id: Id4cac30b3c383ca3d3e963571846f8a30eaa1006
CRs-Fixed: 3189799
There is only 1 global var to save EHT cap in psoc cfg for both 2 GHz and
5 GHz band, it is propagated to vdev/pe session/frames without revising by
band, so EHT cap of 2 GHz and 5 GHz are same, EHT cap of assoc link and
partner link are same, so no EHT cap in ML-Link Info(per STA Profile) in
assoc request while connecting to EHT MLO AP.
To fix it, revise EHT cap when band is selected, get EHT cap by band when
assemble assoc req MLO link per sta profile, get correct 2 GHz cap by
checking supported bands when get MAC/PHY cap from firmware, copy supported
MCS set from firmware to EHT cap of 2 GHz and 5 GHz too.
Change-Id: Ie97e71ee141f023248fb49f9977e7345e21003f6
CRs-Fixed: 3200199
Send connected links bitmap to FW via a command:
WMI_REQUEST_STATS_EXT_CMDID in case of MLO connection.
Host receives partner link stats via WMI_STATS_EXT_EVENTID
event and sends information of partner links to upper layer.
Change-Id: Iddd617f1acb5e29e4ba6d52baae0b421c4886063
CRs-Fixed: 3148451
Add logic to disable a link vdev if concurrency doesn't allow it.
Send mlo_force_link_inactive in peer assoc for this and add
it in deleted table on connection complete.
Also disable the link if roam sync indication indicate
that link is disabled.
Change-Id: Ib0615308a669a5fd9d2b8ef6f8ab3f50953f658d
CRs-Fixed: 3192728
To make the active connections number configurable, based on
host configuration of INI gMaxConcurrentActiveSessions
host sets the num_max_active_vdevs in WMI init command to notify
the FW the number of active connections host expects to support.
FW will report the actual supported number in wmi ready event.
Policy mgr will record the FW supported number if FW number is
smaller than host requested.
Change-Id: I454c0cdde6be1e8a627f8fff08b6c7b2141b00f6
CRs-Fixed: 3183006
In err case "add_sta ptr" is freed in wma_send_msg_high_priority
and referenced again in caller API
so fix this by removing references to "add_sta ptr" in the caller
API's after its freed
CRs-Fixed: 3197782
Change-Id: Id1424b2802108f7d7475ed5dbf28e938bb47b525
Issue : Host fails to register the event call back handler
again in case Wi-Fi is turned on and triggered a reboot.
Because even after reboot, at a point of time when the host
is registering event callback handler, the host does not
receive FW capability flags yet in mlme context and this
results in FW caps check failure every time while call back
registration.
The fix is to allow the host to register to call back handler
irrespective of FW flags and add capability check in callback
handler.
Change-Id: I1dd66279097db6a68885b0416076428b73eefb9c
CRs-Fixed: 3196030
As part of MLO stats feature, add support to process link layer
stats for all MLO vdevs and store them in the corresponding adapters.
Change-Id: Ia6d731c94eaa3a355a9deae61d07dd06c5d412bd
CRs-Fixed: 3181021
As part of the peer assoc to the firmware populate the intersected
peer/target eht mcs capabilities to firmware.
Change-Id: I99eb43018da59ae05486423a8518dc59ca03d324
CRs-Fixed: 3196455
Move wlan_mlme_get_wlm_multi_client_ll_caps API to dispatcher
folder so that other components would use this API to get
the multi-client feature capability flag.
Change-Id: Ib247401b9411c40a838b338a60d44cb187884480
CRs-Fixed: 3181381
This reverts commit 3693c5b6, Host will send unified command in the
connected/disconnected state.
Change-Id: Iceb1910e38f1296f1fc8986f7b90bd011750bdc5
CRs-Fixed: 3194125
Initialize struct cm_roam_values_copy to avoid using uninitialized
parameters in wlan_cm_roam_cfg_set_value().
Initialize struct pdev_params to zero to avoid using uninitialized
parameters in wmi_unified_pdev_param_send().
Change-Id: I820db09840431487f1756695a0562f8a794f549f
CRs-Fixed: 3187194
For channel width not have the sanity whenever the
value is zero or greater than 40MHz in 2.4GHz.
Added sanity check for channel width more than
40MHz for 2.4Ghz and channel width is zero.
Change-Id: I60883dcc5afd1e381cea1d3c9ef49a55d688298b
CRs-Fixed: 3181700
EHT capabilities and EHT operation IE definitions are updated as per
new draft version D1.4. Update corresponding IE handling as per new
definitions.
Change-Id: Ic321ea0d037a5f59fb6bc42f9ed013509dd2ea49
CRs-Fixed: 3160713
Use the Connection Manager state machine to check if the
VDEV is currently in roam sync state. RSO states can be
changed dynamically based on the roaming configuration, whereas
the state machine would maintain the state.
Change-Id: Ic5c9a3a322febfe6b71f4684d5074dad599ecd37
CRs-Fixed: 3183191
Currently driver sends unified ll stats command to request ll_stats
and station stats even if station is in disconnected state.
There are no stats required in disconnected state and fw does not
collect any stats in disconnected case. If host requests station
stats in disconnected case, fw sends all stats as 0s, so there is
no need to request these stats in disconnected case.
To address above issue, add a check to not send unified ll_stats
command in disconnected case.
Change-Id: I0254d290694307d553f3b0cc04505e95945089d3
CRs-Fixed: 3183024
Currently driver does not caches peer nss and it needs this info
for big data stats. When driver receives big data stats command
it always returns nss as 0 which is not correct.
To address above issue, add support to cache peer nss in SAP
mode.
Change-Id: I5152581d7d66b5bf20f6102dcb9edaa4e23b35bc
CRs-Fixed: 3174420
Issue scenario, 1st Addba response tx and set is_mgmt_data_valid false.
2nd TX frame happens for valid frame that needs to be logged and set
wma_handle->is_mgmt_data_valid to true. Then the 1st frame TX completion
tried to access wma_handle->mgmt._data. It may access invalid context if
race condition happened.
Move management frames handling from lim_send API to tx_complete_cnf API
Change-Id: Ib5090dcd274160b3a9d7b9975d0839ec06616b86
CRs-Fixed: 3154710
Make puncture information can be populated and parsed.
Pass the puncture bitmap to FW in peer assoc wmi command.
Change-Id: I9d6f7ead90cfe2e2b366ffb37f74bfac8404c2b7
CRs-Fixed: 3145854