Regarding to the go+sap scc on dfs channel, sap can follow with go
to the same dfs channel, but sap tx is hung.
Since the host set the dfs_cac_block_tx by mistake when ap started,
though the ap skip the cac because the scc go finished the cac
procedure, then dfs_cac_block_tx has no chance to be reset.
The fix is to take account of dfs cac state to determine the proper
dfs_cac_block_tx.
Change-Id: I7a35225711f587b83d2fc381108d7d3f15893867
CRs-Fixed: 2631457
Add sanity check for mlme_obj in wlan_mlme_update_oce_flags to avoid
illegal memory access when mlme_obj is not valid.
Change-Id: I7dfd72cc704d3f9c11241fb2217f0b2ab7eda3d3
CRs-Fixed: 2669262
On Genoa, when 2G SAP exist, when STA roam from 2G to 5G by LFR2,
hardware mode need switch from single MAC mode to dbs mode.
Since disconnect current AP happens before reassociate, in
hw mode response handler, found original AP disconnected
already on host side, then don't reassoc new AP, it's regression
of Change-Id: I794c6bf3f749bba9c339fd18b5202d50091b73a7.
Fix: In hw mode response handler, don't check connect state of
current AP when reassoc new AP.
If found disconnect pending during host roaming, don't reassoc.
Add debug log when error happens.
Change-Id: Id836ac84a4156e9db28f6892c8c9eb5210dfb6e0
CRs-Fixed: 2668869
When NDI is removed from framework, driver deletes all NDPs
as part of eWNI_SME_STOP_BSS_REQ. Driver posts WMA_DELETE_STA_RSP
to lim from wma just after sending PEER_DELETE request to
firmware for NDP and ignores the DEL_STA response from firmware.
If there are multiple peers, all peer delete requests are sent
back to back to firmware. NDI peer delete and NDI VDEV delete
request also follow these immediately. All these commands
can go back to back to firmware as driver doesn't wait for
any of these responses.
But firmware needs some time to send NDP end frame to
the NDP peer after receiving NDP peer delete. Firmware might hold
the NDP peer delete request till it successfully sends the frame
to the peer.
Driver must wait till the NDP peer delete response is received to
proceed further with NDI cleanup/NDI vdev delete.
So, send NDP_END_ALL to firmware to let the firmware
initiate cleanup for all NDP peers. Use ucfg_nan_disable_ndi to
do the same which takes care of waiting for response from firmware
indicating cleanup has started. Then wait for all NDP END
indications and unblock the wait upon receiving last NDP END
indication.
Change-Id: I250883b3e9759ad903c3ce17f8c2c0b74a81f496
CRs-Fixed: 2619757
Currently there is no ini to control the rrm support on
SAP.
Add a new ini to enable/disable rrm on SAP.
Change-Id: Idef8da807bc5f8e2b4a1d61997824006e78b0cf6
CRs-Fixed: 2658926
Currently NDP_END_ALL request is posted to serialization queue but
not removed even after getting response from firmware. The timer
expires after 4 seconds and the message is gets dequeued as part
of timer handler. Dequeue the request from queue after getting
NDP_HOST_UPDATE from firmware to avoid blocking the northbound
APIs for this 4 seconds.
Change-Id: Ie8045f2460f7ac27732d4070ed79e5a61aab0bd2
CRs-Fixed: 2662869
Enhanced the log printed in wma_sap_peer_send_phymode to add fw_phymode
Also, Used peer phymode as well to check for 11b mode.
Change-Id: Ib009cf0d7ffbd0512a41c9e6fe84e674685f63ec
CRs-Fixed: 2670345
Currently, peer can be accessed after deletion in hdd because
cdp_clear_peer called via tdls_process_del_peer_rsp
tries to remove peer from physical device after deletion of
peer in datapath.
Fix is to remove cdp_clear_peer from hdd as it is handled by
cdp_peer_delete.
Change-Id: Ibdeb9a2a8dcf3318d66a48b9e9c7ca4d5cd74cb3
CRs-Fixed: 2663555
During tdls peer delete, wmi command WMI_PEER_DELETE has been
send but later on from driver wmi command for peer update is
send without checking for peer reference before sending to fw.
Fix, to check for peer reference before posting the cmd to fw.
change-ID: I216d1ad726af3369c227ae566e22949cadb8300c
CRs-Fixed: 2667811
Currently, There is no check for new report to find if
previous beacon report request is in progress.
So whenever a new beacon report request comes,
it is processed without consideration of any ongoing
beacon request processing.
Fix is to add a check of request in progress and append
err code BCN_RPT_ERR_PREVIOUS_REQUEST_PROGRESS in
measurement report response. To find that curr report
request is in progress, add a check
mac_ctx->rrm.rrmPEContext.pCurrentReq[index]. For valid
mac_ctx->rrm.rrmPEContext.pCurrentReq[index] err vsie
will append.
Change-Id: I91127c5c9ccaa19f20c29c85524b89b873e02e17
CRs-Fixed: 2668127
rmf status is applicable only for action/deauth/disassoc frames,
so check rmf status only for those frames, this can reduce
overhead of checking rmf status for each and every management frame.
Change-Id: I4fccf921051d624d01e94ee6ef8d9a6b170c7675
CRs-Fixed: 2656967
Currently, in hdd_sta_akm_suites akm suites are added
without verifying that these are supported by kernel
or not. Support for WLAN_AKM_SUITE_8021X_SUITE_B and
WLAN_AKM_SUITE_8021X_SUITE_B_192 akm suites is added
from kernel 4.12 that can cause compilation issue for
kernel version lesser than 4.12.
Fix is to add a check of kernel version for
WLAN_AKM_SUITE_8021X_SUITE_B and
WLAN_AKM_SUITE_8021X_SUITE_B_192 suites before adding
as an element in hdd_sta_akm_suites.
Change-Id: Id8c5d1e01da62d63cfe99353e5f9dae5814baaf9
CRs-Fixed: 2667625
Do not send the reject AP list to FW if the driver
is in recovering state (SSR) as the FW is already
down.
Change-Id: I31d815e215ca703574348a287f294da46937670f
CRs-Fixed: 2667934
In case wait for ready event timeout from fw, need to
suspend fw firstly, otherwise fw is not aware host
will free resources.
Change-Id: Ifb7ab7fcf0cf468d59dc462dfdb27851fa4e596e
CRs-Fixed: 2669433
Currently, the driver trims the channel list with
the PCL if external acs policy ini is set, and
if the channels are unsafe then that can lead
to 0 channels and the SAP can fail.
Fix is to check whether the force SAP start ini
is set and override the channel.
Change-Id: If245bf27deda0f6022343d7a175520fdd92d106b
CRs-Fixed: 2667742
If FW ready event is timed out, then add debug panic such that we can
collect FW ram dump reliably.
Change-Id: I61f19023675ec6d7bb4ff882d4a08f0ffcee1607
CRs-Fixed: 2670314
In function sme_qos_ft_handoff_required(), CSR_GET_SESSION() is
possible to return NULL pointer, so add check before de-reference it.
Change-Id: Iee4e1d03da550969b4da1b746e4325f59ab72146
CRs-Fixed: 2669223
Currently, only broadcast disassociation is supported
and deauth is sent in a unicast manner.
With peer delete all support, HDD sends a single call
to PE for broadcast deauth request. PE module sends a
single broadcast deauth frame and on TX completion,
calls vdev_mgr_peer_delete_all_send. This issues the
new WMI_VDEV_DELETE_ALL_PEER_CMDID to FW to cleanup
peers entries corresponding to VDEV ID and also flush
TIDS internally.
On receiving the peer delete all response, target_if
cleans object manager entries and datapath cleans up.
But PEER unmap is done iterating through all peer entries
individually. After this a single eSAP_STA_DISASSOC_EVENT
is received in HDD signalling the completion of broadcast
deauth procedure.
Change-Id: I928461606154380eef21a02cc7306921ceb9e16e
CRs-Fixed: 2585005
If STA sends RSN IE in assoc_req for SAP in open network
then check this scenario and reject the request. This prevents
Host from sending WMI_PEER_NEED_PTK_4_WAY in peer
flags which results in a firmware assert.
Change-Id: I8696c9ae33670d019a9c662a3fa9420311fa0629
CRs-Fixed: 2625911
The WLAN_POWER_DEBUG feature flag for power stats is not properly aligned
in the commit Ic395f393580fcd59faa4e4676f67a39ff37bdd1a and hence it is
addressed in this change.
Change-Id: I40236efa31e1d832884984536597122c04ecc269
CRs-Fixed: 2668142
Set NL80211_RRF_AUTO_BW flags for all regrules.
Kernel will calculate max supported bandwidth based on
the NL80211_RRF_AUTO_BW flag for adjacent frequency
ranges dynamically.
Change-Id: I86e6dee2c58f92b6cf4d8a2c11f510cef948243b
CRs-Fixed: 2661969
Currently auto ps timer is disabled when device mode is not monitor mode.
This is causing issue when device mode is FTM when ps timer won't be
started.
To resolve this, add check for FTM mode also before disabling auto ps
timer.
Change-Id: I7cf493f10676e170fcb7e50e343bb0d20de4d89c
CRs-Fixed: 2667942