qcacld-3.0: Refactor Kbuild to add profile support
Changes to enable/disable feature based on
profiles, debug mode, interface type and
architecture in Kbuild.
Change-Id: Ic9eb552c183143b4a2e0738c52b2e0c50db63a93
CRs-Fixed: 2200122
diff --git a/Kbuild b/Kbuild
index a130f62..b5ae2ec 100644
--- a/Kbuild
+++ b/Kbuild
@@ -6,52 +6,27 @@
KERNEL_BUILD := 0
endif
-ifeq ($(CONFIG_CNSS_QCA6290), y)
- CONFIG_LITHIUM := y
- CONFIG_WLAN_FEATURE_11AX := y
- CONFIG_WLAN_FEATURE_DFS_OFFLOAD := y
-endif
-
-ifeq ($(CONFIG_CLD_HL_SDIO_CORE), y)
- CONFIG_QCA_WIFI_SDIO := 1
-endif
-
-ifeq ($(CONFIG_QCA_WIFI_SDIO), 1)
- CONFIG_ROME_IF = sdio
-endif
-
-ifdef CONFIG_ICNSS
- CONFIG_ROME_IF = snoc
-endif
-
-ifeq (y,$(findstring y,$(CONFIG_CNSS) $(CONFIG_CNSS2)))
-ifndef CONFIG_ROME_IF
- #use pci as default interface
- CONFIG_ROME_IF = pci
-endif
-endif
-
ifeq ($(KERNEL_BUILD),1)
# These are provided in external module based builds
# Need to explicitly define for Kernel-based builds
MODNAME := wlan
WLAN_ROOT := drivers/staging/qcacld-3.0
- WLAN_COMMON_ROOT := ../qca-wifi-host-cmn
- WLAN_COMMON_INC := $(WLAN_ROOT)/$(WLAN_COMMON_ROOT)
endif
-# Make WLAN as open-source driver by default
-WLAN_OPEN_SOURCE := 1
+# If not set, assume, Common driver is with in the build tree
+WLAN_COMMON_ROOT ?= ../qca-wifi-host-cmn
+WLAN_COMMON_INC ?= $(WLAN_ROOT)/$(WLAN_COMMON_ROOT)
-ifeq ($(KERNEL_BUILD), 0)
- # These are configurable via Kconfig for kernel-based builds
- # Need to explicitly configure for Android-based builds
+##########################################
- ifneq ($(DEVELOPER_DISABLE_BUILD_TIMESTAMP),y)
- ifneq ($(WLAN_DISABLE_BUILD_TAG),y)
- CONFIG_BUILD_TAG := y
- endif
- endif
+# Add profiles to enable/disable feature
+# based on market segment.
+#
+# Possible Values : mobile, iot, auto, mobilerouter
+# Default Value : mobile
+
+ifndef CONFIG_PROFILE
+ CONFIG_PROFILE = mobile
ifeq ($(CONFIG_ARCH_MDM9630), y)
CONFIG_MOBILE_ROUTER := y
@@ -65,381 +40,105 @@
CONFIG_MOBILE_ROUTER := y
endif
- ifeq ($(CONFIG_ARCH_MSM8917), y)
- ifeq ($(CONFIG_ROME_IF), sdio)
- CONFIG_WLAN_SYNC_TSF_PLUS := y
- endif
+ ifeq ($(CONFIG_MOBILE_ROUTER), y)
+ CONFIG_PROFILE = mobilerouter
+ endif
+endif
+
+##########################################
+
+# Add debug mode to enable/disable debug
+# related feautes.
+#
+# Possible Values : no_debug, low_mem_debug, production_debug,
+# perf_debug, slub_debug
+# Default Value : production_debug
+#
+# no_debug : no debug features
+# low_mem_debug : debug level for low memory footprint devices.
+# production_debug : debug level for end user mobile builds.
+# perf_debug : debug level for internal perf builds.
+# slub_debug : enable all debug and unit test features,
+# used in slub debug builds.
+
+ifndef CONFIG_DEBUG_MODE
+ CONFIG_DEBUG_MODE = production_debug
+
+ ifeq ($(CONFIG_PERF_DEBUG),y)
+ CONFIG_DEBUG_MODE = perf_debug
endif
- #Flag to enable Legacy Fast Roaming2(LFR2)
- CONFIG_QCACLD_WLAN_LFR2 := y
- #Flag to enable Legacy Fast Roaming3(LFR3)
- ifneq ($(CONFIG_ARCH_SDX20), y)
- CONFIG_QCACLD_WLAN_LFR3 := y
+ ifeq ($(CONFIG_SLUB_DEBUG_ON),y)
+ CONFIG_DEBUG_MODE = slub_debug
endif
+endif
- # JB kernel has CPU enablement patches, so enable
- ifeq ($(CONFIG_ROME_IF),pci)
- CONFIG_PRIMA_WLAN_11AC_HIGH_TP := y
+##########################################
+
+# Interface configuration to enable/disable feature based on
+# interface value.
+# Possible Values: pci, snoc, sdio, usb
+
+# To Keep backward compatibality
+
+ifndef CONFIG_INTF
+ CONFIG_INTF = $(CONFIG_ROME_IF)
+
+ ifeq ($(CONFIG_CLD_HL_SDIO_CORE), y)
+ CONFIG_QCA_WIFI_SDIO := 1
endif
- ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_PRIMA_WLAN_11AC_HIGH_TP := n
- endif
- ifeq ($(CONFIG_ROME_IF),sdio)
- CONFIG_PRIMA_WLAN_11AC_HIGH_TP := n
- endif
-
- ifneq ($(CONFIG_MOBILE_ROUTER), y)
- #Flag to enable TDLS feature
- CONFIG_QCOM_TDLS := y
- endif
-
- CONFIG_QCACLD_FEATURE_GREEN_AP := y
-
- ifeq ($(CONFIG_ARCH_MSM8998), y)
- CONFIG_QCACLD_FEATURE_METERING := y
- endif
-
- ifeq ($(CONFIG_ARCH_SDM660), y)
- CONFIG_QCACLD_FEATURE_METERING := y
- endif
-
- ifeq ($(CONFIG_ARCH_SDM630), y)
- CONFIG_QCACLD_FEATURE_METERING := y
- endif
-
- ifeq ($(CONFIG_ARCH_SDM845), y)
- CONFIG_QCACLD_FEATURE_METERING := y
- endif
-
- ifeq ($(CONFIG_ARCH_SDM670), y)
- CONFIG_QCACLD_FEATURE_METERING := y
- endif
-
- #Flag to enable Fast Transition (11r) feature
- CONFIG_QCOM_VOWIFI_11R := y
-
- #Flag to enable FILS Feature (11ai)
- CONFIG_WLAN_FEATURE_FILS := y
- ifneq ($(CONFIG_QCA_CLD_WLAN),)
- ifeq (y,$(findstring y,$(CONFIG_CNSS) $(CONFIG_CNSS2) $(CONFIG_ICNSS)))
- #Flag to enable Protected Managment Frames (11w) feature
- CONFIG_WLAN_FEATURE_11W := y
- #Flag to enable LTE CoEx feature
- CONFIG_QCOM_LTE_COEX := y
- ifneq ($(CONFIG_MOBILE_ROUTER), y)
- #Flag to enable LPSS feature
- CONFIG_WLAN_FEATURE_LPSS := y
- endif
- endif
- endif
-
- #Flag to enable Protected Managment Frames (11w) feature
- ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_WLAN_FEATURE_11W := y
- endif
- ifeq ($(CONFIG_ROME_IF),sdio)
- CONFIG_WLAN_FEATURE_11W := y
- endif
-
- #Flag to enable the tx desc sanity check
- ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_QCA_TXDESC_SANITY_CHECKS := y
- endif
-
- ifneq ($(CONFIG_MOBILE_ROUTER), y)
- #Flag to enable NAN
- CONFIG_QCACLD_FEATURE_NAN := y
- endif
-
- ifneq ($(CONFIG_MOBILE_ROUTER), y)
- #Flag to enable NAN Data path
- CONFIG_WLAN_FEATURE_NAN_DATAPATH := y
- CONFIG_NAN_CONVERGENCE := y
- endif
-
- #Flag to enable Linux QCMBR feature as default feature
- ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_LINUX_QCMBR :=y
- endif
-
- CONFIG_MPC_UT_FRAMEWORK := y
-
- CONFIG_FEATURE_EPPING := y
-
- #Flag to enable offload packets feature
- CONFIG_WLAN_OFFLOAD_PACKETS := y
-
- #enable TSF get feature
- CONFIG_WLAN_SYNC_TSF := y
- #Enable DSRC feature
ifeq ($(CONFIG_QCA_WIFI_SDIO), 1)
- CONFIG_WLAN_FEATURE_DSRC := y
+ CONFIG_INTF = sdio
endif
-ifneq ($(CONFIG_ROME_IF),usb)
-ifneq ($(CONFIG_ROME_IF),sdio)
- #Flag to enable DISA
- CONFIG_WLAN_FEATURE_DISA := y
-
- #Flag to enable FIPS
- CONFIG_WLAN_FEATURE_FIPS := y
-
- #Flag to enable SAE
- CONFIG_WLAN_FEATURE_SAE := y
-
- #Flag to enable Fast Path feature
- CONFIG_WLAN_FASTPATH := y
-
- # Flag to enable NAPI
- CONFIG_WLAN_NAPI := y
- CONFIG_WLAN_NAPI_DEBUG := n
-
- # Flag to enable FW based TX Flow control
- ifeq (y,$(findstring y,$(CONFIG_CNSS_EOS) $(CONFIG_LITHIUM)))
- CONFIG_WLAN_TX_FLOW_CONTROL_V2 := y
- else
- CONFIG_WLAN_TX_FLOW_CONTROL_V2 := n
+ ifdef CONFIG_ICNSS
+ CONFIG_INTF = snoc
endif
- # Flag to enable LRO (Large Receive Offload)
- ifeq ($(CONFIG_INET_LRO), y)
- CONFIG_WLAN_LRO := y
- else
- CONFIG_WLAN_LRO := n
+ ifeq (y,$(findstring y,$(CONFIG_CNSS) $(CONFIG_CNSS2)))
+ ifndef CONFIG_ROME_IF
+ #use pci as default interface
+ CONFIG_INTF = pci
+ endif
endif
endif
-endif
-ifeq ($(CONFIG_ROME_IF), snoc)
- CONFIG_WLAN_TX_FLOW_CONTROL_V2 := y
-endif
+##########################################
- # Flag to enable LFR Subnet Detection
- CONFIG_LFR_SUBNET_DETECTION := y
+# enable/disable feature based on architecture
+# Possible values : rome, helium, lithium, genoa
- # Flag to enable MCC to SCC switch feature
- CONFIG_MCC_TO_SCC_SWITCH := y
+ifndef CONFIG_ARCH
+ CONFIG_ARCH = rome
-ifeq ($(CONFIG_SLUB_DEBUG), y)
- # Enable Obj Mgr Degug services if slub build
- CONFIG_WLAN_OBJMGR_DEBUG:= y
-endif
-endif
+ ifeq ($(CONFIG_CNSS_QCA6290), y)
+ CONFIG_ARCH = lithium
+ CONFIG_LITHIUM := y
+ endif
-# As per target team, build is done as follows:
-# Defconfig : build with default flags
-# Slub : defconfig + CONFIG_SLUB_DEBUG=y +
-# CONFIG_SLUB_DEBUG_ON=y + CONFIG_PAGE_POISONING=y
-# Perf : Using appropriate msmXXXX-perf_defconfig
-#
-# Shipment builds (user variants) should not have any debug feature
-# enabled. This is identified using 'TARGET_BUILD_VARIANT'. Slub builds
-# are identified using the CONFIG_SLUB_DEBUG_ON configuration. Since
-# there is no other way to identify defconfig builds, QCOMs internal
-# representation of perf builds (identified using the string 'perf'),
-# is used to identify if the build is a slub or defconfig one. This
-# way no critical debug feature will be enabled for perf and shipment
-# builds. Other OEMs are also protected using the TARGET_BUILD_VARIANT
-# config.
-ifneq ($(TARGET_BUILD_VARIANT),user)
ifeq ($(CONFIG_LITHIUM), y)
- CONFIG_FEATURE_PKTLOG := n
- else
- CONFIG_FEATURE_PKTLOG := y
+ CONFIG_ARCH = lithium
+ endif
+
+ ifeq ($(CONFIG_ICNSS), y)
+ CONFIG_ARCH = helium
endif
endif
-#Enable WLAN/Power debugfs feature only if debug_fs is enabled
-ifeq ($(CONFIG_DEBUG_FS), y)
- # Flag to enable debugfs. Depends on CONFIG_DEBUG_FS in kernel
- # configuration.
- CONFIG_WLAN_DEBUGFS := y
+##########################################
- CONFIG_WLAN_POWER_DEBUGFS := y
+include $(src)/configs/profile/$(CONFIG_PROFILE)
+include $(src)/configs/arch/$(CONFIG_ARCH)
+include $(src)/configs/interface/$(CONFIG_INTF)
+
+ifneq ($(CONFIG_DEBUG_MODE), no_debug)
+include $(src)/configs/debug/$(CONFIG_DEBUG_MODE)
endif
-# If not set, assume, Common driver is with in the build tree
-WLAN_COMMON_ROOT ?= ../qca-wifi-host-cmn
-WLAN_COMMON_INC ?= $(WLAN_ROOT)/$(WLAN_COMMON_ROOT)
+include $(src)/configs/Kbuild.default
-ifneq ($(CONFIG_MOBILE_ROUTER), y)
-CONFIG_QCOM_ESE := y
-endif
-
-# Feature flags which are not (currently) configurable via Kconfig
-
-#Whether to build debug version
-BUILD_DEBUG_VERSION := 1
-
-#Enable this flag to build driver in diag version
-BUILD_DIAG_VERSION := 1
-
-ifeq ($(CONFIG_SLUB_DEBUG), y)
- PANIC_ON_BUG := 1
- WLAN_WARN_ON_ASSERT := 1
-else ifeq ($(CONFIG_PERF_DEBUG), y)
- PANIC_ON_BUG := 1
- WLAN_WARN_ON_ASSERT := 1
-else
- PANIC_ON_BUG := 0
- WLAN_WARN_ON_ASSERT := 0
-endif
-
-# Compile all log levels by default
-CONFIG_WLAN_LOG_FATAL := y
-CONFIG_WLAN_LOG_ERROR := y
-CONFIG_WLAN_LOG_WARN := y
-CONFIG_WLAN_LOG_INFO := y
-CONFIG_WLAN_LOG_DEBUG := y
-
-#Enable OL debug and wmi unified functions
-CONFIG_ATH_PERF_PWR_OFFLOAD := 1
-
-#Disable packet log
-CONFIG_REMOVE_PKT_LOG := 0
-
-#Whether have QMI support
-CONFIG_QMI_SUPPORT := 1
-
-#Enable 11AC TX
-ifeq ($(CONFIG_ROME_IF),pci)
- CONFIG_ATH_11AC_TXCOMPACT := 1
-endif
-ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_ATH_11AC_TXCOMPACT := 0
-endif
-
-#Enable OS specific IRQ abstraction
-CONFIG_ATH_SUPPORT_SHARED_IRQ := 1
-
-#Enable message based HIF instead of RAW access in BMI
-ifeq ($(CONFIG_QCA_WIFI_SDIO), 1)
-CONFIG_HIF_MESSAGE_BASED := 0
-else
-CONFIG_HIF_MESSAGE_BASED := 1
-endif
-
-#Enable PCI specific APIS (dma, etc)
-ifeq ($(CONFIG_ROME_IF),pci)
- CONFIG_HIF_PCI := 1
-endif
-
-#Enable USB specific APIS
-ifeq ($(CONFIG_ROME_IF),usb)
- CONFIG_HIF_USB := 1
- CONFIG_PLD_USB_CNSS := y
-endif
-
-#Enable SDIO specific APIS
-ifeq ($(CONFIG_ROME_IF),sdio)
- CONFIG_HIF_SDIO := 1
-endif
-
-#Enable pci read/write config functions
-ifeq ($(CONFIG_ROME_IF),pci)
- CONFIG_ATH_PCI := 1
-endif
-
-ifeq ($(CONFIG_ROME_IF),snoc)
- CONFIG_HIF_SNOC:= 1
-endif
-
-ifneq ($(CONFIG_MOBILE_ROUTER), y)
-#Enable IBSS support on CLD
-CONFIG_QCA_IBSS_SUPPORT := 1
-endif
-
-#Enable power management suspend/resume functionality to PCI
-CONFIG_ATH_BUS_PM := 1
-
-#Enable FLOWMAC module support
-CONFIG_ATH_SUPPORT_FLOWMAC_MODULE := 0
-
-#Enable spectral support
-CONFIG_ATH_SUPPORT_SPECTRAL := 0
-
-#Enable HOST statistics support
-CONFIG_SUPPORT_HOST_STATISTICS := 0
-
-#Enable WDI Event support
-CONFIG_WDI_EVENT_ENABLE := 1
-
-#Endianess selection
-CONFIG_LITTLE_ENDIAN := 1
-
-#Enable TX reclaim support
-CONFIG_TX_CREDIT_RECLAIM_SUPPORT := 0
-
-#Enable FTM support
-CONFIG_QCA_WIFI_FTM := 1
-
-#Enable Checksum Offload
-CONFIG_CHECKSUM_OFFLOAD := 1
-
-#Enable GTK offload
-CONFIG_GTK_OFFLOAD := 1
-
-#Enable EXT WOW
-ifeq ($(CONFIG_ROME_IF),pci)
- CONFIG_EXT_WOW := 1
-endif
-
-#Set this to 1 to catch erroneous Target accesses during debug.
-CONFIG_ATH_PCIE_ACCESS_DEBUG := 0
-
-#Enable IPA offload
-ifeq ($(CONFIG_IPA), y)
-CONFIG_IPA_OFFLOAD := 1
-endif
-ifeq ($(CONFIG_IPA3), y)
-CONFIG_IPA_OFFLOAD := 1
-endif
-
-#Enable Signed firmware support for split binary format
-CONFIG_QCA_SIGNED_SPLIT_BINARY_SUPPORT := 0
-
-#Enable single firmware binary format
-CONFIG_QCA_SINGLE_BINARY_SUPPORT := 0
-
-#Enable collecting target RAM dump after kernel panic
-CONFIG_TARGET_RAMDUMP_AFTER_KERNEL_PANIC := 1
-
-#Flag to enable/disable secure firmware feature
-CONFIG_FEATURE_SECURE_FIRMWARE := 0
-
-#Flag to enable Stats Ext implementation
-CONFIG_FEATURE_STATS_EXT := 1
-
-#Flag to enable HTC credit history feature
-CONFIG_FEATURE_HTC_CREDIT_HISTORY := 1
-
-#Flag to enable MTRACE feature
-CONFIG_TRACE_RECORD_FEATURE := 1
-
-#Flag to enable p2p debug feature
-CONFIG_WLAN_FEATURE_P2P_DEBUG := 1
-
-ifeq ($(CONFIG_CFG80211),y)
-HAVE_CFG80211 := 1
-else
-ifeq ($(CONFIG_CFG80211),m)
-HAVE_CFG80211 := 1
-else
-HAVE_CFG80211 := 0
-endif
-endif
-
-ifeq ($(CONFIG_SLUB_DEBUG_ON), y)
- CONFIG_FEATURE_UNIT_TEST_SUSPEND := 1
- CONFIG_LEAK_DETECTION := 1
-endif
-
-# enable unit-test suspend for napier builds
-ifeq ($(CONFIG_LITHIUM), y)
- CONFIG_FEATURE_UNIT_TEST_SUSPEND := 1
-endif
+##########################################
############ UAPI ############
UAPI_DIR := uapi
@@ -554,7 +253,7 @@
HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_he.o
endif
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_rx_monitor.o
endif
@@ -685,7 +384,7 @@
$(SAP_SRC_DIR)/sap_fsm.o \
$(SAP_SRC_DIR)/sap_module.o
-############ DFS ############ 350
+############ DFS ############
DFS_DIR := $(WLAN_COMMON_ROOT)/umac/dfs
DFS_CORE_INC_DIR := $(DFS_DIR)/core/inc
DFS_CORE_SRC_DIR := $(DFS_DIR)/core/src
@@ -1273,7 +972,7 @@
TXRX_OBJS += $(TXRX_DIR)/ol_txrx_ipa.o
endif
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
############ DP 3.0 ############
DP_INC := -I$(WLAN_COMMON_ROOT)/dp/inc \
-I$(WLAN_COMMON_ROOT)/dp/wifi3.0
@@ -1501,7 +1200,7 @@
$(WLAN_COMMON_ROOT)/$(HIF_CE_DIR)/ce_tasklet.o \
$(WLAN_COMMON_ROOT)/$(HIF_DIR)/src/regtable.o
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
HIF_CE_OBJS += $(WLAN_COMMON_ROOT)/$(HIF_DIR)/src/qca6290def.o \
$(WLAN_COMMON_ROOT)/$(HIF_CE_DIR)/ce_service_srng.o
endif
@@ -1562,7 +1261,7 @@
HIF_OBJS += $(WLAN_COMMON_ROOT)/$(HIF_DISPATCHER_DIR)/multibus_usb.o
endif
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
############ HAL ############
HAL_DIR := hal
HAL_INC := -I$(WLAN_COMMON_INC)/$(HAL_DIR)/inc \
@@ -1680,7 +1379,7 @@
INCS += $(HIF_INC) \
$(BMI_INC)
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
INCS += $(HAL_INC) \
$(DP_INC)
endif
@@ -1761,7 +1460,7 @@
$(CLD_TARGET_IF_OBJ) \
$(GLOBAL_LMAC_IF_OBJ)
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
OBJS += $(HAL_OBJS)
endif
@@ -1814,7 +1513,7 @@
OBJS += $(UMAC_GREEN_AP_OBJS)
endif
-ifeq ($(CONFIG_LITHIUM), y)
+ifeq ($(CONFIG_ARCH),lithium)
OBJS += $(DP_OBJS)
endif
@@ -1911,7 +1610,7 @@
endif
# Flag to enable bus auto suspend
-ifeq ($(CONFIG_ROME_IF),pci)
+ifeq ($(CONFIG_INTF),pci)
ifeq ($(CONFIG_BUS_AUTO_SUSPEND), y)
CDEFINES += -DFEATURE_RUNTIME_PM
endif
@@ -1921,16 +1620,16 @@
CDEFINES += -DCONFIG_PLD_SNOC_ICNSS
endif
-ifeq (y,$(filter y,$(CONFIG_CNSS_EOS) $(CONFIG_ICNSS)))
+ifeq ($(CONFIG_ARCH),helium)
CDEFINES += -DQCA_WIFI_3_0
endif
-ifeq (y,$(filter y,$(CONFIG_CNSS_ADRASTEA) $(CONFIG_ICNSS)))
+ifeq ($(CONFIG_ARCH),helium)
CDEFINES += -DQCA_WIFI_3_0_ADRASTEA
+CDEFINES += -DADRASTEA_RRI_ON_DDR
ifeq ($(CONFIG_QMI_SUPPORT), 1)
CDEFINES += -DADRASTEA_SHADOW_REGISTERS
endif
-CDEFINES += -DADRASTEA_RRI_ON_DDR
endif
ifeq ($(CONFIG_QMI_SUPPORT), 0)
@@ -1965,18 +1664,13 @@
CDEFINES += -DQCA_LL_TX_FLOW_CONTROL_V2
CDEFINES += -DQCA_LL_TX_FLOW_GLOBAL_MGMT_POOL
else
-ifeq ($(CONFIG_ROME_IF),pci)
-ifneq ($(CONFIG_LITHIUM),y)
+ifeq ($(CONFIG_INTF),pci)
+ifneq ($(CONFIG_ARCH),lithium)
CDEFINES += -DQCA_LL_LEGACY_TX_FLOW_CONTROL
endif
endif
endif
-ifneq ($(CONFIG_QCA_CLD_WLAN),)
-CDEFINES += -DWCN_PRONTO
-CDEFINES += -DWCN_PRONTO_V1
-endif
-
ifeq ($(BUILD_DEBUG_VERSION),1)
CDEFINES += -DWLAN_DEBUG \
-DPE_DEBUG_LOGW \
@@ -1993,7 +1687,7 @@
CDEFINES += -DWLAN_SUSPEND_RESUME_TEST
endif
-ifeq ($(CONFIG_SLUB_DEBUG_ON),y)
+ifeq ($(CONFIG_DEBUG_MODE),slub_debug)
CDEFINES += -DTIMER_MANAGER
CDEFINES += -DMEMORY_DEBUG
CDEFINES += -DCONFIG_HALT_KMEMLEAK
@@ -2148,11 +1842,6 @@
CDEFINES += -DATH_SUPPORT_SHARED_IRQ
endif
-#Enable message based HIF instead of RAW access in BMI
-ifeq ($(CONFIG_HIF_MESSAGE_BASED), 1)
-CDEFINES += -DHIF_MESSAGE_BASED
-endif
-
#Enable PCI specific APIS (dma, etc)
ifeq ($(CONFIG_HIF_PCI), 1)
CDEFINES += -DHIF_PCI
@@ -2163,7 +1852,7 @@
endif
#Enable High Latency related Flags
-ifeq ($(CONFIG_QCA_WIFI_SDIO), 1)
+ifeq ($(CONFIG_INTF),sdio)
CDEFINES += -DCONFIG_HL_SUPPORT \
-DCONFIG_AR6320_SUPPORT \
-DSDIO_3_0 \
@@ -2198,7 +1887,7 @@
endif
#Enable USB specific APIS
-ifeq ($(CONFIG_HIF_USB), 1)
+ifeq ($(CONFIG_INTF),usb)
CDEFINES += -DHIF_USB \
-DCONFIG_PLD_USB_CNSS \
-DDEBUG_HL_LOGGING \
@@ -2208,11 +1897,6 @@
#Enable FW logs through ini
CDEFINES += -DCONFIG_FW_LOGS_BASED_ON_INI
-#Enable pci read/write config functions
-ifeq ($(CONFIG_ATH_PCI), 1)
-CDEFINES += -DATH_PCI
-endif
-
#Enable power management suspend/resume functionality
ifeq ($(CONFIG_ATH_BUS_PM), 1)
CDEFINES += -DATH_BUS_PM
@@ -2284,7 +1968,7 @@
endif
#Enable Channel Matrix restriction for all Rome only targets
-ifneq (y,$(filter y,$(CONFIG_CNSS_EOS) $(CONFIG_ICNSS)))
+ifneq ($(CONFIG_ICNSS),y)
CDEFINES += -DWLAN_ENABLE_CHNL_MATRIX_RESTRICTION
endif
@@ -2297,7 +1981,7 @@
CDEFINES += -DQCA_HT_2040_COEX
#features specific to mobile router use case
-ifeq ($(CONFIG_MOBILE_ROUTER), y)
+ifeq ($(CONFIG_PROFILE),mobilerouter)
#enable MCC TO SCC switch
CDEFINES += -DFEATURE_WLAN_MCC_TO_SCC_SWITCH
@@ -2320,7 +2004,8 @@
#Disable STA-AP Mode DFS support
CDEFINES += -DFEATURE_WLAN_STA_AP_MODE_DFS_DISABLE
-else #CONFIG_MOBILE_ROUTER
+CDEFINES += -DFEATURE_AP_MCC_CH_AVOIDANCE
+else
#Open P2P device interface only for non-Mobile router use cases
CDEFINES += -DWLAN_OPEN_P2P_INTERFACE
@@ -2328,7 +2013,7 @@
#Enable 2.4 GHz social channels in 5 GHz only mode for p2p usage
CDEFINES += -DWLAN_ENABLE_SOCIAL_CHANNELS_5G_ONLY
-endif #CONFIG_MOBILE_ROUTER
+endif
#Green AP feature
ifeq ($(CONFIG_QCACLD_FEATURE_GREEN_AP),y)
@@ -2395,51 +2080,45 @@
CDEFINES += -DWLAN_FEATURE_TSF_PLUS
endif
+ifeq ($(CONFIG_ARCH),helium)
# Enable full rx re-order offload for adrastea
-ifeq (y, $(filter y, $(CONFIG_CNSS_ADRASTEA) $(CONFIG_ICNSS)))
CDEFINES += -DWLAN_FEATURE_RX_FULL_REORDER_OL
-endif
# Enable athdiag procfs debug support for adrastea
-ifeq (y, $(filter y, $(CONFIG_CNSS_ADRASTEA) $(CONFIG_ICNSS)))
CDEFINES += -DCONFIG_ATH_PROCFS_DIAG_SUPPORT
-endif
# Enable 11AC TX compact feature for adrastea
-ifeq (y, $(filter y, $(CONFIG_CNSS_ADRASTEA) $(CONFIG_ICNSS)))
CDEFINES += -DATH_11AC_TXCOMPACT
-endif
-# NOTE: CONFIG_64BIT_PADDR requires CONFIG_HELIUMPLUS
-ifeq (y,$(filter y,$(CONFIG_CNSS_EOS) $(CONFIG_ICNSS)))
-CONFIG_HELIUMPLUS := y
-CONFIG_64BIT_PADDR := y
-CONFIG_FEATURE_TSO := y
-CONFIG_FEATURE_TSO_DEBUG := y
ifneq ($(CONFIG_FORCE_ALLOC_FROM_DMA_ZONE), y)
CONFIG_ENABLE_DEBUG_ADDRESS_MARKING := y
endif
+
+# NOTE: CONFIG_64BIT_PADDR requires CONFIG_HELIUMPLUS
ifeq ($(CONFIG_HELIUMPLUS),y)
CDEFINES += -DHELIUMPLUS
CDEFINES += -DAR900B
+
ifeq ($(CONFIG_64BIT_PADDR),y)
CDEFINES += -DHTT_PADDR64
endif
-ifeq ($(CONFIG_SLUB_DEBUG_ON),y)
+ifeq ($(CONFIG_DEBUG_MODE),slub_debug)
CDEFINES += -DOL_RX_INDICATION_RECORD
CDEFINES += -DTSOSEG_DEBUG
endif
-
endif
+
endif
ifeq ($(CONFIG_ENABLE_DEBUG_ADDRESS_MARKING),y)
CDEFINES += -DENABLE_DEBUG_ADDRESS_MARKING
endif
+
ifeq ($(CONFIG_FEATURE_TSO),y)
CDEFINES += -DFEATURE_TSO
endif
+
ifeq ($(CONFIG_FEATURE_TSO_DEBUG),y)
CDEFINES += -DFEATURE_TSO_DEBUG
endif
@@ -2448,10 +2127,6 @@
CDEFINES += -DFEATURE_LRO
endif
-ifeq ($(CONFIG_MOBILE_ROUTER), y)
-CDEFINES += -DFEATURE_AP_MCC_CH_AVOIDANCE
-endif
-
ifeq ($(CONFIG_MPC_UT_FRAMEWORK), y)
CDEFINES += -DMPC_UT_FRAMEWORK
endif
@@ -2490,12 +2165,12 @@
#Flag to enable/disable WLAN D0-WOW
ifeq ($(CONFIG_PCI_MSM), y)
-ifeq ($(CONFIG_ROME_IF),pci)
+ifeq ($(CONFIG_INTF),pci)
CDEFINES += -DFEATURE_WLAN_D0WOW
endif
endif
-ifeq ($(CONFIG_LITHIUM),y)
+ifeq ($(CONFIG_ARCH),lithium)
CDEFINES += -DCONFIG_SHADOW_V2
CDEFINES += -DQCA6290_HEADERS_DEF
CDEFINES += -DQCA_WIFI_QCA6290