qcacld-2.0 to qcacld-3.0 propagation
When disassoc request is received from peer and at the same time
if deauth request is received from supplicant, LIM cleanup
may not happen properly as there is a chance of session deletion
in limSendSmeDeauthNtf while cleanup in progress from
limProcessSmeDisassocCnf. This can result in not sending delbss to FW.
Hence, FW can crash when config bss is sent for new connection.
Following changes are added to handle this.
1. Add state eLIM_SME_WT_DISASSOC_STATE in __limProcessSmeDeauthReq
and allow host to post LIM_MLM_DEAUTH_REQ instead of invoking
limSendSmeDeauthNtf, where session is deleted.
2. Send eWNI_SME_DEAUTH_RSP if cleanup is already in progress to avoid
cleanup again. If mlm state is not eLIM_MLM_LINK_ESTABLISHED_STATE,
then it means cleanup is already in progress.
3. Return from __limProcessSmeDisassocCnf if cleanup is already in
progress.
4. Add check in limProcessMlmDeauthCnf to send deauth confirmation even
if state is eLIM_SME_WT_DISASSOC_STATE.
5. Add similar checks in limProcessMlmDisassocReqNtf to handle disassoc
from peer and supplicant simultaneously.
Change-Id: Ie19a7b79d835a5e5a77ef48f9379c1cf90dc38d7
CRs-Fixed: 878334
This is a qcacld-2.0 to qcacld-3.0 propagation.
The problem with the current code is we are finding whether connected or
pno_in_progress or extscan_in_progress in the same for loop and whenever
one of them matches, we break out of loop. It makes sense to keep
connected flag and pno_in_progress inside the for loop because both are
mutually exclusive. But same is not the case with extscan_in_progress,
this flag can be set to true or false irrespective of connected or
pno_in_progress.
Hence the fix is to move finding extscan_in_progress to a separate for loop.
Change-Id: Ie72ff7f7382adaea5626c0808a206d18c2916e0d
CRs-Fixed: 899322
This is a qcacld-2.0 to qcacld-3.0 propagation.
Currently WOW_NLO_SCAN_COMPLETE_EVENT is enabled on receiving
PNO match found event, but it is never cleared.
This is causing regular host wake ups with the reason
WOW_REASON_NLO_SCAN_COMPLETE even if pno match is not found in the
next successive iterations.
Fix this by enabling/disabling WOW_NLO_SCAN_COMPLETE_EVENT before suspend
based on the flag pno match is found.
Change-Id: I21d73de0c03e0c09b5a91a521d848e71eaf359e0
CRs-Fixed: 888964
This is a qcacld-2.0 to qcacld-3.0 propagation.
With RunTime PM feature enabled, after receiving the PNO matched event
RunTime PM puts the host back in WoW suspend after 500ms (default).
Since WMI_NLO_SCAN_COMPLETE_EVENTID is not a wakeable event, this event
does not wakeup the host hence PNO scan not completed and PNO is broken.
Fix this by making NLO_SCAN_COMPLETE_EVENT a wakeable event.
Host driver configures this WoW event only after PNO match is received.
Change-Id: I81cccc86942fc75bc63235038c50ba6edb0fee8b
CRs-Fixed: 884211
This is a qcacld-2.0 to qcacld-3.0 propagation.
1. Add log to print ssid, bssid, rssi, channel and country code
while connecting to an AP.
2. Add log to print disconnect reason when disconnect request is
received from user space.
3. Cleanup some of the logs moving it to appropriate log level
which are showing up as ERROR level in bug report.
Change-Id: Id8ea69a14a18565c226f89a8a5e10be46741d76d
CRs-Fixed: 914336
This is a qcacld-2.0 to qcacld-3.0 propagation.
Increase the maximum config ini items from 512 to 1024.
Change-Id: I5c4958d5c743f1e0b03a4f7b41e21ff9787ccd07
CRs-Fixed: 914336
Propagation from qcacld-2.0 to qcacld-3.0
- Current AGC registers dump logic is not correct and its not
reading correct target registers
- Add correct AGC register read recipe to read correct AGC data
- Wake up SoC before reading any target register
Change-Id: I38016f91bf3d124e93e304522058e97daa711f4a
CRs-Fixed: 911554
Propagation from qcacld-2.0 to qcacld-3.0
- FW asserts after receiving P2P NOA parameter in non P2P GO mode
- Add P2P GO mode check in set NOA IOCTL and do not allow this command
in non P2P GO modes
Change-Id: Ie786dcf33fc50eacadb407d74ae5638da68cf0d2
CRs-Fixed: 919889
Restore the support for service ready extended
event since the required FW support is in place.
Without the service ready extended event, the
FW mode configuration and scan mode
configuration in the driver would be initialized
to zero i.e., all the dual mac features would
be disabled. Otherwise, the default values of
these two params would be set based on the
default values present in this extended event,
which is set by the FW.
CRs-Fixed: 923182
Change-Id: I31aa6420f3076f61008a809fe134b99f9b0dbc08
Sme is stuck due to scan active list mutex lock.
Release the sme scan active list lock if the
active list is empty.
Change-Id: Id05c642fe6fad30e40efa18a213158c331b5a502
CRs-Fixed: 943583
qcacld-2.0 to qcacld-3.0 propagation
Add supported class IE in beacon and probe response frames.
Change-Id: Ife4cb1b3db0119a9472cad0f861887c487b147d3
CRs-Fixed: 941466
qcacld-2.0 to qcacld-3.0 propagation
dfs_radar_found variable will be accessed in different context
so protect the same with mutex lock and synchronize the channel
switch triggered by application and dfs module.
Change-Id: I724d22cde9a77c187a17dffef13a9b4c9b2c27da
CRs-Fixed: 809527
qcacld-2.0 to qcacld-3.0 propagation.
1)Validate channel switch w.r.t concurrency rules set and switch
channel only if there is no channel interference.
2)Disable channel bonding in 2.4Ghz on switching channel to 2.4Ghz band
to avoid violating OBSS feature.
Change-Id: I81992b2c2876a32eba52010e72c4300608067e58
CRs-Fixed: 809527
qcacld-2.0 to qcacld-3.0 propagation
Add extra check for tqe->next!= NULL, to assert in only error scenario
Change-Id: I12e8ca5d5133ee0480d9c7c7c208854630272c89
CRs-Fixed: 839312
When allocate HTT descriptor, instead of allocating
large single chunk of memory, allocate small sized multiple
chunk of memory. Then not need to allocate order 5 memory.
Will have less chance to have memory alloc fail problem.
HTT descriptor. Frag descriptor. OL descriptor. TSO descriptor
Change-Id: Ib9d4a3f10adbc0656e1418cf3a67429322bb7164
CRs-fixed: 845666
qcacld-2.0 to qcacld-3.0 propagation
HTC RX event wait semaphore waiting event infinte.
Infinte waiting will hang device and cannot getting out from
system hang. To collect FW RAM dump and make correct panic,
semaphore should be replaced with time limitted compeletion
Change-Id: Idabfc7916676c9e986e953b50108653a5b394278
CRs-fixed: 924387
qcacld-2.0 to qcacld-3.0 propagation
Currently while populating ext rate set, local rate array
has size as 8.But max 12 ext rates can be copied in this
local rate array.If it is greater than 8, then it leads
to crash.
To resolve this issue, increase the local rate array from
8 to 12.
Change-Id: I2097cc4feb7fa669a970de5463130bb4bbf6401c
CRs-Fixed: 903816
qcacld-2.0 to qcacld-3.0 propagation
Currently if STA is very near to connected AP, it sends the
positive value of RSSI to framework. Framework checks this RSSI
and if positive(greater than 0) then it consider RSSI as -127dbm
which may lead to disconnection.
So changes are done to avoid sending the positive RSSI value
greater than 0.
Change-Id: Ib417f48345e3f78dba54d68969fa15d294f313b9
CRs-Fixed: 842243
qcacld-2.0 to qcacld-3.0 propagation
Currently if sta is connected to an AP
which only supports 11b, lim doesn't send
addTspec request to that AP. Specs doesn't
restrict Tspec in 11b. As a part of fix,
allow addTspec in 11b.
CRs-Fixed: 847755
Change-Id: I57c2d5139f9861140ab3bbe8314a1a3fe3e80e19
Some of these are very remote scenarios (like HIF not being
initialized at the time of the calls, which could then
dereference a NULL pointer). There are a few cases of looping
beyond boundaries.
The scope of this update is limited to NAPI related code.
Change-Id: I60229406d5ab514d5465ef2569324d3d4eb430d4
CRs-Fixed: 938253
Fix the channel width of type 'enum hw_mode_bandwidth' getting
wrongly assigned to enum of type 'tSirWifiChannelWidth'. The
tag values of each of these enums are different.
CRs-Fixed: 942090
Change-Id: Ic3610e6fcb7c89f0aeed829b83869169f4596ce8
This change Adds 11w offload feature, This change includes:
1. SA Query time out Kickout reason handling
2. Add a new service bit map for 11w offload and cache it to pMAc
3. Error logging in following unexpected case
a) Unprotected deauth / diasssoc from peer AP,
b) reception of SA query action frame in SAP / STA vde mode
4. Configure sta sa query related parameters as a part of
sta vdev attach
5. Trim mmie for pmf bcast/mcast mgmt frames
Change-Id: If119e9a79185552e163834f7c6c3a14288fe2761
CRs-Fixed: 931630