Some SAP channel switch requestor will wait for channel switch
completion. Set sap qdf_event after sap hdd callback recevies
eSAP_CHANNEL_CHANGE_RESP.
Change-Id: I15e0733ac2bef6af55e02ff18f94cc2c86eb9811
CRs-Fixed: 2905918
Add change to support roam ho fail and roam invoke fail
indication in connection manager.
Change-Id: I8e4fed2ca4b9c6e95da86b0c37e39da8f2bc4953
CRs-Fixed: 2906319
TDLS teardown happens in high throughput
scenario as rx pkt count increment API
"tdls_update_rx_pkt_cnt" is not called
if hdd_is_current_high_throughput API
returns TRUE. The reason for this is due
to high cpu cycles consumed by
tdls_update_rx_pkt_cnt API.
As part of fix optimize tdls_update_rx_pkt_cnt,
tdls_update_tx_pkt_cnt API's for high
throughput scenario. In high throughput
scenario mostly the use-case is to increment
the pkt counter so move that logic to
the top of the API's.
Change-Id: I4eb0da3571c45b5ee91e051e251158af15f73973
CRs-Fixed: 2888746
When TDLS connection is made in 160 MHZ
for 11ax staions, the MCS rates for the
same aren't updated correctly.
Also, MCS rate can change in case the
connection between both stations is made
with AP operating in NSS 1x1, as there is
a check in lim_populate_he_mcs_set which
will disable MCS rates corresponding to
nss > 1x1.
To fix this, copy 160 MHZ mcs from the
staion parameters which gets updated in
change station. Also, use nss parameter
which is passed by lim_populate_he_mcs_set()
in the check which was used to disable mcs
rates corresponding to nss > 1x1. Thus,
peer station nss will be used to
determine whether to disable or not.
Change-Id: I23079aed3795202e6ae32583a220c1ed3227c1dd
CRs-Fixed: 2904540
Currently,there is an issue in hdd_adapter_iterator(), as it
is iterate till (n-1)th adapter. Due to this, in STA+STA+P2P
scenario, driver allows wlan0 scan when P2P connection in
progress as hdd_is_connection_in_progress() only check for
STA mode and miss the P2P mode.
Iterate till nth adapter as a fix.
Change-Id: Ia6e49b3a8372634756e89032ee9d599583160479
CRs-Fixed: 2907307
In Extended capabilities sent in assoc request, TWT capabilities
are included so 10 octets are present, but in set ie command,
only 9 octets are included.
Also the Beamformee STS <= 80Mhz capability is not populated
per band based on firmware advertised capability in the
set per band ie command, so there is mismatch in this field in
initial association and roaming.
Populate the missing bytes in IE sent via set ie command to
firmware, also update the beamformee sts capability per band.
Change-Id: I2d191cedface935970ed4f974c09c3b4c5acd477
CRs-Fixed: 2891017
Although sdxlemur attach HSP, but LFR3.0 is disabled and LFR2.0 enabled
in target, so add exception in default configure file.
Change-Id: Idabbe317fc0fcc194138beb7444d812cd60455a8
CRs-Fixed: 2854249
Supported rates and extended supported rates together checked
against max supported rates that is failing the processing.
Fix the value to check against the max rates.
Change-Id: I3a20c5ac496fbedda5b105d95a1af9a168a53864
CRs-Fixed: 2895899
Firmware sends TWT teardown with status code
WMI_DEL_TWT_STATUS_CONCURRENT_SESSION when a concurrent connection
is established. Currently host driver drops this event as the
status code is not WMI_DEL_TWT_STATUS_ROAMING_INITIATED or
WMI_DEL_TWT_STATUS_PEER_INITIATED.
Add support to handle TWT teardown event with
WMI_DEL_TWT_STATUS_CONCURRENT_SESSION status code.
Change-Id: I408ba960924b4daa1ca4f8337d7e0d1ce52c5fd9
CRs-Fixed: 2899563
Currently, DUT is able to detect the radar event
causing channel switch even if disable dfs channel
switch ini is set. Due to this, there is a chance
of unwanted CSA.
Adding check for disable dfs channel switch ini before
detecting the radar. If gDisableDFSChSwitch = 0 then
detect the radar event else ignore the radar event.
Change-Id: I977d93e47ee35026662d55a8e292c8790ddc7d31
CRs-Fixed: 2905871
Previously, the hw mode changing is not allowed when SAP is CAC
state in old target which supports 1x1 dbs. The reason is
some action frame would be sent out when chainmask changes in
those target. But for 2x2 dbs target, chainmask is not changed
and hence not action frame will be sent out.
Allow the hw mode change for 2x2 dbs target when SAP is CAC.
Change-Id: I2d123a7f0065a562048584f56d5dd7640aaaf975
CRs-Fixed: 2892813
Currently mdelay is used which leads to busy wait blocking CPU from
running other process, so use msleep which yields cpu for other tasks.
Change-Id: Ia7c76cfb1c950e78008f6fe19825733cbc261e50
CRs-Fixed: 2888309
session_entry->lim_join_req is NULL for LFR2.0 roaming case, but some
functions will access it like lim_check_oui_and_update_session(),
lim_get_cb_mode(). Temp assign session_entry->lim_join_req with
reassoc_req.
Change-Id: I1122f9dffea38741700599fbef10bb0d4972b1b0
CRs-Fixed: 2874885
When host driver receives RSO_STOP from userspace, HDD sends the
RSO_STOP down to lower layers and starts a wait for response upon
success status.
Below layers(connection mgr/CSR) ignore the RSO_STOP request and
return success if the current state is not RSO_ENABLED or
IN_PROGRESS. This keeps the HDD waiting for response and a timeout
happens after 2 seconds.
So, wait for RSO stop response only if roaming is in enabled state
to avoid this wait and timeout.
Change-Id: I3ed81c5da26ebe05d17fc37dc43665f1f7b7c8b2
CRs-Fixed: 2901494
Add new ini "enable_twt_24ghz" to enable/disable host triggered
TWT in 2.4Ghz connection. Check this ini value in TWT get
capability. The userspace will query the self capability before
triggering the host TWT.
Change-Id: I3544de89f438fc526f8a2554c6aeebcd25d6c415
CRs-Fixed: 2904775
On quad-core cpu paltform, the qdf_for_each_possible_cpu() iterate
8 times in the hdd_pm_qos_add_request() trying to add pm qos request
for CPU0~7, but only CPU0~3 actually. There is same issue in the
hdd_pm_qos_update_request()/hdd_pm_qos_remove_request(), it hit the
kernel waring about "called for unknown object" when try to update
/remove pm qos request for non-existed CPU4~7.
The fix is to use for_each_present_cpu() to traverse each cpu
to avoid the kernel warning.
Change-Id: I38fe4a6807452e11eb7230c2c194af7cbae28564
CRs-Fixed: 2902547
API sap_indicate_radar needs to return sap current
frequency instead of channel.
Change-Id: I62a4aae0604b11587a14d17d4c641262b8019ab3
CRs-Fixed: 2900489
This function call is not needed because the capabilities
are being sent post vdev start correctly. The call here sends
the capabilities incorrectly at a later time so the good
values are overwritten.
This reverts change I32af660724cfaecfe59da153fea9f98d24b0d4cb.
Change-Id: Ie57a598f1055ee6a3d5a5f9cd353724dc620ab1d
CRs-fixed: 2905402
Channel number may be same for different bands due to which
non-dsrc channel may be treated as dsrc or vice-versa.
Fix is to find channel is dscrc or non-dsrc based on frequency.
Change-Id: I349172713dda6880771e14231aeb1b4419a86e01
CRs-Fixed: 2902986
If the WLAN driver stops sending up beacon information
due to other WIFI operations (like scan and disconnection),
Driver must send pause indication to wpa-supplicant with
reason code defined in enum
qca_wlan_vendor_beacon_reporting_pause_reasons.
Currently, host sends invalid pause reason in case of
scan.
Fix is to send proper reason code in pause indication
in case of a scan.
Change-Id: Id99e5a29be09fbde2c23908ab1f85d40ca3d74b8
CRs-Fixed: 2890110
In TWT status query, the driver fills the TWT info frame enabled
flag if TWT info frame is disabled. This gives wrong information
to the userspace.
Set the TWT info frame flag appropriately if info_frame_disabled
flag is false.
Change-Id: I319da5aacaec792090c0eca05d2a4be8b280e3e0
CRs-Fixed: 2902548
In target_if_register_mgmt_data_offload_event(), check NULL value of
wmi_handle before it's used by wmi_service_enabled()
Change-Id: Iea51c59770258fd10468bb439f559094b563851f
CRs-Fixed: 2900533
Function hdd_ipa_update_rx_mcbc_stats()'s implementation
shouldn't be enclosed by macro SAP_DHCP_FW_IND, so move it out
of the block controlled by SAP_DHCP_FW_IND to avoid compilation
error when the same macro is not defined.
Change-Id: I1fa6d350f180dec3a82432f798f026b75ac89639
CRs-Fixed: 2903757