AP may send IEs in deauth/disassoc frames as part of disconnection.
Extract the same and forward to kernel through
cfg80211_disconnected().
Change-Id: I4ef339dcd1ecff64d6bed1de35621ecce5d8030a
CRs-Fixed: 2481912
disconnect_ies sent from userspace are cached in vdev mgr object.
Send the same in deauth/disassoc frames initiated from the driver.
Free the IEs once the frame is sent out successfully.
Change-Id: Ib223a9da7f5795bc10d717efe23c6106391070bb
CRs-Fixed: 2481909
Application sends disconnect IEs to driver through vendor command
SET_WIFI_CONFIGURATION by embeding in the attribute
QCA_WLAN_VENDOR_ATTR_DISCONNECT_IES. Extract the same and validate
to make sure it's not more than maximum IE length that can be
accomodated in deauth/disassoc frame. Cache the extracted IEs
in mlme vdev object.
Change-Id: I6c95aa1d4d8ef7d8ed3ad5be8832ef1f45c26a2f
CRs-Fixed: 2481908
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.
Change-Id: I0bd9248122b4f49274ee05a225ce6f880fede0cb
CRs-Fixed: 2468414
Add support for roaming in case the driver
detects a nud failure. The STA then would roam
to another BSSID, else if the roaming gets failed
the STA would remain connected to the same BSSID
as connected before.
Change-Id: Idbc99b0ce2f9cacd97564dd8cf9892120958eda2
CRs-Fixed: 2461675
VDEV UP command doesn't include right MBSSID information, it will
cause data stall issue and so on.
Fix is to provide right MBSSID information with VDEV UP command.
Change-Id: I0201722c14dee1b01b8dacc7e3095301fb02fd3a
CRs-Fixed: 2434405
CSA on DFS channels requires CAC period after RESTART response, peers
can leave during CAC period due to HB failure. But peers remain
connected in SAP and are not deleted.
Now if vdev down is called during CAC wait period, the peer delete
all is not called, and vdev delete is sent without sending peer
delete to firmare leading to assert.
This change adds the logic to internally disconnect all peers before
channel switch if CAC is required on new channel, i.e new channel is
DFS and pre-CAC is not done and ignore cac is not set.
Change-Id: I923fd11d1b9d4a2c606b19ff94baaf44397d3e20
CRs-Fixed: 2449104
MLME log macros like mlme_debug, mlme_err, mlme_info are having same
definition in legacy and common code. To avoid this redefination,
lagacy MLME log macros are renamed.
Change-Id: I71fbbcd1f74df73e82b799b318a9e9a95a3cb0c8
CRs-Fixed: 2446535
Disable OCE in STA vdev if any sta gets associated to SAP/GO.
This will improve the scan results in STA interface.
Without this fix firmware will do probe request deferral for 15ms
out of 28 ms , so 15ms is gone and rest is not sufficient dwell
time to get all AP probe responses.
Change-Id: Ie6f79c86025c53360c792c740a963ed8a1d9b936
CRs-Fixed: 2443190
Driver uses cipher stored in vdev to get the MIC length, which
may get updated if multiple peer(TDLS peer in STA case) get
connected to the vdev. Thus depending on latest peer cipher type
the MIC length will be calculated for all peers.
Add changes to store cipher info in peer and use it to calculate
MIC length for the frame if CRYPTO_SET_KEY_CONVERGED is defined.
Change-Id: I852e4b519f55d8020237989314f8506aa275f379
CRs-Fixed: 2444416
Driver uses cipher stored in vdev to get the MIC length, which
may get updated if multiple peer(TDLS peer in STA case) get
connected to the vdev. Thus depending on latest peer cipher type
the MIC length will be calculated for all peers.
To fix store cipher info in peer and use it to calculate MIC length
for the frame.
Change-Id: I8afbf9a3bb43c294dbacbbaa7fa0746600937d11
CRs-Fixed: 2428482
Update qcacld driver to move IBSS INI params to converged CFG
component and cleanup HDD ini entriesi
Change-Id: Id8e4c0505113e556a8d64915a648f17fc5c0daf5
CRs-fixed: 2358493
Store the ini and dynamic configurations in the
respective vdev's mlme priv obj.
Change-Id: Ib7a90937799a188dd729c91e7ee248d3287951c5
CRs-Fixed: 2349201
Define two different mlme priv obj structures
based upon the flag CONFIG_VDEV_SM, for the
support of dynamic nss, chains update.
Change-Id: I00f39eb82973da86233ddfc8bdcc94b6ca8a439a
CRs-Fixed: 2349200
Populate the ini and dynamic params from the mlme
component and store them to the respective
vdev component in mlme priv obj during vdev create.
Change-Id: Ic80526e51ba97c24b5340843fc97406a6ba4c7ef
CRs-Fixed: 2347504
LFR2 uses ft reassoc, whose process is different from general
connect.
1.ft reassoc, normal reassoc and assoc, all of 3 need deliver
event WLAN_VDEV_SM_EV_START to SM, but need different handler.
2.ft reassoc send vdev start when add bss, not switch channel.
Change-Id: Ieefbcf0a28867be3c8a86d9a912143857c54fe06
CRs-Fixed: 2334194
Rename mlme_update APIs in wlan_mlme_main.c to mlme_init as these
APIs initialize the MLME structures and init is a more appropriate
for these APIs.
Also re-order defines in CFG_MLME_ALL to be in alphabetic order
similar to CFG_ALL
Change-Id: Ia8e10d86c62cc46230ef4c3d51c9588eaa1a5477
CRs-Fixed: 2318497
Fixed the naming conventions of APIs and files for MLME component.
Internal MLME component only APIs are in wlan_mlme_main.h/c files
under core.
APIs exposed to other components are in wlan_mlme_api.h/c files
under dispatcher.
APIs exposed to HDD are in wlan_mlme_ucfg_api.h/c files
under dispatcher.
mlme_init/deinit, mlme_psoc_open/close are called from HDD,
so made that as ucfg APIs.
Change-Id: I049008ceaa86ca52acd3ad9a02f903a732117d1f
CRs-Fixed: 2309276
Add the basic infra for MLME CFG items and the APIs to be used from
other components.
Change-Id: I39654de8f7266089d574b85437a19e8d21f91249
CRs-Fixed: 2293825