Commit Graph

336 Commits

Author SHA1 Message Date
Jeff Johnson
810f3aed05 qcacld-3.0: Kbuild: Remove obsolete PELOG enablement
Change "qcacld-3.0: Remove obsolete PELOG* logging macros" (Change-Id
I018088db456871ed46c60957c4ef5d5af85d0457) removed some obsolete
macros. Now remove the Kbuild support that previously enabled those
macros.

Change-Id: Ie359440c725f614ea109fe95d90a43dd279ea8a9
CRs-Fixed: 2224814
2018-04-18 18:38:06 -07:00
Jeff Johnson
f31bb21acc qcacld-3.0: Kbuild: Define CONFIG_CHNL_MATRIX_RESTRICTION
Currently the switch -DWLAN_ENABLE_CHNL_MATRIX_RESTRICTION is inferred
by examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_CHNL_MATRIX_RESTRICTION
configuration parameter.

Change-Id: I337d026ac0651e729d899058ee0e9d7e8256f018
CRs-Fixed: 2224813
2018-04-16 22:59:53 -07:00
Jeff Johnson
7bfd46ea5c qcacld-3.0: Kbuild: Define CONFIG_TUFELLO_DUAL_FW_SUPPORT
Currently the switch -DCONFIG_TUFELLO_DUAL_FW_SUPPORT is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create an explicit CONFIG_TUFELLO_DUAL_FW_SUPPORT
configuration parameter.

Change-Id: Id72259449c16aa81413c24a57cb1085110ff0223
CRs-Fixed: 2224812
2018-04-16 22:59:50 -07:00
Jeff Johnson
b3e1bd11fc qcacld-3.0: Kbuild: Define CONFIG_CHANNEL_HOPPING_ALL_BANDS
Currently the switch -DCHANNEL_HOPPING_ALL_BANDS is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_CHANNEL_HOPPING_ALL_BANDS
configuration parameter.

Change-Id: Icc9aef38445cdcd9269210b578b1e1be2fe18ac9
CRs-Fixed: 2224811
2018-04-16 22:59:46 -07:00
Jeff Johnson
ec273f3f2e qcacld-3.0: Kbuild: Define CONFIG_WLAN_LOGGING_SOCK_SVC
Currently the switch -DWLAN_LOGGING_SOCK_SVC_ENABLE is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_WLAN_LOGGING_SOCK_SVC configuration
parameter.

Change-Id: Ic542512e3440453ef9f320297cf18f73f92fb2e3
CRs-Fixed: 2224810
2018-04-16 22:59:43 -07:00
Jeff Johnson
e16768476a qcacld-3.0: Kbuild: Cleanly featurize legacy WiFi positioning
Define a separate configuration option for legacy WiFi positioning and
use that option to set the associated ccflags macro.

Change-Id: I43cc04b3730687bf6298c66af7c42a9d6d9db80c
CRs-Fixed: 2224809
2018-04-16 20:26:19 -07:00
Jeff Johnson
772fdfa966 qcacld-3.0: Kbuild: Cleanly featurize Lithium flags
Define separate configuration options for the various Lithium
features and use those options to set the associated ccflags macros.

Change-Id: I08fee39c76963b102611b134346fe5edc95a0835
CRs-Fixed: 2224808
2018-04-16 20:26:15 -07:00
Jeff Johnson
23fc95216a qcacld-3.0: Kbuild: Cleanly featurize Helium flags
Define separate configuration options for the various Helium
features and use those options to set the associated ccflags macros.

Change-Id: Ia221aa3690ecbe37ac6568fa54876c77e338e2f6
CRs-Fixed: 2224807
2018-04-16 20:26:12 -07:00
Jeff Johnson
5b306f4696 qcacld-3.0: Kbuild: Cleanly featurize Adrastea flags
Define separate configuration options for the various Adrastea
features and use those options to set the associated ccflags macros.

Change-Id: Ie418140dd21038ee3fd6eb3ecfd5d031bf1432ed
CRs-Fixed: 2224806
2018-04-16 20:26:08 -07:00
Jeff Johnson
2095d16daa qcacld-3.0: Kbuild: Cleanly featurize legacy TX flow control
Define a separate configuration option for legacy TX flow control and
use that option to set the associated ccflags macro.

