A check has been introduced while implementing SAE roaming to send
the SAE status to SME only when the STA is not in joined state.
But this doesn't handle the SAP case where the status is expected
to be updated always.
Update the status to SME in below cases
1. SAP mode: Always
2. STA mode: When the device is not in joined state
If the device is in joined state, send the status to WMA which
is meant for roaming.
Change-Id: I20c134a3eea7c65db1fe1950c02b8b9e1ee3a34d
CRs-Fixed: 2524973
struct bss_params has many legacy params which are not used. So
remove the unused params from struct bss_params.
Change-Id: I7d930e83ff0ce56bf8fb07789f9fca9f94fb6f74
CRs-Fixed: 2530215
The add_bss_req struct is used while handling add bss resp,
and is stored in vdev priv mlme.
The resp path require the info which can be filled from vdev resp
and thus no need to store the add_bss_req. From response fill and
use the add_bss_resp in add bss response handling path
Change-Id: I7ec1189c7d399e181f451a442a2578964eb4e47d
CRs-Fixed: 2529289
Add 6GHZ operation information element structure and HE extended
capabilities for 6GHZ information element structure to dot11f frame
specification and parsing files. Also add them as optional IE in
required managment frames.
Change-Id: I5da20543c245e3e02806a20fbfe3ff4326db61f4
CRs-fixed: 2530409
Update SAP data structures to use channel frequency values instead
of using the channel id values to support 6GHz channels in SAP.
Change-Id: I9ef5857e8dcf3f7d879495d3f3c3ead083fe0bf0
CRs-Fixed: 2513083
Platform driver is still doing MHI cleanup at the current location of
clearing the recovery flag. Clear it after platform driver callback.
Change-Id: Ifa81950790fa3d2704ed1aed85301a99c6383470
CRs-Fixed: 2526873
As a part of 802.11ax amendment, 6GHz band operation is added.
Since the 6 GHz channel numbers are overlapping with existing 2.4GHz
and 5GHz channel numbers, use frequency to identify unique channel
operation instead of channel number. Channel frequency is unique across
bands.
As a part of above requirement, in the existing WMI interface handlers
and related functions, wherever missing, add frequency attributes to
identify unique channel operation.
Change-Id: I757f60cef414d206b275b4fbd192d5d22bbc93d7
CRs-Fixed: 2517901
In function wma_process_update_opmode, interface phy mode
is used to update peer phy mode to FW, which will cause
a mis-behavior in FW during channel switch.
Use peer phy mode, instead of interface phy mode when
driver is sending WMI_PEER_PHYMODE cmd to FW.
Also to make peer phy mode population to FW possible,
add the following APIs to do host to FW phy mode
conversion:
wma_host_to_fw_phymode_160
wma_host_to_fw_phymode_11ax
wma_host_to_fw_phymode
Fix some kernel-doc discrepancies for the following
existing functions:
wma_fw_to_host_phymode
wma_fw_to_host_phymode_160
wma_fw_to_host_phymode_11ax
Change-Id: I6184a1735d37f648763b149795ac7930bce45346
CRs-Fixed: 2497684
When wma_shutdown_notifier_cb post wma_cleanup_vdev_resp_and_hold_req
the msg.bodyptr is wma. Now during flush the drive will try to free
the msg.bodyptr and may lead to assert.
Fix this by adding dummy flush callback so that driver will not try
to free msg.bodyptr for this msg.
Change-Id: I0734a2ee80dff1d9d4437a009c4c0061485b4de5
CRs-Fixed: 2529950
Currently the driver does undo acs which clears away
the acs cfg ch list, master ch list, and sap_ctx->ch_list
before the ACS is complete (race condition), which can
lead to pointer access after free.
Fix is to wait for ACS complete event, and then clear away
the above mentioned ch lists.
Change-Id: I55de1e94d1fc3ebb99891465131de11ea3204778
CRs-Fixed: 2519650
When channel switch, don't use tpSwitchChannelParams, fill
wma_vdev_start_req directly in LIM lim_send_switch_chnl_params.
Update wma_set_channel(struct wma_vdev_start_req *req)
PE/LIM call wma API directly for channel switch, don't post msg.
Clean up useless tpSwitchChannelParams.
Change-Id: I876207909ff0bc50f9ec1fbff639c0e9b7d03907
CRs-Fixed: 2529018
NAN_NDP+SAP concurrency is not supported. Disable all NAN_NDP
sessions on SAP startup.
Change-Id: I73284ef4f820dd15df808b9c44da5f09c6b5db26
CRs-fixed: 2524112
If wma ready event timeout, and pdev has been created but not
yet finished wmi_ready, so it will cause pdev object leak.
Fix is to release pdev without checking if wmi ready here.
Change-Id: Ib03a7a2733cd399064d68e4cb5ff8f699be62024
CRs-Fixed: 2525749
Host driver could not get correct timestamp of Rx AMPDU packet sometimes.
The reason is PTP timestamp is stored in PPDU_END info, only last msdu
description contain it.Rx indication which sent from target has limited
number of MSDU.If none of them is last msdu, Host driver will not get
the correct timestamp.
Add two parameters to record the last system time and timestamp. If
Host driver detect no last msdu in Rx indication, It will calculate the
timestamp according to the difference of two parameters and current
system time.
Change-Id: Iea94f5c0a681ec1d377cbed9dd5b00b100223cc7
CRs-Fixed: 2513659
Use the correct configuration parameter to enable the
vendor VHT IE support in SAP mode.
Change-Id: I15330d372fe2b83bb229aa967bea5d43813ada95
CRs-Fixed: 2526798
Currently the driver flushes the scan entry in the scan
db for the BSSID which it was connected to in deauth, disassoc
and lostlink case.
In case of disassoc, and deauth, ap is still alive, hence
there is a chance for connection, but in lostlink case
there is no chance as the AP is switched off.
So if the supplicant finds the scan result in the scan
cache, it would try connect with this, but since the AP is not
present, and cannot service anymore, it would result to a
failed connect attempt.
After several failure attempts, supplicant would blacklist the
AP for some time.
If the AP is alive again, the DUT cannot connect to it since
it is blacklisted. Hence this situation leads to blacklisting
a AP which did not send any assoc reject, and can service the
DUT.
Fix is to clear the scan cache so that supplicant cannot try to
send connect request for this AP to the driver, hence there
would be no point to blacklist the AP.
This would ensure the wireless connection with this AP in
future.
Change-Id: I14fb36ef588856750917d83c32644b135186def9
CRs-Fixed: 2525539
Currently the driver does not verify the channel of the
AP and adds that to the connect list.
If a connect comes to the driver for this BSSID, then the
driver sends the same channel to the FW to start the vdev
which results in an assert due to channel not valid.
Fix is to check the validity of the channel and send a
vdev start only with a valid channel frequency.
Change-Id: Ic5c8c446f8731b32123051126503b071428f122c
CRs-Fixed: 2515158
CONFIG_LEGACY_CHAN_ENUM has been removed. That macro needs channel number
based enumeration. Use channel frequency going forward. So change to
frequency based channel enumeration.
Change-Id: I234eb070a6dcfaf3325bbd523c19188d5b2bbd24
CRs-Fixed: 2513098
In __iw_set_pno if memory allocation for data fails the vdev ref is
not released. Also the osif code uses WLAN_LEGACY_MAC_ID instead of
WLAN_OSIF_ID to take the vdev ref.
Fix the vdev ref leak and use WLAN_OSIF_ID to take vdev ref in
__iw_set_pno.
Change-Id: Ibb7e10ad51e36bbbcf4238aa099e2a05818ea1c1
CRs-Fixed: 2525960
When WMI_IFACE_LINK_STATS_EVENTID is received, WMA layer should
check FW service bit to confirm if HW db2dbm conversion is
enabled or not, or the final results indicated to HDD layer
will be inaccurate.
Add FW service bit checking to make sure db2dbm conversion is
done by driver when HW doesn't support it.
Change-Id: Id369999e4d5a6805200de82d1e8caf3121582c40
CRs-Fixed: 2506620
It need rx chainmask to select noise floor when start spectral gen3
scan and rx data by DMA. So set rx chainmask before start spectral
scan.
Change-Id: I63efd8f5384537b5697ba809bb05fdd17e243210
CRs-Fixed: 2519366