During processing of rx mgmt frame, host try to get the
vdev using destination address but for BC frame it can't
find the vdev and iface too, so desired functionality will
not work.
As a part of this fix, host is getting vdev using bssid.
Change-Id: I52884faffc8c5fc8c2f9dcb4308e6f0739f80fe7
CRs-Fixed: 945583
Enable single queue NAPI by default on HTT rx path only.
As multi-queue NAPI is being delayed per dependencies, we would
like to enable multi-queue NAPI by default tgo give it a soak time.
Preliminary results show equivalent results with non-NAPI case.
This update does not disable rx-thread or change RPS settings. Eventually
with multi-queue NAPI, rx-threads are expected to be removed and RPS
will be re-evaluated (it is expectyed that there would be no need for it).
Change-Id: Id11e459ea2c0d47428ce7fbcaf628b16d015d70d
CRs-Fixed: 953232
Check for VHT caps in vendor specific IE only if the dot11mode
is set to 11ac or auto, so that the vht caps are included in
association reuest frame only if the dot11 mode is 11ac.
Change-Id: If72117e5a46a754ae602dabd596a2ad8aac33d2e
CRs-Fixed: 952134
Perform cfg download before the SME config update since the
SME config update operation accesses the cfg database.
Change-Id: Ic2d5b6d192ed164b20011b3eeaea6126951b87e8
CRs-Fixed: 948896
Currently the HDD code uses a variety of logging APIs. In qcacld-3.0
HDD should converge on a unified set of logging APIs. Due to the large
number of changes required, this will have to be done in a phased
approach, with conversions occurring one source file at a time.
One potential problem that could occur, in the absence of any
protection, is that once a particular source file has been converted
to the unified set of logging APIs, someone could introduce new code,
either as a new feature or as a change propagation from qcacld-2.0,
which re-introduces invocations of legacy logging APIs. In order to
help prevent this, add conditional compilation to the hddLog() API so
that it will not be available to source files which have been
converted to the unified set of logging APIs. This will cause a
compilation error if hddLog() is called from source files which have
been converted.
Once all of the source files have been converted, the hddLog() macro
itself can be removed from the source code.
Change-Id: I5debb0eb9cd89c08fdfcc4fc117776160ed34501
CRs-Fixed: 949529
qcacld-2.0 to qcacld-3.0 propagation
When transmitting a packet in OCB mode, the station does not need to
be associated to an access point.
CRs-Fixed: 863620
Change-Id: I71b7ad6afa10321a7c7cde597a727bed7454f644
qcacld-2.0 to qcacld-3.0 propagation
Process TX frame only when STA state is in Connected state
otherwise drop the frame.
Change-Id: Id384bb4a11bc2783b8017a8b4fac67ba4f708cb5
CRs-Fixed: 778274
qcacld-2.0 to qcacld-3.0 propagation
Driver would get the tx rate info from firmware and converts it
to mcs index or legacy rate for userspace.
The problem here is when firmware creates a valid ratesets,
it includes all the subset of lower grade rates.
e.g
- VHT80 would include VHT80/VHT40/VHT20, VHT40 include VHT40/HT20
- HT40 would include HT40/HT20
- NSS2 would include NSS2 and NSS1
So that firmware would not only use one rateset, but would use all
other valid rates, the fix is to go through all other possibilities
to make sure the rate look up can find the correct mcs index.
Change-Id: I5df9059b73954951c4adec56002a3eba80915752
CRs-fixed: 936078
Clean up the hddLog API and CDF_MODULE_ID_HDD with CDS_TRACE
misused in CDS module.
Change-Id: I786fa1ba216b42a6218f7eadba60ee7e5e82ebe5
CRs-fixed: 948327
This is a qcacld-2.0 to qcacld-3.0 propagation.
Currently WOW wake up event is processed in work thread which may be
delayed to schedule. Directly complete the event in tasklet in order
to proceed it in time. Also make sure the WOW wake up event handler
is in atomic context.
Change-Id: Ie6015d39321c7759b35f05acc7833ef8974c0157
CRs-Fixed: 900629
Record CE interrupt in CE event history since the interrupts
may come separately for the different interrupts.
Change-Id: I269a103054d3ab2015d67370c43f4af598871b8d
CRs-Fixed: 951569
qcacld-2.0 to qcacld-3.0 propagation
Record when descriptors are posted to or completed by the copy engine
in SLUB_DEBUG builds.
Change-Id: I78ee028a7a61ffd253092cbb530ce9ec2e5022d3
CRs-Fixed: 938120
qcacld-2.0 to qcacld-3.0 propagation.
WMM should be enabled if HT caps are present even if WMM ie is
not present in beacons/probe response frames. In few places it
is not taken care. This commit will address the issue.
CRs-fixed: 873761
Change-Id: I985b7721fc28c9b7d087123c6cff9d76f93696d5
qcacld-2.0 to qcacld-3.0 propagation.
Send tdls mgmt frames with VI tid to give more priority
to tdls mgmt frames.
CRs-Fixed: 873749
Change-Id: I9196680f09678185c1010b472851c1aca00b1635
We already know kernel version is more than equal to 3.10.
So remove static checks for any previous kernel.
Change-Id: I4e17614fae47782a02dd528c7b4adf3d2802ec69
CRs-Fixed: 920681
qcacld-2.0 to qcacld-3.0 propagation
Fix incorrect completion of pending CONS RM request/release
notification, which is sent when receiving PROD RM notification
from IPA. Also cleanup pending CONS request flag when IPA resource
loading/unloading is compelted.
Change-Id: Ie37b7d21e1ad016dbaf9aa0f89c97402911b4a02
CRs-Fixed: 943635
qcacld-2.0 to qcacld-3.0 propagation
When IPA requests WLAN CONS resource while IPA resource loading is in
progress, resource will not be granted even after the loading is
completed. This will eventually result IPA uC timeout.
Change-Id: Iae8373c43709cbbccef790973642f5992ddcd359
CRs-Fixed: 943635
qcacld-2.0 to qcacld-3.0 propagation
Since CLIENT_CONNECT message is sent to IPA before enabling WDI pipes,
CLIENT_CONNECT message count could be more than CLIENT_DISCONNECT
count, and this could cause an abnormal behavior in the IPACM.
Change-Id: I03d30c7f82aadf83979084b7e65b8ed14565588d
CRs-fixed: 941894
Module_init waits for probe to complete after registering the
driver. But this is unnecessary and module load is intended for
loading the module but probe would be called when hardware is
ready. Remove the wait during module_init.
Change-Id: Ic2fe7efa78a1527acf1fd5b7689d70f6d450ccd3
CRs-fixed: 950170
In module init, bunch of initializations are done which are not
required till probe call back gets called. Also in module exit,
some clean-up done which should wait till remove call back gets
called. Move the initialization done in module init to probe call back and
clean-up done in module exit to remove call back.
Change-Id: Id4a0cb21300de1ceab8ed043638b735f31d516d4
CRs-fixed: 950170
For statically linked driver, con_mode is used for moving from
machine mode to FTM mode but it has conditional compilation
issues. Fix the conditional compilation to properly compile when
FTM feature is enabled.
Along with it, unify the usage of con_mode such that
curr_con_mode is the variable which holds the connection mode
passed as part of module parameter as well as set by the driver.
Change-Id: I7d6a5c9b82d1dbb727208caca78089d6be357e71
CRs-fixed: 950170
Move module init/exit related implementation together and at the
end of the file.
Change-Id: I17a02e4fdddc17fc3a725c29e89a52f5bd9d49b9
CRs-fixed: 950170
qcacld-2.0 to qcacld-3.0 propagation.
FW checks the peer Rx LDPC capability in ht and vht capabilities
to do Tx LPDC. But host sets the Tx LPDC flag in peer_flags.
To disable Tx LDPC reset the Rx LDPC capability in peer ht
and vht caps based on Tx LPDC configuration in INI.
Change-Id: I211fd73fd70a35faaf4cfc2c5dc8d842c7ff1e5a
CRs-Fixed: 894306
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 handler for gateway parameter request vendor command. The
request is issued to update the gateway parameters to be used
during subnet detection post roaming.
Change-Id: I848f24b36a1d65a0e8bb8465b2b6f2016cb2224c
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
Add an INI item to configure LFR subnet detection feature.
LFR subnet detection is enabled by default.
Change-Id: Ifb4bba60dfcd0347137f4a690db50b0c453d1ae8
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
Currently tx STBC param sent to FW is taken from peer's response frame, which
is wrong if current hardware does not support 2x2 for given channel width.
Update the driver to check number of tx stream for current vdev and clear txSTBC
if needed.
Change-Id: If05e5de72ba5af95b343817d811db0f413493ee1
CRs-Fixed: 941217