1.This change fixes the use of uninitialized
variable in host driver.
2.Adds NULL check for num_psocs in mlo_peer_calculate_avg_rssi to
avoid undefined behaviour.
Change-Id: Ifbfef42b5930dfe15736a75a74e81155c5f1fbce
CRs-Fixed: 3297794
Current issue:
During disconnect host sends RSO STOP command to FW
and expects a response from FW before continuing disconnect.
If roaming is disabled (from supplicant or due to race condition)
before sending RSO STOP cmd then FW does not respond to the request
and host will assert.
Solution:
To handle this case after rso timer stop expiry continue with
disconnect and clean up the rso state.
Change-Id: Iac7b25d881702b87f946fe0ecfba02b1d806f06b
CRs-Fixed: 3301394
While generating the scan entry for TX VAP, the decision to
strip MBSSID IE from the TX VAP beacon, will be taken if the
platform supports 11BE.
CRs-Fixed: 3300515
Change-Id: Ie45da7a02a2811172b2403d5fd1bc4b9271432d5
- target_if layer was calling UMAC layer wifi_pos_get_rx_ops(). This was
leading to compilation errror in WIN platform. Hence, added target_if
layer API target_if_wifi_pos_get_rx_ops().
- WMI_RX_SERIALIZER_CTX is used to register PASN peer create and delete.
WIN platform does not use the above context. Hence, use WMI_RX_UMAC_CTX
for WIN and WMI_RX_SERIALIZER_CTX for MCC.
- WIFI_POS rx_ops callbacks are registered in target_if layer. But, these
callbacks are called by UMAC component. Hence, move this registration
function to UMAC layer.
- Add an API to convert host PASN peer type value to target defined value.
Change-Id: I2a262121f959c2343e88158b94468d104b9e164c
CRs-Fixed: 3289852
Any error during ext/ext2 processing should stop normal init
path and return error. Without this, wrong values are passed
to firmware in WMI init which result in firmware assert.
Add proper handling to take care of failures during svc ready
message processing
Change-Id: Id22714a983d1dc2fe7300a178933cd05bf870a55
CRs-Fixed: 3290131
In the case of finite Spectral scan, the spectral scan will be stopped in
the target once the requested count of spectral reports got generated.
The Host will not be notified of this stop scan. To synchronize the Host
data structures in accordance with the target, we explicitly stop the scan
once the last report is received. In the current implementation, the
stop_scan() is called at the beginning of the last report processing and
we continue processing the last report. As part of the last report
processing, we could access the data structures that were reset during
the stop_scan(). To fix this, stop the spectral scan at the end of the
last report processing.
Change-Id: Iecfa4e72ccbedae77ee2a57e9283910e980121d5
CRs-Fixed: 3287136
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined, WMI_HOST_PEER_*
can be translated to WMI_PEER_* through API
convert_host_peer_param_id_to_target_id_tlv.
If ENABLE_HOST_TO_TARGET_CONVERSION is not defined, WMI_HOST_PEER_* in
common code is sent to firmware directly, which is incorrect.
Define WMI_HOST_PEER_* to WMI_PEER_* if ENABLE_HOST_TO_TARGET_CONVERSION
is not defined. Then WMI_HOST_PEER_* can be used in common code.
Change-Id: I50aa604d8822a81eed223c8551e542007929424e
CRs-Fixed: 3271470
Adding feature flag for Health Monitor so that it can be disabled
for 16M and 256M profiles
CRs-Fixed: 3277434
Change-Id: Ibbbe582acd15ebff7e189fcbaa36429ea519db37
When set_fcc_channel is set, host driver sets tx_power info about
channels 12, 13 to hardcoded values. Now firmware sends information
about channels 12, 13 to host driver and currently there is no
support to extract and store this information and use it to
modify tx_power of channels 12, 13 in host driver.
Add support to store the tx_power of channels 12, 13 received
from firmware and use this to modify tx_power of fcc channels.
Change-Id: Ie7b20a75bb09956a70b7b133ce7ce9beb8db138b
CRs-Fixed: 3270676
Set dfs object parameter if host and fw supports 320 MHz bandwidth.
i.e. dfs->dfs_is_bangradar_320_enabled. Set to true if the host and
firmware support the bandwidth is 320 MHz. If there is no support, set
false.
Change-Id: I210823c448450f89dc65937201b4839168369d18
CRs-Fixed: 3270525
FW-Host Handshake for BANG_RADAR_320_SUPPORT
1. FW advertises its capability of processing BANG_RADAR_320_SUPPORT
id via wmi service bit 'wmi_service_bang_radar_320_support'.
2. If the host is capable of processing the "BANG_RADAR_320_SUPPORT"
event id, host sends the capability in WMI_INIT_CMDID setting a bit in
host_service_flags
Change-Id: Ia26a7b8e8ee78aceb801d0053770379bd6d5a9cb
CRs-Fixed: 3270525
Remove unused param key_rsc_counter of set_key_param
structure, as key_rsc_ctr is used to send key rx sc
counter to fw and rename key_rsc_ctr to key_rsc_counter
as win is using key_rsc_counter.
Change-Id: Id58aabb30d772f8f620ac9f96890fcac0193777b
CRs-Fixed: 3256574
Currently, host driver installs keys for STA, SAP and P2P
iface. A peer validation is present to do so in these modes
in crpto API(target_if_crypto_set_key). NAN vdev also needs
same support for NAN pairing protocol but doesn't have a peer
as such.
So, bypass peer validation for NAN vdev.
Change-Id: Ief003d096da6f241ff13329c49a32cd896dec9db
CRs-Fixed: 3257754
Remove unused local variables in the Spectral module to
address the compiler warnings.
CRs-Fixed: 3272706
Change-Id: I91c806a9bd6413eb559992a0b184d8bd9c4ea4d0
Hif and tgt if layer changes to handle Umac post reset
and post reset complete events from firmware.
Change-Id: I08bbd90741708fe76b2db0371ccfda7bfe7b0b2d
CRs-Fixed: 3267222
This is used in streamfs buffer size.
This is done in consideration with using upto
504 tones in place of 512 tones for CFR.
Change-Id: I7e45697e47f4b818b472b1bd8e91d785e676c506
CRs-Fixed: 3260185
Call UMAC reset initialization API from soc_attach_target().
FW exposes a service bit for this feature, use that to conditionally
enable this feature. Also, add default log levels for this feature.
CRs-Fixed: 3253464
Change-Id: Ia7c9cf07a7ab7b000ebe452ab074a82173b70129
WMI_SPECTRAL_CAPABILITIES_EVENTID registration returns QDF_STATUS_E_FAILURE
on failure which is not required as it is causing crash on failure where
event registration is failing i.e., Hawkeye + Swift
Change-Id: Id11d76941b12d0ee249d8f6e86612b351b732d78
CRs-Fixed: 3255827
Currently, we are hardcoding the detector ID to mode table for different
chipsets. Starting QCN9224, the target sends information regarding the
detectors participating in that Spectral session in the FW_PARAMS event.
Use that to update the Detector ID to mode table.
Change-Id: Ic09358e0c3b9ac0166b39f5ce445a83697146d4a
CRs-Fixed: 3253076
Currently, the Spectral detector list building logic assumes that only
5 GHz or 6 GHz participates in SBS modes. With Split-PHY mode in QCN9224,
even a 2.4 GHz radio can participate in SBS mode.
So, consider this case as well while building the detector list.
Change-Id: I99c841584c52785e94c8ee1b0d59494cbdd37f42
CRs-Fixed: 3252986
Extract EML and MLD Capabilities from Target via
wmi_service_ready_ext2_event. These values can be
used while advertising EML and MLD Capabilities.
Add helper function to get EML related delays in
Micro Secs from values got from EML and MLD advertisments.
Send EML Capabilities received from node to Target
via WMI_PEER_ASSOC.
CRs-Fixed: 3225495
Change-Id: Ibfa2ff8dbf11d4293125331376a7986e611d5f63
WMI_SPECTRAL_CAPABILITIES_EVENTID event will be sent by the target SW to
indicate the different capabilities of the Spectral HW.
Add support to process this event and extract the capabilities.
Change-Id: I03b3236b6def98d24e77b2a9ea51ee866e62e6fe
CRs-Fixed: 3238450
Firmware advertises WMI_SERVICE_DELETE_ALL_PEER_SUPPORT
capability to indicate vdev peer delete all command support.
PASN peer relies on the WMI_VDEV_DELETE_ALL_PEER_CMDID
command to delete the PASN peers before vdev delete.
So allow PASN peer create only on targets that advertise
WMI_SERVICE_DELETE_ALL_PEER_SUPPORT.
Change-Id: Ib94d9e14e34dd1e5c25bf6946e0d59fe83fd6dd3
CRs-Fixed: 3229438
Add infra to support Dedicated Bluetooth Antenna Mode (DBAM)
feature. It is used to switch between dedicated antenna for
BT and shared antenna for WLAN and BT.
Change-Id: I21688093674ef9b63ee811df9168a31bd71c56b5
CRs-Fixed: 3239895
Add support for initiate pasn authentication using the vendor
command: QCA_NL80211_VENDOR_SUBCMD_PASN
Fill the below required attributes to initiate PASN:
QCA_WLAN_VENDOR_ATTR_PASN_ACTION
QCA_WLAN_VENDOR_ATTR_PASN_PEERS
QCA_WLAN_VENDOR_ATTR_PASN_PEER_MAC_ADDR
QCA_WLAN_VENDOR_ATTR_PASN_PEER_SRC_ADDR
Change-Id: If33f54eafe5986b4571cc21a80fb0b61578db116
CRs-Fixed: 3232261
Fix TWT configuration for 2.4 GHz PHYB mode MAC.
Change is macro protected. Wlan resource config sets twt_ap_pdev_count
to number of Radios per psoc. But for 2.4 GHz vap coming up in PHYB
mode needs the value 2 if only one radio is enabled per psoc. WAR is
done from host driver to enabled TWT certification process. Actual fix
must be done from Firmware code.
Change-Id: Id29692097ee555c94c54f53d7540eb108fbe98e0
CRs-Fixed: 3238210
Add change to fetch and save the WMI service capability
bit of FW to support vendor handoff control feature
using service bit.
Change-Id: I6bc85f2807032bf84d391f34c814c91de906ab42
CRs-Fixed: 3225147
Since more than one components depend on reap timer of
monitor status ring, add bitmap to record the trigger
sources of the timer and refine the APIs/calling functions
accordingly.
With this change:
When a new start request comes, if the source is
CDP_MON_REAP_SOURCE_ANY, skip bit set, and start timer
if any bit has been set in the bitmap; while for the
other sources, set the bit and start timer if the bitmap
is empty before that.
When a new stop request comes, if the source is
CDP_MON_REAP_SOURCE_ANY, skip bit clear, and stop timer
if any bit has been set in the bitmap; while for the
other sources, clear the bit and stop timer if the bitmap
is empty after that.
Change-Id: Idaa7837c4b93b247ff2236aa5072d309fa9548c2
CRs-Fixed: 3190347
This enables the option to configure when a peer's
TID queue needs to be flushed. This is required to
discard packets that are no longer useful to the application.
Change-Id: I558debff043fc0c8038e5f5f2c815b64c90e1561
CRs-Fixed: 3130422
chan_params structure is uninitialized, due to which variables
inside the chan_params structure have garbage values.
To avoid this, initialize the chan_params structure.
Change-Id: Ic09c0a2d24c2a1eac8f076c7bbd4d25d147370fd
CRs-Fixed: 3205502
For legacy targets, MLO-specific event-handlers are not
supported.As this is not fatal, the caller of the
wmi_event_handler_register API should not treat this as
failure.
Change-Id: Ic6a36c933b46cfcbe860f573af290cac4667de44
CRs-Fixed: 3181774
Set/Get the management Rx REO feature capability to psoc
using the correct APIs.
CRs-Fixed: 3201829
Change-Id: Id925be4a6930a1a3ec05bfdd67ef6518a5cb2cea
In function reg_freq_width_to_chan_op_class_auto, global_tbl_lookup is set
to false for 2.4 GHz and 5 GHz without considering the global opclass set
by user command. This results in wrong opclass information in eCSA.
Add an api to check if global opclass is set and update global_tbl_lookup
accordingly in reg_freq_width_to_chan_op_class_auto.
Change-Id: I069131d6068fb546f2b59f1e752a3c8c50f15759
CRs-Fixed: 3168817