Currently non-linear, non-tso TX data is not handled correctly,
only the non-tso, single linear data is supported. the frag paged
data in skb is missed while packet length for HW access
is entire packet length, HW DMA failed.
temporarily to linearize skb so that non-linear data could be TX
correctly.
Change-Id: Ic0f2b7a0b021ca190c870551a66181f50ae72c65
CRs-Fixed: 2180318
Suspend/Resume unit test IOCTLs and other unit test features are only
enabled in defconfig debug builds and always disabled in production
builds. Add CFG INI item to disable these test IOCTLs even in defconfig
build such that by default on all build combinations unit test IOCTLs
are always disabled.
Change-Id: I71a63d2b85800b630d7c18eb77a3cffddcd66fbb
CRs-Fixed: 2221874
Currently the switch -DFEATURE_WLAN_D0WOW is inferred by examining two
different configuration options. In order to clearly separate setting
the configuration from applying the configuration create a new
CONFIG_FEATURE_WLAN_D0WOW configuration parameter.
Change-Id: Ie278011a309a18673eabb4bc4f8f8bb691815018
CRs-Fixed: 2222913
Secondary bit map starts with color 32, So current color minus 31
will shift color bit beyond the expected position which is 0th,
Fix it by subtracting with 32 instead 31.
Change-Id: I7ede16faee129c42c71d490f653244398061a8b6
CRs-Fixed: 2222003
If connection is in progress and new connection req is
received from supplicant, hdd tries to disconnect the
current session and post force disassoc command and wait
for it to get completed. If the current ongoing connect
operation fails and this force disassoc is processed as
sme session is in disconnected state it is silently
dropped and thus there is no event sent to the HDD
to stop the wait for disconnect and HDD wait for 5
sec before returning connect failure.
Fix this by Calling disconnect handler if, disconnect
with force dissoc is called in disconnected state
Change-Id: I3a78308b54fb048fba5a6aed3d8e8b193c371647
CRs-Fixed: 2223313
Currently the switch -DENABLE_SMMU_S1_TRANSLATION is inferred by
examining two different configuration options. In order to clearly
separate setting the configuration from applying the configuration
create a new CONFIG_ENABLE_SMMU_S1_TRANSLATION configuration
parameter.
Change-Id: Ibfa0cfbad5342895d90a32ddcf46a9d851253dcb
CRs-Fixed: 2222912
In Kbuild CONFIG_ROME_IF is used to calculate the interface used by
the WLAN hardware. Once this is determined, one of the boolean
CONFIG_HIF_[PCI|USB|SDIO|SNOC|...] variables is configured. In
anticipation of refactoring the Kbuild in a manner which will remove
the necessity of having CONFIG_ROME_IF, replace all tests of
CONFIG_ROME_IF with tests of CONFIG_HIF_* once the CONFIG_HIF_*
variables have been set.
Change-Id: If80d465500b6b99181d470fa6bff3dc8c20e4409
CRs-Fixed: 2222911
Currently WAPI support is being unconditionally enabled in the
driver. However support may not be required on all targets, so add a
configuration flag
Change-Id: I1344620d4cff38dc9d780c9a272d2de07a423e8d
CRs-Fixed: 2222910
There is a chance that kernel can trigger suspend while
connection in progress. If driver allows this suspend, this can
result in fw panic.
Specific scenario:
If driver allows suspend to go when it waits for probe response,
fw least expects suspend indication as fw is in vdev start state.
This unexpected suspend indication in vdev start state can cause
fw panic.
Hold wakelock till the completion of association to fix this issue.
Change-Id: I168ead2ab1ef4fff1d9af3f3142c82536c3f4798
CRs-Fixed: 2217140
qcacld-2.0 to qcacld-3.0 propagation
Discard the original wmi interface:
WMI_PEER_ANTDIV_INFO_REQ_CMDID/PEER_ANTDIV_INFO_EVENTID,
replace with the new one:
WMI_PDEV_DIV_GET_RSSI_ANTID_CMDID/WMI_PDEV_DIV_RSSI_ANTID_EVENTID
to support chain value along with corresponding antenna info.
Change-Id: Ie9ea9d160e1ac1e2e65de422c85989159fb5a556
CRs-Fixed: 2005820
When CLD3.2 driver is setting pdev burst mode to FW, 3
possible values are supported:
0: disabled
1: enabled for legacy burst
3: enabled for SIFS burst
but the iwpriv command handling code only supports setting
0 or 1 to FW.
Add value checking for WE_SET_BURST_ENABLE to support setting
3 to FW.
Change-Id: I35506b83d584f6e8d066adfc43df8dd03ce54661
CRs-Fixed: 2214992
When CONFIG_MOBILE_ROUTER feature is enabled, FEATURE_WLAN_TDLS is
turned off. As a result, compiler complains no prototype for
lim_disassoc_tdls_peers error.
Fix is to define lim_disassoc_tdls_peers as static inline when
FEATURE_WLAN_TDLS is not defined.
Change-Id: Idad1f7d2e27853307750fcc7ffbe7ab1e3504c3b
CRs-Fixed: 2215100
Currently in Kbuild the "profile" variable CONFIG_MOBILE_ROUTER is
defined based upon a set of tests. Subsequently CDEFINES is updated
with specific feature flags based upon the CONFIG_MOBILE_ROUTER
value. In anticipation of refactoring profile information into
per-target configuration files, create a separate configuration
variable for each feature that is currently controlled by
CONFIG_MOBILE_ROUTER. This will allow each target to have fine-grain
control over its features.
Change-Id: I5fb78f8c49c9ea2b970e547049d565cc1e9243f0
CRs-Fixed: 2222151
CONFIG_CNSS_EOS is an obsolete configuration item so remove all
references to it.
Change-Id: Id26ac1fb6969af845730b57f1bef6a4903c2b71e
CRs-Fixed: 2222022
Currently if the driver is built directly within the kernel the
following Kconfig parameters will NOT be taken from the kernel
configuration:
- CONFIG_HELIUMPLUS
- CONFIG_64BIT_PADDR
- CONFIG_FEATURE_TSO
- CONFIG_FEATURE_TSO_DEBUG
Inversely, if the driver is built outside the kernel the following
parameter does not enforce the "depends on HELIUMPLUS" that is found
in the Kconfig:
- CONFIG_WLAN_LRO
Resolve these issues by relocating the HELIUMPLUS definition to inside
the "ifeq ($(KERNEL_BUILD), n)" portion of the Kbuild, and relocating
the other configurations such that they only get initialized when
HELIUMPLUS is enabled.
Change-Id: Ie41cd0a59bfa39fed39779e508bebbd6e29f6c0c
CRs-Fixed: 2222020
CONFIG_SUPPORT_HOST_STATISTICS is set but then never referenced, so
remove it from Kbuild.
Change-Id: Ib2ec5dfe1a1e10e04116b097296c5bacc6ece9cd
CRs-Fixed: 2221853
Currently Kbuild unconditionally sets -DHAL_SELF_STA_PER_BSS=1. There
is only one place where this macro is referenced, and it actually
requires that the macro be set for the driver to work. Since this
logic isn't really conditional, remove the conditional compilation.
Change-Id: I09a03339df086146b81b3012fb281e166fccd5da
CRs-Fixed: 2221852
Kbuild has conditional logic to set CONFIG_HIF_MESSAGE_BASED which is
subsequently used to pass -DHIF_MESSAGE_BASED to the driver. But
HIF_MESSAGE_BASED is not actually used by the driver, so remove this
support.
Change-Id: Id0650c2c44d7b20d58b30e405c2e8f4aa1082e99
CRs-Fixed: 2221851
Kbuild conditionally defines CONFIG_PRIMA_WLAN_11AC_HIGH_TP but then
never uses it. Since it is obsolete, remove it.
Change-Id: I4002197c3068c58e542ab0b7bcc55b642e04624c
CRs-Fixed: 2221850
In Kbuild, configuration variables are used to determine which files
are included in the build and what flags are given to the C compiler.
Currently most of the configuration variables are set in the top
portion of the file. In preparation for futher featurization identify
those configuration variables which are being set in the bottom
portion of the file, and relocate them to the top portion of the file.
Change-Id: I962edf666ba7ed8c37a28e448b8675249a759975
CRs-Fixed: 2220924
Fix the following issues in Kbuild:
- 'Managment' may be misspelled - perhaps 'Management'?
- 'Endianess' may be misspelled - perhaps 'Endianness'?
- Use of EXTRA_CFLAGS is deprecated, please use `ccflags-y instead.
Change-Id: Ie2d2940bbf5b143b2185bf88bc8fd33abb16817a
CRs-Fixed: 2220923
In the Kbuild most of the local flag variables use y/n but there are
some that use 0/1. For consistency change all 0/1 flags to y/n.
Change-Id: Ic436d7f1cf8a75eae9d3542b458094ed6442740d
CRs-Fixed: 2220922
Kbuild currently has conditional code that is used to set the macro
AH_BYTE_ORDER. But this macro is unused by the code, so remove it.
Change-Id: If694bdb492645eda5d314f7240e42677d9e4413d
CRs-Fixed: 2220921
There are a multitude of endian macros currently supported by the
driver. Consolidate them in one place as a precursor to future
consolidation.
Change-Id: Id4e57eb6e409aa0c84d46b8ce9eb85f3be56716e
CRs-Fixed: 2220920
Kbuild currently passes the macro SPECTRAL_USE_NETLINK_SOCKETS to the
compiler. However this macro is now obsolete, so remove it.
Change-Id: Id88028cceddcaaf8f35c708451fa5bf21c4695dd
CRs-Fixed: 2220919
Kbuild currently defines the macro WLAN_FEATURE_RX_FULL_REORDER_OL.
However the change "qcacld-3.0: wma: change legacy data path api to
cdp api" removed the only reference to this macro. Since it is now
obsolete, remove it.
Change-Id: I72e770874150cbac69e8efbb9e5dd7027a2e8869
CRs-Fixed: 2220918
The Kbuild currently defines the macro WLAN_FEATURE_MBSSID. However
this macro is not actually referenced in the driver, so remove it.
Change-Id: Id2254c298b5db2a18a75160d22904af3a6f90c06
CRs-Fixed: 2220916
Macro WLANTL_DEBUG is currently used to define some SAP debug
counters, but these counters are unused, so remove this obsolete code.
Change-Id: Ie7d976efcb5fb335b3f60a5af48a70dd214b3bd0
CRs-Fixed: 2220915
The Kbuild currently conditionally defines the macros WCN_PRONTO and
WCN_PRONTO_V1. However these macros are not actually referenced in
the driver, so remove them.
Change-Id: I173fb8ee9bcc89faa3d03be91dc1628f561c561e
CRs-Fixed: 2220914
The Kbuild currently conditionally defines the macro IGTK_OFFLOAD.
However this macro is not actually referenced in the driver, so remove
it.
Change-Id: I0c1bf314ad222e2348419950a462f5ce72163ec6
CRs-Fixed: 2220913
The Kbuild currently defines the macro ATH_SUPPORT_SHARED_IRQ. However
this macro is not actually referenced in the driver, so remove it.
Change-Id: I526038c83380da2526c403cba3bedeaa0e347983
CRs-Fixed: 2220912
Currently a set of ANI_COMPILER_TYPE macros are checked against, but
other than that they serve no purpose. As part of ongoing Kbuild
cleanup remove these obsolete macros.
Change-Id: Ia112d7d5ae8d12eae46144b53addc8ad54393bba
CRs-Fixed: 2220285
The routine wma_extscan_change_results_event_handler sends the ext scan
results to upper layers. This contains the bssid info, rssi values of
different APs that are scanner. If the num_rssi_samples is negative or
greater than UINT32_MAX,then an OOB write could happen.
Add check to ensure rssi_num is not negative or exceeds UINT32_MAX.
Also make sure the numap value is not negative.
Change-Id: If82c4fd1193c45d38bd4495c187a406deb25acad
CRs-Fixed: 2205957
After SSR, FW clear its txrx connectivity stats.
In host, as adapter is intact, host connectivity
stats counts are still available. Now if the set
stats command is used again, then host increments
its counts start from its last saved value, i.e.,
count before SSR, and FW increments its count from 0.
This sends a mismatch of packet counts b/w
host and FW to framework that creates ambiquity.
To address the issue, reset the host counts so that after SSR
both FW and host start increment their counts from 0.
Change-Id: I11f849d6f00abe11f3bb8947cc81e47a3bc004fa
CRs-Fixed: 2202890
Currently pdev pointer is freed prematurely in ol_txrx_pdev_pre_detach
but the same pointer is used when ol_txrx_pdev_detach is called. This
may lead to invalid pointer dereference issue.
To fix this issue, free pdev pointer in ol_txrx_pdev_detach after
ol_txrx_pdev_pre_detach is called.
Change-Id: I089d70842b90b568ee8a38c6ed56f5418df7303d
CRs-Fixed: 2207417