Currently, If supplicant sends tx_mgmt request with random
mac_addr then driver adds the random mac_addr and sets this
random mac_addr to firmware via
WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID command. Driver waits
for tx_ack or tx cancel wait to complete and then remove the
cookies and start timer to delete the random mac_addr.
In case after receiving tx_ack, driver removes the cookie and
starts timer and before timeout supplicant sends the
tx_cancel_wait request. But driver can't update the timer
duration as the cookie was already deleted as part action frame
tx completion.
Fix is driver will remove the cookie with below condition:
1. If driver receives the tx_ack and the wait duration = 0 then
no need to start the timer, remove the cookie and also remove the
random mac_addr from firmware
2. If driver receives the tx_ack and the wait duration != 0 then
start the timer
3. If driver receives tx_cancel_wait then stop the timer and
remove the randon mac_addr from firmware
4. If timeout happens then remove all the cookies for the random
mac_addr and also remove the random mac_addr from firmware
Change-Id: I3e227213239e865582e5d8674260d049c437aa9b
CRs-Fixed: 3002851
For SAP with special OUI, if DUT STA connect with 11ax mode with ht
control enabled, SAP can't decode unicast pkt from DUT.
Fix it by clearing ht control bit in he cap when send peer assoc cmd
to firmware when connect such IOT AP with 11ax mode.
Steps:
1. When wlan driver is loaded, psoc ht cap is initialized by ini or
default value in hdd_component_psoc_open->mlme_init_he_cap_in_cfg.
mac->mlme_cfg = &mlme_ext_obj->cfg in mac_open.
2. When WMI_SERVICE_READY_EXT_EVENT is received from firmware,
psoc he cap is updated in wma_update_hdd_cfg->hdd_update_tgt_cfg->
hdd_update_tgt_he_cap->mlme_update_tgt_he_caps_in_cfg.
3. When wlan0 up, vdev0 is created, mlme_priv->he_config is copied from
psoc he cap in sme_vdev_post_vdev_create_setup->csr_setup_vdev_session->
csr_update_session_he_cap.
4. When DUT STA connect, check OUI in beacon when join request in
lim_check_oui_and_update_session, if matched special pattern of SAP
which doesn't support htc he, htc he in vdev mlme_priv->he_config is
disabled, then session->he_config is copied from vdev mlme_priv->he_config
in lim_fill_pe_session->lim_copy_join_req_he_cap with htc he disabled too.
5. When assoc rsp is received, ht cap of peer and DUT are intersected
and set to add_bss->staContext.he_config in lim_process_assoc_rsp_frame->
lim_sta_send_add_bss->lim_intersect_ap_he_caps->lim_intersect_he_caps.
so htc he is also disabled in peer_he_cap_macinfo.
htc he in peer_he_cap_info is disabled when WMI_PEER_ASSOC_CMDID is sent
in wma_send_peer_assoc->wma_populate_peer_he_cap. then htc he is disabled
in all tx pkts in he mode.
Change-Id: Icf9d6d7ddc370c79e615a713c76606e7fd195fd3
CRs-Fixed: 3004761
Fix build error when WLAN_FEATURE_11BE_MLO is not enabled while
WLAN_FEATURE_11BE is enabled.
update sta mlo information only when WLAN_FEATURE_11BE_MLO is
defined
Change-Id: I863fad494a819d6676be4cc1adaf5e8ca9b519a9
CRs-Fixed: 3011721
Add 320MHz support in cm so that connection info can reflect
correct 11BE 320MHz bandwidth.
Change-Id: I44772472bf9e64af0e47ad71ca7d29d1ff90daed
CRs-Fixed: 3009311
Per stress test in ftm mode, it causes
NL80211_CMD_TRIGGER_SCAN failed.
To resolve this issue, don't recover wlm level in ftm mode.
Change-Id: If8514e3d0f3d2bbf9594502efba476d8ad43d1e3
CRs-Fixed: 3011739
Based on new requirement, add aliasing for gNeighborLookupThreshold
ini and update the range of this ini as well.
Change-Id: I0a62e209d6a62001d6aec48849c4900062ae5bc7
CRs-Fixed: 3011060
Adding flags to support FR of Modularization of
monitor mode for Hastings to avoid compile issue.
Change-Id: I7be63661dde17179c8eb5fb5e5fd9b2dc0c9f4af
CRs-Fixed: 3011407
Incase of non-6ghz, the peer width is
updated while extracting HT and VHT
capability. For 6Ghz, the HT and VHT
capabilities may not be present and
because of which the peer channel width
gets updated as zero (20 Mhz).
To fix this, fill the channel width for
peer if session is 6ghz and peer supports
HE Capabilities.
Change-Id: Ie4d8f3a3a364af2c47e6b3d7309ee1287652ae06
CRs-Fixed: 3010063
In hdd_set_primary_interface:
1. When dual sta doesn't exist, just set primary_vdev_id, and return
SUCCESS, and don't config anything for dual sta.
2. If dual sta are not in MCC, don't send duty cycle percentage, return
SUCCESS.
Change-Id: Ib72033cf7d656e56c400759a7c5da13bf8d1377b
CRs-Fixed: 3009079
Currently the number of netdev interfaces created is equal to
the max number of vdev's supported. There shouldn't be a problem
w.r.t to adding the number of interfaces, the number of interfaces
which can active at a time is already controlled by the object
manager.
Remove the checks required to add the interfaces greater than
the max supported interfaces.
Change-Id: I5f9d1ca343788a77180a76f961fcc511feff4036
CRs-Fixed: 3010712
Host uses return value of function "hdd_get_adapter_home_channel" as
channel number when starting spectral scan and setting chainmask.
Which cause chainmask not to be set properly and parsing spectral
scan result fail. So, add this change to set chainmask based on home
channel frequency.
Change-Id: I3e25091841769d738dec101708e16602d783a363
CRs-Fixed: 3001325
Don't check for NULL for session in tdls_update_node_he_caps()
as the caller lim_process_sme_tdls_add_sta_req() is already
checking that.
Change-Id: I15b8144db385265fb77612f17123fd9f949ab7bf
CRs-Fixed: 3007560
Currently driver has only one name for an INI, with
this change add second name as well for few INIs based on
new requirement.
Change-Id: I6eee13935d1c5c74794027b88d94cbb572339e9e
CRs-Fixed: 3007209
Currently host driver supports only one ini file,
with this change add support for multiple ini files.
Change-Id: I6313f50a6275501d0694876f24b8d4a1ce6c2e72
CRs-Fixed: 3007190
As part of new implementation for 802.11BE MLD(multi link device)
address also need to be generated, derive the address during the
driver probe for max supported MLD's.
Change-Id: I092aac0607a6b7e9e420b1c82a61869cc0b8a2d4
CRs-Fixed: 2993460
hdd_assemble_rate_code uses WMI_ASSEMBLE_RATECODE_V1 to configure rate
to Fw. But this macro is not as per expectation by FW.
To address this, Don't use hdd_assemble_rate_code API and read the rate
code from user as per FW expectation and configure it to the FW.
To set 11be rate, write 2 bytes value to the sysfs entry as below.
In this byte-1 should be 11be preamble id i.e. 5, in byte-2 MSB 3-bits
represents NSS and LSB 5-bits represents MCS. For e.g. the below
command will configure the 11be rate to MCS 7 and NSS 2.
echo 0x0547 > /sys/class/net/wlan1/11be_rate
Change-Id: I9c8ecc840b14fbd954f0df1f8ec841daf5435fab
CRs-Fixed: 3004042
Currently, irrespective of OP MODE of the driver, the HOST sets
85th bit (Beacon Protection Enabled) in octet 11 of extended
capabilities. As per the 802.11 2020 standard, this field is
reserved for a non-AP STA.
The fix is to make sure 85th bit in octet 11 of extended
capabilities are reserved for a non-AP STA.
Change-Id: I36825bd8045af51d0f998ca5bcd90a3bc8dce632
CRs-Fixed: 2999299
Fill TDLS 6Ghz peer capability correctly in Add STA
so that carrect Peer capability should be sent in
Peer Assoc.
Change-Id: I3eb6c387286b86e07c33be4751501b356b24ff68
CRs-Fixed: 3008407
The RRM request may have different country code with DUT internal
regdb configure, use country code from beacon IE if it is present,
otherwise use internal country code to verify op class of neighbor
report channel list.
CRs-Fixed: 2997474
Change-Id: I35a62d9791f08d26dd8a892739612eb422805523
When firmware sends Roam synch indication, driver changes the
roam offload state to ROAM_INIT and after set key completion is
received, RSO start will be sent. But if EAP/EAPOL fails and
disconnection is triggered then deinit command is sent without
setting roam scan mode to 0 with RSO stop command.
So change roam offload state to RSO_STOPPED if auth status is
connected in roam synch indication.
Change-Id: If8f56ce48500f6848fa917854b6252f8deb67c01
CRs-Fixed: 3005697