Add changes to handle transition to the 2 new states:
1. Roaming in progress: Switch to this state when roam
start notification is received from firmware.
2. Roam Synch in progress: Switch to this from RSO
STARTED state if roam synch indication event is received
from firmware. Change to this state is also allowed in
RSO STOPPED state if supplicant disabled roaming on that
vdev - to allow roam invoke to be processed.
Also query the state machine to get the roaming status instead
of using discrete flags at various layers. Clean the redundant
roaming in progress, roam synch related flags.
Change-Id: Ide20a30d9d8c20a96d8bba70367b51b8643cae09
CRs-Fixed: 2725443
If STA DUT receives assoc response with assoc response status as
eSIR_MAC_TRY_AGAIN_LATER, host starts a pmf comeback timer to
send assoc request again on pmf comeback timer timeout.
Change-Id: Ifb28e44af86daef90db7146572cdfae26dfcaa20
CRs-Fixed: 2728459
Currently, if fw doesn't send phy mode after roaming host itself
calculates phy mode based on band only. Host doesn't consider self
dot11 mode and returns dot11 mode based on 2g band or any other band.
Which may cause different phy modes in fw and host.
Fix: Calculate dot11 based on self dot11 mode, return dot11 mode based
on band only if self dot11 mode is not valid.
Change-Id: Ifa320e3bb8a2ae8cffc59c73501c0643dc3b65af
CRs-Fixed: 2725841
when CSA happens, peer delete will not call
SAP de-register flow, of which may lead adapter
sta_info struct dirty. When STA interface is assigned
new peer_id, it has possibility to conflict with
dirty sta_id in adapter sta_info list. So change to
sync peer delete and notify umac to clean sta_info.
Change-Id: I1703b2b45837e0b4c0814e5c95ae7f86b510e1fc
CRs-Fixed: 2713147
For FILS pmksa caching, the STA can use the PMKSA cached as
part of the full 802.1x connection. When FILS PMKSA caching
is used, the supplicant might not send the ERP keys in the
connect request. So add support to allow connection when
ERP keys are not received in connect request but FILS
PMK is present in the cache.
If the PMK cache lookup is successful for the bssid,
use pmksa caching to associate, else fallback to full 802.1x
to associate to the BSS.
Change-Id: I9fa67ee5978b7199da1cb638f7f321baed6e5913
CRs-Fixed: 2710402
Send Vdev pcl command on both connected STA vdev when sta+sta
roaming is enabled. Handle below cases:
1. When 1st STA is connected send PDEV pcl command for the
first sta. Set pcl_vdev_cmd_active false.
2. When 2nd STA comes up, Set pcl_vdev_cmd_active to true,
send vdev PCL for 1st sta before enabling roaming(disabled
as part of the connect on 2nd STA).
3. For second STA force dbs connection when
enable_dual_sta_roam_offload ini is enabled. Set the channels
of the 1st connected STA band as invalid and remove these
channels from the scan filter.
4. On disconnection of 2nd STA connection, clear the vdev
PCL sent for 1st STA and then send PDEV pcl command.
Also make changes to send set PCL command after roam init
is done before RSO start is done at firmware to avoid assert.
Post set pcl command from sme/csr through lim/wma/wmi to avoid
the above condition.
Disable roaming on the vdev before sending set PCL command to
avoid roaming on undesirable band & channels.
Change-Id: I6bd869015b7248fe5c5c90b6e2fa0174995be197
CRs-Fixed: 2725360
Enable compilation of the connection manager roam files with
Kbuild changes.
Add new API to store and retrieve the firmware scan channels at
mlme. Also add initial support to post SET_PCL command through
lim, so that it is not sent before ROAM init command.
Add changes to restrict connection of the 2nd STA to
channels on the other band of the 1st STA connected band.
This is done by filling only the allowed band channels in
the scan filters for the 2nd STA connection. If only
1 STA is active, it is allowed to connect on any band.
Add header gaurds for missed header files:
wlan_cm_tgt_if_tx_api.h
target_if_cm_roam_offload.h
Change-Id: Id2bce12b9663ed635ea46164169b088461aab870
CRs-Fixed: 2720341
In the noisy environment observation is, host sends SAE commit req to
AP and gets SAE commit response from AP, then host sends SAE confirm
req to AP but due to noisy environment AP miss the ack for SAE commit
response and keep sending SAE commit response even host send SAE
confirm. As host cleans SAE auth retry frames on reception of SAE auth
rx from AP, host cleanups SAE auth confirm req and disable SAE auth
retry timer. This leads to SAE auth failure. To avoid this host matches
auth frame's "sae algo sequence number" with last sent auth frame's "sae
algo sequence number", if it matches then only free sae auth retry frame
and deactivate sae auth retry timer.
Change-Id: Ia9ae2e5d82c696efdc0aaf4e04b6760b9829c510
CRs-Fixed: 2720436
For SAE auth frames, host configures auth retry timer to 1 second,
if host doesn't get ack for previously sent SAE auth frame then host
retransmit queued SAE auth frame once the periodic auth timer
triggers.
Due to noisy environment host may miss the SAE auth response, in this
case host needs to send queued SAE auth frame. Hence don't reset auth
retry timer on SAE auth TX ack reception.
Change-Id: I96456ce5cbe5fb2acc7005ff1d19c6e9eecc1764
CRs-Fixed: 2725359
For STA in 2.4Ghz band, host adds self HT supported channel width
capability in HT capability field of assoc request.
For WFA certification, expectation is to add self HT supported chan
width capability in HT capability field of assoc request.
Change-Id: I630423de03636e6c4ca07638dce6966c3ca381f9
CRs-Fixed: 2720908
TDLS Sta not initiating Add BA request or responding to Add BA
request from peer. For TDLS connection, legacy rate is
set to zero even though the peer capabilities supports OFDM rates.
The set of available rates from supplicant is compared with config
and rates is populated, which causes the issue.
Fix is to apply the correct rates provided from supplicant
change-ID: I66ce1b0ee4e5f96f9bb755a40ff7d8c46176087c
CRs-Fixed: 2719391