Change-Id: Id14ac79280d3bf809c1e85bde4d5c7037a3ea766
CRs-Fixed: 2224629
2018-04-16 16:56:43 -07:00
Jeff Johnson
69ba6d082f qcacld-3.0: Kbuild: Set ccflags directly based on config item
Currently there are many cases where ccflags-y is set by logic:
 ifeq ($(CONFIG_FOO), y)
 ccflags-y += -DENABLE_FOO
 endif

In order to align with Linux style reduce such simple cases to:
 ccflags-$(CONFIG_FOO) += -DENABLE_FOO

Change-Id: Ibe700701d25c3a2944fa2f2eabf528b04b59bbdd
CRs-Fixed: 2223862
2018-04-16 10:35:37 -07:00
Jeff Johnson
b4e2d82f45 qcacld-3.0: Kbuild: Replace CDEFINES with ccflags-y
In order to more closely comply with Linux look and feel replace the
temporary variable CDEFINES with direct use of ccflags-y.

Change-Id: I801e61644f583ea213c9d699b318d328ae4ba1c2
CRs-Fixed: 2223861
2018-04-16 10:35:34 -07:00
Jeff Johnson
a63a9b6f96 qcacld-3.0: Kbuild: Create config items for "always on" switches
In preparation for fully file-driven configuration create config
items for (almost) all -D switches which are currently being set
unconditionally.

Change-Id: I067b13e11c9cdf3a0355c2e64ab3770088118afa
CRs-Fixed: 2223860
2018-04-16 10:35:30 -07:00
Jeff Johnson
9bf3b65da5 qcacld-3.0: Remove obsolete WOWL messaging
The driver contains considerable debris from the obsolete WOWL
messaging, so clean it up.

Change-Id: I432f7fc1567b0aa31a7be758c05f2213340baed0
CRs-Fixed: 2223859
2018-04-15 10:17:50 -07:00
Jeff Johnson
9ff3a71cca qcacld-3.0: Kbuild: Remove duplicate -DWLAN_FEATURE_GTK_OFFLOAD
Currently -DWLAN_FEATURE_GTK_OFFLOAD is being set twice, once
unconditionally and once based upon CONFIG_GTK_OFFLOAD. Since this is
properly featurized, remove the unconditional setting so that the
setting is correctly controlled by the configuration.

Change-Id: I6f820990dc48304f18f78ec59005c2188a677094
CRs-Fixed: 2223858
2018-04-15 10:17:36 -07:00
Jeff Johnson
b00d968ba7 qcacld-3.0: Kbuild: Add CONFIG_AGEIE_ON_SCAN_RESULTS
Currently -DWLAN_ENABLE_AGEIE_ON_SCAN_RESULTS is unconditionally added
to all builds. Since this feature may not be required for all targets,
create a CONFIG_AGEIE_ON_SCAN_RESULTS feature flag to enable this
feature.

Change-Id: Id5a82a85f4484ca710d4b309355fe3ee0d05883e
CRs-Fixed: 2223857
2018-04-15 09:57:47 -07:00
Jeff Johnson
a9d252dcc7 qcacld-3.0: Kbuild: Remove confusing HAVE_CFG80211 option
Currently Kbuild sets a HAVE_CFG80211 flag based upon whether or not
CONFIG_CFG80211 is configured. The presence of this flag implies that
cfg80211 is optional. However in reality this is a required module, so
remove the confusing flag and instead make the underlying code always
present.

Change-Id: Ia039968cad6f311091e09d4b82805c7bbc5b83f8
CRs-Fixed: 2223856
2018-04-15 09:57:47 -07:00
Rajeev Kumar
20bc080b98 qcacld-3.0: Compile out WMI non_tlv file from Kbuild
WMI non_tlv is not used for MCL targets and hence compile
out WMI non_tlv object file from Kbuild.

