qcacld-2.0 to qcacld-3.0 propagation
-In case CSR is already connected and it receives connect with the
same profile, csr will silently return and try to send the connect
success to HDD. But if roamInfo staId is 0 this roam command is not
removed from sme active list and leads to active list timeout.
This back to back connect to CSR can happen if HDD and CSR go out
of sync and is taken care already.
-Also if disconnect is received in case scan for ssid is in progress
it will be dropped and roam session state is set to disconnecting.
But this roam session state is not reset for the fresh connection
and thus if next connect also issue scan for ssid the connect
command will be dropped assuming disconnect is in progress.
This change removes roam cmd from sme active list in case of
above failure and resets roam session state for fresh connections.
Also does some cleanup in HDD disconnect command.
Change-Id: I222626f1da6bdad83a5264668dde9aafd3dda149
CRs-Fixed: 953196
qcacld-2.0 to qcacld-3.0 propagation.
If MC thread stall while waiting on any event, In case of WPS,
probe requests may get accumulated in PE message queue.
Now every time MC thread process a probe request,
eWNI_SME_MGMT_FRM_IND msg is posted in SME message queue. But
unless PE queue is fully processed SME queue won't be processed.
This will gradually use all vos message wrapper.
To avoid this register a callback to send management frame
indication directly to HDD from PE which avoids posting message to
SME queue.
Change-Id: Ib83700825112cc52dade594909bfa8993909ac29
CRs-Fixed: 944961
qcacld-2.0 to qcacld-3.0 propagation.
1.Use iw tool to let dut connect to remote ap, dut is working
on wlan0.
2.At same time, use hostapd to start sap also on interface
wlan0.
In item1, before connect to ap, dut will do an internal scan
to search ap, if scan result matched configured ap profile,
dut trys to connect to ap.
In item2, when starting sap, found it's sta mode it will try
to disconnect dut with remote ap and close sta session.
#1 If ap start action happened in item1's scan period, trying
disconnecting won't take effect as currently sta has not yet
connected with remote ap.
So after item1's scan finished, dut continues to do connection.
#2 During closing sta session, sme issued eSmeCommandDelStaSession,
as currently sta is doing connection, so session is in started
status, this cause closure failed, so there is no chance to remove
cmd in smeCmdActiveList.
While cmd pending in smeCmdActiveList for 120s, driver issued crash.
The solution is in item1 after scan complete to check whether it's
needed to start following connection. If stop action has been issued
during scan period, then don't do the connection.
Change-Id: If632e21cb13277fba371ff1bf8df97febf856d09
CRs-Fixed: 923375
Add event handler for oem data response event from FW.
Add new boolean member to differentiate the response
generated internally and one coming from the FW.
Change-Id: Ia906c5dcbb7e560fd78ccd96fc47c7801b33aa6a
CRs-Fixed: 942261
rssi_raw should not be updated when the channel
in probe response does not match the channel in BD.
Added rx_channel field to beacon descriptor passed from LIM to
CSR. Channel check is performed in csr_remove_dup_bss_description()
before computing new averaged rssi.
CRs-Fixed: 873549
Change-Id: Iefacbf73f880e9d0c957ad83839dd2203fdf862d
qcacld-2.0 to qcacld-3.0 propagation
Add raw rssi in the beacon header from WMI to beacon descriptor.
Pass it up to SME and report it to supplicant through a call to
wlan_hdd_cfg80211_inform_bss_frame().
It can be enabled as a .ini configuration parameter "gInformBssRssiRaw".
Default is 1, it will report raw rssi by default.
Roaming decisions are based on rssi field of beacon descriptor,
its interpretation and usage are unchanged.
CRs-Fixed: 815344
Change-Id: I6dacdc0b333c093d16a74f8cf36471dfc183ce56
qcacld-2.0 to qcacld-3.0 propagation
Extended Supported Rates are filled in Assoc req based on the
dot11mode and in Case dot11mode is 11A it's not filled.
Some AP have Basic rate in Extended Rate set in 11A mode.
Thus AP reject the association as Driver does not sent the extended
rate set in 11A mode.
Removed the dot11mode dependency for Extended Supported Rates.
With this change if AP have Extended Supported Rates driver will
add the Extended Supported Rates IE in Assoc req.
Change-Id: Ibd1c98a7cfae46988ff4434579edde7d4222841d
CRs-Fixed: 903270
qcacld-2.0 to qcacld-3.0 propagation
If preauth is in progress with too many APs in the roamable AP
list and at the same time disconnect is received from supplicant as
part of unload, the deauth req will be queued in sme pending list
till csr completes the preauth process.
Now as part of unload, driver may purge the sme pending command list
and with it the disconnect command may also get removed if preauth
takes too much time.
This will lead to DEL BSS missing before HAL STOP and thus crash.
To avoid this abort the preauth process once disconnect is received.
Change-Id: I1c35f0c7e38295cfadafdad69f0b9a99ba61404c
CRs-Fixed: 942579
Replace tSirMacAddr with cdf_mac_addr in tSmeIbssPeerInd and
tSirIbssPeerInactivityInd.
Change-Id: Ie83aa414e312431aeb7f730a3f8027ea960acc36
CRs-Fixed: 898864
Replace tSirMacAddr with cdf_mac_addr in sSmeMaxAssocInd and
tSirSmeGetAssocSTAsReq.
Change-Id: Ie36a22b5ee5c823833981b51ef91525f6c6af692
CRs-Fixed: 898864
Get rrm capab from mac_ctx in function sme_get_config_param().
This ensures that subsequent calls to this function will correctly
update rrm config.
Change-Id: Iddaae66b94ccaa127f08fd0a897bc986a959a0eb
CRs-Fixed: 955114
In case prefer 5 GHz preference is set, move the 5GHz channels ahead
of 2GHz channels in channel list as used in Early Stop Roaming Scan
feature. This ensures that while roaming, when these features are
enabled DUT will scan 5 GHz channels first and roam if a candidate
AP is found.
Change-Id: I96d997560a3eca5fd378aa3ed78c5766d097cafd
CRs-Fixed: 951959
qcacld-2.0 to qcacld-3.0 propagation
The firmware reports the Enhanced Green AP (EGAP) service
(EGAP_SERVICE) feature flag to indicate the support of EGAP
feature.
The EGAP is to offload the legacy Green AP feature to firmware
in order to aggressively enable the Green AP other than wait
for host control latency.
Add the knob to hold the EGAP infomation when firmware support
it, also populate the information up to hdd target config.
And then add a SME interface to allow hdd layer to configure
the EGAP configuration.
Change-Id: I9be927369e7cf07731f8e9ba49d65224e05c340b
CRs-fixed: 929063
The condition #ifdef WLAN_FEATURE_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Remove #ifdef FEATURE_WLAN_LFR compiler flag from SME so that the code
will always be compiled in.
CRs-Fixed: 936683
Change-Id: I86b9e3dee6b92c89a54de6df769800c31fc3ad17
The condition #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING is used to include
some of the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Remove #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING compiler flag from SME
and CSR so that the code will always be compiled in.
CRs-Fixed: 936683
Change-Id: I63a43b7cfd9360341d4ac4126cbf9fc8ac89071a
The condition #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING is used to include
some of the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Remove #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING compiler flag from HDD so
that the code will always be compiled in.
CRs-Fixed: 936683
Change-Id: I777d48f26aea36383747281bd4fef2eadc7beefb
qcacld-2.0 to qcacld-3.0 propagation
The preauth session is not deleted if the deauth is from host
(eCsrForcedDeauth).
Adds the check to delete the preauth session and stop the
preAuthReassocIntvlTimer timer, in case of deauth from host.
Change-Id: I181344b0f3a41ff5c3a77f30b4c8cf80557c23b5
CRs-fixed: 649521
qcacld-2.0 to qcacld-3.0 propagation
if AP has RSN IE and supports AES, driver goes on to check
WPA IE and if it contains only TKIP in unicast cipher, it
sets cbmode to 0 (20Mhz).
Added a check to ignore the WPA IE if RSN IE is present and take
decision on cbmode with respect to RSN IE only.
Change-Id: I4eaf8a2d6a9f3a43e74e606045af995fbaa800ad
CRs-Fixed: 739345
qcacld-2.0 to qcacld-3.0 propagation
Currently, MTRACE logs are not captured for the events posted
from SME to HDD. So, add missing MTRACE log in hdd_smeRoamCallback()
and also add missing eRoamCmdStatus enums in get_eRoamCmdStatus_str().
Change-Id: I26ef8c651b7b873939341b643056ff977a40ea19
CRs-Fixed: 855875
qcacld-2.0 to qcacld-3.0 propagation
As a part of logging enhancement,to make logs more
interactive, changed pmcstate,scanType etc from
numerical values to human readable string in
Protocol stack.
Change-Id: I589088c2c5fd0afa106a1d0773a2ff525b0dd083
CRs-Fixed: 638916
qcacld-2.0 to qcacld-3.0 propagation.
Log the RSSI info of the disconnect if the STA disconnection is
due to STA kick out event from FW.
Change-Id: I0fad3f8d0e7990f4211b7840bed7605a4b97f3cb
CRs-Fixed: 874197
qcacld-2.0 to qcacld-3.0 propagation.
The SME OEM DATA request API supports a callback function pointer,
however this callback functionality is obsolete. Therefore remove
this functionality.
Change-Id: Id06910841ad625412ba1f3222407e471f4d7edd7
CRs-Fixed: 911404
As per the requirement when IBSS connection co-exist with STA
connection and scan request is coming from STA adapter,
don't include those channels which fall in same band as IBSS
channel's band.
Change-Id: Ifb42ea6b463bd5020bf544eee504b9c3ceefcfc2
CRs-Fixed: 953788
Provide necessary code changes to support IBSS+SAP concurrency for
emulation platform only.
Change-Id: I76dc023bd48ee79ba706f5a7009b1d8462c6b712
CRs-Fixed: 953796
Make necessary changes to support IBSS+STA concurrency for SCC and
2G+5G MCC. Don't support intraband MCC due to known limitation
for this specific concurrency.
Change-Id: I325b5f51abeee3da0a75f90723c8b882f71dbef2
CRs-Fixed: 953788
LFR3 to indicate the change in IP subnet to user space (supplicant).
This enables the DHCP refresh in case of IP subnet change during
roaming.
Change-Id: I9842a28461346fe97ab39f5a11ae504f2e32fa16
CRs-Fixed: 876335
Add LFR subnet detection support to protocol stack and
device access layers. In LFR3, the device may perform multiple
roams (may be across multiple IP subnets) without the knowledge
of wlan host. The LFR subnet detection feature enables the device
to regain IP connectivity if the firmware has roamed across the
subnets which otherwise is not possible without disconnect and
reconnect.
Change-Id: I60959af8b6ed330313a7f08f8aa1edfb63938bb8
CRs-Fixed: 876335
At present and going forward ESE and ESE_UPLOAD will be the
de-facto approach of supporting ESE.
There is no support for #ifndef FEATURE_WLAN_ESE_UPLOAD block of code.
Hence clean up this code.
Change-Id: I1e1307ec3430353496b1cf7aaa2eb5291ca1d5b2
CRs-Fixed: 949634