Change-Id: I0ee9376065dffb0f959ef8ba47435cc38a3d7d55
CRs-Fixed: 2216856
2018-04-14 16:50:40 -07:00
Tushnim Bhattacharyya
7b5b137807 qcacld-3.0: Remove WLAN_AP_STA_CONCURRENCY feature flag
STA+SAP concurrency is a default feature now. Remove
WLAN_AP_STA_CONCURRENCY feature flag.

Change-Id: I1200fa57b27ded67b0a17aa9e43c88926a822034
CRs-Fixed: 2223507
2018-04-14 07:37:33 -07:00
Jeff Johnson
81132daa02 qcacld-3.0: Kbuild: Define CONFIG_FEATURE_SKB_PRE_ALLOC
Currently the switch -DFEATURE_SKB_PRE_ALLOC is inferred by examining
three different configuration options. In order to clearly separate
setting the configuration from applying the configuration create a new
CONFIG_FEATURE_SKB_PRE_ALLOC configuration parameter.

Change-Id: I301031a03fdae394748cf4cb6259044324eec6f1
CRs-Fixed: 2222914
2018-04-14 07:37:29 -07:00
Jeff Johnson
f20b4befc5 qcacld-3.0: Kbuild: Define CONFIG_FEATURE_WLAN_D0WOW
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
2018-04-14 04:53:10 -07:00
Jeff Johnson
84f243c437 qcacld-3.0: Kbuild: Define CONFIG_ENABLE_SMMU_S1_TRANSLATION
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
2018-04-13 12:15:48 -07:00
Jeff Johnson
fe6f0b0dc8 qcacld-3.0: Kbuild: Replace unnecessary references to CONFIG_ROME_IF
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
2018-04-13 12:15:45 -07:00
Jeff Johnson
8daf7687a2 qcacld-3.0: Kbuild: Define CONFIG_FEATURE_WLAN_WAPI
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
2018-04-13 12:15:42 -07:00
Jeff Johnson
6a08830bc5 qcacld-3.0: Kbuild: Decompose the mobile router feature
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
2018-04-11 03:38:08 -07:00
Jeff Johnson
c4fedd0a67 qcacld-3.0: Kbuild: Remove obsolete CONFIG_CNSS_EOS
CONFIG_CNSS_EOS is an obsolete configuration item so remove all
references to it.

Change-Id: Id26ac1fb6969af845730b57f1bef6a4903c2b71e
CRs-Fixed: 2222022
2018-04-11 03:38:05 -07:00
Jeff Johnson
fe2489c451 qcacld-3.0: Kbuild: Relocate HELIUMPLUS definitions
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
2018-04-11 03:38:03 -07:00
Jeff Johnson
63ec8ed89d qcacld-3.0: Remove CONFIG_SUPPORT_HOST_STATISTICS from Kbuild
CONFIG_SUPPORT_HOST_STATISTICS is set but then never referenced, so
remove it from Kbuild.

Change-Id: Ib2ec5dfe1a1e10e04116b097296c5bacc6ece9cd
CRs-Fixed: 2221853
2018-04-11 03:38:00 -07:00
Jeff Johnson
20f84ba9bc qcacld-3.0: Remove obsolete HAL_SELF_STA_PER_BSS condition
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
2018-04-11 03:37:57 -07:00
Jeff Johnson
550b6a7a18 qcacld-3.0: Remove setting HIF_MESSAGE_BASED
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
2018-04-11 03:37:53 -07:00
Jeff Johnson
b5e486e4cf qcacld-3.0: Remove obsolete CONFIG_PRIMA_WLAN_11AC_HIGH_TP
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
2018-04-11 03:37:50 -07:00
Jeff Johnson
8fba4d7a8e qcacld-3.0: Consolidate Kbuild configuration variables
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
2018-04-11 03:37:48 -07:00
Jeff Johnson
3a7a9c6e35 qcacld-3.0: Align Kbuild with Linux guidelines
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
2018-04-11 03:37:45 -07:00
Jeff Johnson
eadeb93a96 qcacld-3.0: Consistently use y/n for Kbuild flags
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
2018-04-11 03:37:42 -07:00
Jeff Johnson
1cdba1a666 qcacld-3.0: Remove obsolete AH_BYTE_ORDER macro
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
2018-04-11 03:37:39 -07:00
Jeff Johnson
ec884ea161 qcacld-3.0: Consolidate setting of endian macros
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
2018-04-11 03:37:36 -07:00
Jeff Johnson
151c30c6dc qcacld-3.0: Remove unused SPECTRAL_USE_NETLINK_SOCKETS macro
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
2018-04-11 03:37:33 -07:00
Jeff Johnson
8018ecec87 qcacld-3.0: Remove unused WLAN_FEATURE_RX_FULL_REORDER_OL macro
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
2018-04-11 03:37:30 -07:00
Jeff Johnson
2540c551fe qcacld-3.0: Remove unused WLAN_FEATURE_MBSSID macro
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
2018-04-11 03:37:27 -07:00
Jeff Johnson
78772177b6 qcacld-3.0: Remove obsolete WLANTL_DEBUG code
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
2018-04-11 03:37:24 -07:00
Jeff Johnson
a635938a0e qcacld-3.0: Remove unused WCN_PRONTO macros
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
2018-04-11 03:37:21 -07:00
Jeff Johnson
b8b3976823 qcacld-3.0: Remove unused IGTK_OFFLOAD macro
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
2018-04-11 03:37:19 -07:00
Jeff Johnson
b45dba43e5 qcacld-3.0: Remove unused ATH_SUPPORT_SHARED_IRQ macro
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
2018-04-11 03:37:15 -07:00
Jeff Johnson
a3005a1c1a qcacld-3.0: Remove obsolete ANI_COMPILER_TYPE macros
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
2018-04-11 03:37:13 -07:00
Paul Zhang
fa2cd5cd61 qcacld-3.0: Define CONFIG_MCL_REGDB in Kbuild
Currently, CONFIG_MCL_REGDB does not define for MCL,
then the driver uses the g_all_countries[] which is
for WIN.

Change-Id: If1b5873b65005381eabca95f530504d599a38e3b
CRs-Fixed: 2210854
2018-04-05 01:29:50 -07:00
Jeff Johnson
8bb6111e1f qcacld-3.0: hdd: Refactor the Green AP feature
Refactor the hdd portion of the Green AP feature so that it can be
easily excluded when the feature is not enabled.

Change-Id: I986c5ab7640b3182a12bef93748affefba067251
CRs-Fixed: 2216247
2018-04-04 11:07:19 -07:00
Dustin Brown
63ef318a90 qcacld-3.0: Enable NBUF_MEMORY_DEBUG for SLUB builds
Network buffer debugging is being featurized as a separate feature from
regular memory debugging, and being controlled via the NBUF_MEMORY_DEBUG
build config flag. Enable NBUF_MEMORY_DEBUG for SLUB DEBUG builds to
retain the existing set of build time debug features.

Change-Id: Ib2ac2823ea5231508f4cca7d718ed266acd91274
CRs-Fixed: 2216804
2018-04-03 16:50:09 -07:00
Naveen Rawat
73e1ca9663 qcacld-3.0: Add control path stats header files to include path
Add Kbuild changes to include control path stats component's header
file paths.

Change-Id: I5e4efc92658fde8ee657d33265a55ae84f5f4723
CRs-Fixed: 2215999
2018-04-03 11:11:22 -07:00
Yun Park
5027b7c504 qcacld-3.0: Disable IPA offload feature
While freeing IPA CE descriptor ring during driver unload, data abort
occurs due to double free.
Disable IPA offload feature flag until completing IPA offload feature.

Change-Id: Ia54e94dc9a0a21761ac1b05b45bf9334e6ff9613
CRs-Fixed: 2211078
2018-03-30 17:00:06 -07:00
Alok Kumar
b64650c29a qcacld-3.0: Handle NUD events within driver
Currently NUD events are used by Framework to detect
the Network Reachability. Framework issues disconnection
for NUD_FAILED event.

Now, NUD events are tracked within driver to detect the
reachability and based on TxRx traffic, driver takes decision
to issue disconnection.

Change-Id: I461610c220288ff1fd718bb7bc2dd8375588505c
CRs-Fixed: 2195796
2018-03-30 02:46:29 -07:00