MODNAME := wlan

#Do we panic on bug?  default is to warn
PANIC_ON_BUG := 0

#Re-enable wifi on WDI timeout
RE_ENABLE_WIFI_ON_WDI_TIMEOUT := 0

ifeq ($(CONFIG_CFG80211),y)
HAVE_CFG80211 := 1
else
ifeq ($(CONFIG_CFG80211),m)
HAVE_CFG80211 := 1
EXTRA_CFLAGS += -DCONFIG_CFG80211=1
else
HAVE_CFG80211 := 0
endif
endif

INC_PRE := drivers/staging/prima

############ BAP ############
BAP_DIR :=	CORE/BAP
BAP_INC_DIR :=	$(BAP_DIR)/inc
BAP_SRC_DIR :=	$(BAP_DIR)/src

BAP_INC := 	-I$(INC_PRE)/$(BAP_INC_DIR) \
		-I$(INC_PRE)/$(BAP_SRC_DIR)

BAP_OBJS := 	$(BAP_SRC_DIR)/bapApiData.o		\
		$(BAP_SRC_DIR)/bapApiDebug.o		\
		$(BAP_SRC_DIR)/bapApiExt.o		\
		$(BAP_SRC_DIR)/bapApiHCBB.o		\
		$(BAP_SRC_DIR)/bapApiInfo.o		\
		$(BAP_SRC_DIR)/bapApiLinkCntl.o		\
		$(BAP_SRC_DIR)/bapApiLinkSupervision.o	\
		$(BAP_SRC_DIR)/bapApiStatus.o     \
		$(BAP_SRC_DIR)/bapApiTimer.o \
		$(BAP_SRC_DIR)/bapModule.o		\
		$(BAP_SRC_DIR)/bapRsn8021xAuthFsm.o \
		$(BAP_SRC_DIR)/bapRsn8021xPrf.o     \
		$(BAP_SRC_DIR)/bapRsn8021xSuppRsnFsm.o \
		$(BAP_SRC_DIR)/bapRsnAsfPacket.o    \
		$(BAP_SRC_DIR)/bapRsnSsmAesKeyWrap.o	\
		$(BAP_SRC_DIR)/bapRsnSsmEapol.o     \
		$(BAP_SRC_DIR)/bapRsnSsmReplayCtr.o \
		$(BAP_SRC_DIR)/bapRsnTxRx.o		\
		$(BAP_SRC_DIR)/btampFsm.o		\
		$(BAP_SRC_DIR)/btampHCI.o

############ DXE ############
DXE_DIR :=	CORE/DXE
DXE_INC_DIR :=	$(DXE_DIR)/inc
DXE_SRC_DIR :=	$(DXE_DIR)/src

DXE_INC := 	-I$(INC_PRE)/$(DXE_INC_DIR) \
		-I$(INC_PRE)/$(DXE_SRC_DIR)

DXE_OBJS = 	$(DXE_SRC_DIR)/wlan_qct_dxe.o \
		$(DXE_SRC_DIR)/wlan_qct_dxe_cfg_i.o

############ HDD ############
HDD_DIR :=	CORE/HDD
HDD_INC_DIR :=	$(HDD_DIR)/inc
HDD_SRC_DIR :=	$(HDD_DIR)/src

HDD_INC := 	-I$(INC_PRE)/$(HDD_INC_DIR) \
		-I$(INC_PRE)/$(HDD_SRC_DIR)

HDD_OBJS := 	$(HDD_SRC_DIR)/bap_hdd_main.o \
		$(HDD_SRC_DIR)/wlan_hdd_assoc.o \
		$(HDD_SRC_DIR)/wlan_hdd_cfg.o \
		$(HDD_SRC_DIR)/wlan_hdd_dev_pwr.o \
		$(HDD_SRC_DIR)/wlan_hdd_dp_utils.o \
		$(HDD_SRC_DIR)/wlan_hdd_early_suspend.o \
		$(HDD_SRC_DIR)/wlan_hdd_ftm.o \
		$(HDD_SRC_DIR)/wlan_hdd_hostapd.o \
		$(HDD_SRC_DIR)/wlan_hdd_oemdata.o \
		$(HDD_SRC_DIR)/wlan_hdd_main.o \
		$(HDD_SRC_DIR)/wlan_hdd_mib.o \
		$(HDD_SRC_DIR)/wlan_hdd_scan.o \
		$(HDD_SRC_DIR)/wlan_hdd_softap_tx_rx.o \
		$(HDD_SRC_DIR)/wlan_hdd_tx_rx.o \
		$(HDD_SRC_DIR)/wlan_hdd_wext.o \
		$(HDD_SRC_DIR)/wlan_hdd_wmm.o \
		$(HDD_SRC_DIR)/wlan_hdd_wowl.o

ifeq ($(HAVE_CFG80211),1)
HDD_OBJS +=	$(HDD_SRC_DIR)/wlan_hdd_cfg80211.o \
		$(HDD_SRC_DIR)/wlan_hdd_p2p.o
endif

############ MAC ############
MAC_DIR :=	CORE/MAC
MAC_INC_DIR :=	$(MAC_DIR)/inc
MAC_SRC_DIR :=	$(MAC_DIR)/src

MAC_INC := 	-I$(INC_PRE)/$(MAC_INC_DIR) \
		-I$(INC_PRE)/$(MAC_SRC_DIR)/dph \
		-I$(INC_PRE)/$(MAC_SRC_DIR)/include \
		-I$(INC_PRE)/$(MAC_SRC_DIR)/pe/include \
		-I$(INC_PRE)/$(MAC_SRC_DIR)/pe/lim

MAC_CFG_OBJS := $(MAC_SRC_DIR)/cfg/cfgApi.o \
		$(MAC_SRC_DIR)/cfg/cfgDebug.o \
		$(MAC_SRC_DIR)/cfg/cfgParamName.o \
		$(MAC_SRC_DIR)/cfg/cfgProcMsg.o \
		$(MAC_SRC_DIR)/cfg/cfgSendMsg.o

MAC_DPH_OBJS :=	$(MAC_SRC_DIR)/dph/dphHashTable.o

MAC_LIM_OBJS := $(MAC_SRC_DIR)/pe/lim/limAIDmgmt.o			\
		$(MAC_SRC_DIR)/pe/lim/limAdmitControl.o \
		$(MAC_SRC_DIR)/pe/lim/limApi.o     \
		$(MAC_SRC_DIR)/pe/lim/limAssocUtils.o     \
		$(MAC_SRC_DIR)/pe/lim/limDebug.o \
		$(MAC_SRC_DIR)/pe/lim/limFT.o \
		$(MAC_SRC_DIR)/pe/lim/limIbssPeerMgmt.o   \
		$(MAC_SRC_DIR)/pe/lim/limLinkMonitoringAlgo.o    \
		$(MAC_SRC_DIR)/pe/lim/limLogDump.o  \
		$(MAC_SRC_DIR)/pe/lim/limP2P.o				\
		$(MAC_SRC_DIR)/pe/lim/limProcessActionFrame.o    \
		$(MAC_SRC_DIR)/pe/lim/limProcessAssocReqFrame.o  \
		$(MAC_SRC_DIR)/pe/lim/limProcessAssocRspFrame.o  \
		$(MAC_SRC_DIR)/pe/lim/limProcessAuthFrame.o \
		$(MAC_SRC_DIR)/pe/lim/limProcessBeaconFrame.o    \
		$(MAC_SRC_DIR)/pe/lim/limProcessCfgUpdates.o     \
		$(MAC_SRC_DIR)/pe/lim/limProcessDeauthFrame.o    \
		$(MAC_SRC_DIR)/pe/lim/limProcessDisassocFrame.o  \
		$(MAC_SRC_DIR)/pe/lim/limProcessLmmMessages.o    \
		$(MAC_SRC_DIR)/pe/lim/limProcessMessageQueue.o   \
		$(MAC_SRC_DIR)/pe/lim/limProcessMlmReqMessages.o \
		$(MAC_SRC_DIR)/pe/lim/limProcessMlmRspMessages.o \
		$(MAC_SRC_DIR)/pe/lim/limProcessProbeReqFrame.o  \
		$(MAC_SRC_DIR)/pe/lim/limProcessProbeRspFrame.o  \
		$(MAC_SRC_DIR)/pe/lim/limProcessSmeReqMessages.o \
		$(MAC_SRC_DIR)/pe/lim/limPropExtsUtils.o  \
		$(MAC_SRC_DIR)/pe/lim/limRoamingAlgo.o    \
		$(MAC_SRC_DIR)/pe/lim/limScanResultUtils.o \
		$(MAC_SRC_DIR)/pe/lim/limSecurityUtils.o  \
		$(MAC_SRC_DIR)/pe/lim/limSendManagementFrames.o  \
		$(MAC_SRC_DIR)/pe/lim/limSendMessages.o   \
		$(MAC_SRC_DIR)/pe/lim/limSendSmeRspMessages.o    \
		$(MAC_SRC_DIR)/pe/lim/limSerDesUtils.o    \
		$(MAC_SRC_DIR)/pe/lim/limSession.o \
		$(MAC_SRC_DIR)/pe/lim/limSessionUtils.o \
		$(MAC_SRC_DIR)/pe/lim/limSmeReqUtils.o    \
		$(MAC_SRC_DIR)/pe/lim/limStaHashApi.o     \
		$(MAC_SRC_DIR)/pe/lim/limTimerUtils.o     \
		$(MAC_SRC_DIR)/pe/lim/limTrace.o			\
		$(MAC_SRC_DIR)/pe/lim/limUtils.o   \

ifeq ($(CONFIG_QCOM_CCX),y)
MAC_LIM_OBJS += $(MAC_SRC_DIR)/pe/lim/limProcessCcxFrame.o
endif

MAC_PMM_OBJS := $(MAC_SRC_DIR)/pe/pmm/pmmAP.o		\
		$(MAC_SRC_DIR)/pe/pmm/pmmApi.o		\
		$(MAC_SRC_DIR)/pe/pmm/pmmDebug.o

MAC_SCH_OBJS := $(MAC_SRC_DIR)/pe/sch/schApi.o    \
		$(MAC_SRC_DIR)/pe/sch/schBeaconGen.o     \
		$(MAC_SRC_DIR)/pe/sch/schBeaconProcess.o \
		$(MAC_SRC_DIR)/pe/sch/schDebug.o  \
		$(MAC_SRC_DIR)/pe/sch/schMessage.o

MAC_RRM_OBJS :=	$(MAC_SRC_DIR)/pe/rrm/rrmApi.o

MAC_OBJS := 	$(MAC_CFG_OBJS) \
		$(MAC_DPH_OBJS) \
		$(MAC_LIM_OBJS) \
		$(MAC_PMM_OBJS) \
		$(MAC_SCH_OBJS) \
		$(MAC_RRM_OBJS)

############ SAP ############
SAP_DIR :=	CORE/SAP
SAP_INC_DIR :=	$(SAP_DIR)/inc
SAP_SRC_DIR :=	$(SAP_DIR)/src

SAP_INC := 	-I$(INC_PRE)/$(SAP_INC_DIR) \
		-I$(INC_PRE)/$(SAP_SRC_DIR)

SAP_OBJS :=	$(SAP_SRC_DIR)/sapApiLinkCntl.o \
		$(SAP_SRC_DIR)/sapChSelect.o \
		$(SAP_SRC_DIR)/sapFsm.o \
		$(SAP_SRC_DIR)/sapModule.o

############ SME ############
SME_DIR :=	CORE/SME
SME_INC_DIR :=	$(SME_DIR)/inc
SME_SRC_DIR :=	$(SME_DIR)/src

SME_INC := 	-I$(INC_PRE)/$(SME_INC_DIR) \
		-I$(INC_PRE)/$(SME_SRC_DIR)/csr

SME_CCM_OBJS := $(SME_SRC_DIR)/ccm/ccmApi.o \
		$(SME_SRC_DIR)/ccm/ccmLogDump.o

SME_CSR_OBJS := $(SME_SRC_DIR)/csr/csrApiRoam.o \
		$(SME_SRC_DIR)/csr/csrApiScan.o \
		$(SME_SRC_DIR)/csr/csrCmdProcess.o \
		$(SME_SRC_DIR)/csr/csrLinkList.o \
		$(SME_SRC_DIR)/csr/csrLogDump.o \
		$(SME_SRC_DIR)/csr/csrNeighborRoam.o \
		$(SME_SRC_DIR)/csr/csrUtil.o

ifeq ($(CONFIG_QCOM_CCX),y)
SME_CSR_OBJS += $(SME_SRC_DIR)/csr/csrCcx.o 
endif

SME_PMC_OBJS := $(SME_SRC_DIR)/pmc/pmcApi.o \
		$(SME_SRC_DIR)/pmc/pmc.o \
		$(SME_SRC_DIR)/pmc/pmcLogDump.o

SME_QOS_OBJS := $(SME_SRC_DIR)/QoS/sme_Qos.o

SME_CMN_OBJS := $(SME_SRC_DIR)/sme_common/sme_Api.o \
		$(SME_SRC_DIR)/sme_common/sme_FTApi.o

SME_BTC_OBJS := $(SME_SRC_DIR)/btc/btcApi.o

SME_OEM_DATA_OBJS := $(SME_SRC_DIR)/oemData/oemDataApi.o

SME_P2P_OBJS = $(SME_SRC_DIR)/p2p/p2p_Api.o

SME_RRM_OBJS := $(SME_SRC_DIR)/rrm/sme_rrm.o

SME_OBJS :=	$(SME_BTC_OBJS) \
		$(SME_CCM_OBJS) \
		$(SME_CMN_OBJS) \
		$(SME_CSR_OBJS) \
		$(SME_OEM_DATA_OBJS) \
		$(SME_P2P_OBJS) \
		$(SME_PMC_OBJS) \
		$(SME_QOS_OBJS) \
		$(SME_RRM_OBJS)

############ SVC ############
SVC_DIR :=	CORE/SVC
SVC_INC_DIR :=	$(SVC_DIR)/inc
SVC_SRC_DIR :=	$(SVC_DIR)/src

SVC_INC := 	-I$(INC_PRE)/$(SVC_INC_DIR) \
		-I$(INC_PRE)/$(SVC_DIR)/external

BTC_SRC_DIR :=	$(SVC_SRC_DIR)/btc
BTC_OBJS :=	$(BTC_SRC_DIR)/wlan_btc_svc.o

NLINK_SRC_DIR := $(SVC_SRC_DIR)/nlink
NLINK_OBJS :=	$(NLINK_SRC_DIR)/wlan_nlink_srv.o

PTT_SRC_DIR :=	$(SVC_SRC_DIR)/ptt
PTT_OBJS :=	$(PTT_SRC_DIR)/wlan_ptt_sock_svc.o

SVC_OBJS :=	$(BTC_OBJS) \
		$(NLINK_OBJS) \
		$(PTT_OBJS)

############ SYS ############
SYS_DIR :=	CORE/SYS

SYS_INC := 	-I$(INC_PRE)/$(SYS_DIR)/common/inc \
		-I$(INC_PRE)/$(SYS_DIR)/legacy/src/pal/inc \
		-I$(INC_PRE)/$(SYS_DIR)/legacy/src/platform/inc \
		-I$(INC_PRE)/$(SYS_DIR)/legacy/src/system/inc \
		-I$(INC_PRE)/$(SYS_DIR)/legacy/src/utils/inc \

SYS_COMMON_SRC_DIR := $(SYS_DIR)/common/src
SYS_LEGACY_SRC_DIR := $(SYS_DIR)/legacy/src
SYS_OBJS :=	$(SYS_COMMON_SRC_DIR)/wlan_qct_sys.o \
		$(SYS_LEGACY_SRC_DIR)/pal/src/palApiComm.o \
		$(SYS_LEGACY_SRC_DIR)/pal/src/palTimer.o \
		$(SYS_LEGACY_SRC_DIR)/platform/src/VossWrapper.o \
		$(SYS_LEGACY_SRC_DIR)/system/src/macInitApi.o \
		$(SYS_LEGACY_SRC_DIR)/system/src/sysEntryFunc.o \
		$(SYS_LEGACY_SRC_DIR)/system/src/sysWinStartup.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/dot11f.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/logApi.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/logDump.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/macTrace.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/parserApi.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/utilsApi.o \
		$(SYS_LEGACY_SRC_DIR)/utils/src/utilsParser.o

ifeq ($(CONFIG_QCOM_CCX),y)
SYS_OBJS += $(SYS_LEGACY_SRC_DIR)/utils/src/limCcxparserApi.o
endif

############ TL ############
TL_DIR :=	CORE/TL
TL_INC_DIR :=	$(TL_DIR)/inc
TL_SRC_DIR :=	$(TL_DIR)/src

TL_INC := 	-I$(INC_PRE)/$(TL_INC_DIR) \
		-I$(INC_PRE)/$(TL_SRC_DIR)

TL_OBJS := 	$(TL_SRC_DIR)/wlan_qct_tl.o \
		     $(TL_SRC_DIR)/wlan_qct_tl_ba.o \
		     $(TL_SRC_DIR)/wlan_qct_tl_hosupport.o

############ VOSS ############
VOSS_DIR :=	CORE/VOSS
VOSS_INC_DIR :=	$(VOSS_DIR)/inc
VOSS_SRC_DIR :=	$(VOSS_DIR)/src

VOSS_INC := 	-I$(INC_PRE)/$(VOSS_INC_DIR) \
		-I$(INC_PRE)/$(VOSS_SRC_DIR)

VOSS_OBJS :=    $(VOSS_SRC_DIR)/vos_types.o \
				$(VOSS_SRC_DIR)/vos_event.o  \
				$(VOSS_SRC_DIR)/vos_getBin.o \
				$(VOSS_SRC_DIR)/vos_list.o   \
				$(VOSS_SRC_DIR)/vos_lock.o   \
				$(VOSS_SRC_DIR)/vos_memory.o \
				$(VOSS_SRC_DIR)/vos_mq.o     \
				$(VOSS_SRC_DIR)/vos_nvitem.o \
				$(VOSS_SRC_DIR)/vos_packet.o \
				$(VOSS_SRC_DIR)/vos_power.o  \
				$(VOSS_SRC_DIR)/vos_threads.o \
				$(VOSS_SRC_DIR)/vos_timer.o   \
				$(VOSS_SRC_DIR)/vos_trace.o  \
				$(VOSS_SRC_DIR)/vos_api.o    \
				$(VOSS_SRC_DIR)/vos_sched.o   \
				$(VOSS_SRC_DIR)/vos_utils.o

ifeq ($(BUILD_DIAG_VERSION),1)
VOSS_OBJS += $(VOSS_SRC_DIR)/vos_diag.o
endif

############ WDA ############
WDA_DIR :=	CORE/WDA
WDA_INC_DIR :=	$(WDA_DIR)/inc
WDA_SRC_DIR :=	$(WDA_DIR)/src

WDA_INC := 	-I$(INC_PRE)/$(WDA_INC_DIR) \
		-I$(INC_PRE)/$(WDA_INC_DIR)/legacy \
		-I$(INC_PRE)/$(WDA_SRC_DIR)

WDA_OBJS = $(WDA_SRC_DIR)/wlan_qct_wda.o \
	$(WDA_SRC_DIR)/wlan_qct_wda_debug.o \
	$(WDA_SRC_DIR)/wlan_qct_wda_ds.o \
	$(WDA_SRC_DIR)/wlan_qct_wda_legacy.o \
	$(WDA_SRC_DIR)/wlan_nv.o

############ WDI ############
WDI_DIR :=	CORE/WDI

WDI_CP_INC :=	-I$(INC_PRE)/$(WDI_DIR)/CP/inc/

WDI_CP_SRC_DIR := $(WDI_DIR)/CP/src
WDI_CP_OBJS :=	$(WDI_CP_SRC_DIR)/wlan_qct_wdi.o  \
		$(WDI_CP_SRC_DIR)/wlan_qct_wdi_dp.o  \
		$(WDI_CP_SRC_DIR)/wlan_qct_wdi_sta.o

WDI_DP_INC := -I$(INC_PRE)/$(WDI_DIR)/DP/inc/

WDI_DP_SRC_DIR := $(WDI_DIR)/DP/src
WDI_DP_OBJS :=		$(WDI_DP_SRC_DIR)/wlan_qct_wdi_bd.o  \
			$(WDI_DP_SRC_DIR)/wlan_qct_wdi_ds.o

WDI_TRP_INC :=		-I$(INC_PRE)/$(WDI_DIR)/TRP/CTS/inc/ \
			-I$(INC_PRE)/$(WDI_DIR)/TRP/DTS/inc/ 

WDI_TRP_CTS_SRC_DIR :=	$(WDI_DIR)/TRP/CTS/src
WDI_TRP_CTS_OBJS :=	$(WDI_TRP_CTS_SRC_DIR)/wlan_qct_wdi_cts.o 

WDI_TRP_DTS_SRC_DIR :=	$(WDI_DIR)/TRP/DTS/src
WDI_TRP_DTS_OBJS :=	$(WDI_TRP_DTS_SRC_DIR)/wlan_qct_wdi_dts.o 

WDI_TRP_OBJS :=	$(WDI_TRP_CTS_OBJS) \
		$(WDI_TRP_DTS_OBJS)

WDI_WPAL_INC := -I$(INC_PRE)/$(WDI_DIR)/WPAL/inc

WDI_WPAL_SRC_DIR := $(WDI_DIR)/WPAL/src
WDI_WPAL_OBJS := $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_packet.o  \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_timer.o  \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_trace.o  \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_api.o  \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_sync.o \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_msg.o \
		$(WDI_WPAL_SRC_DIR)/wlan_qct_pal_device.o \

WDI_INC :=	$(WDI_CP_INC)\
		$(WDI_DP_INC) \
		$(WDI_TRP_INC) \
		$(WDI_WPAL_INC)

WDI_OBJS :=	$(WDI_CP_OBJS)  \
		$(WDI_DP_OBJS)  \
		$(WDI_TRP_OBJS) \
		$(WDI_WPAL_OBJS)

RIVA_INC :=	-I$(INC_PRE)/riva/inc/

LINUX_INC :=	-Iinclude/linux

INCS :=		$(BAP_INC)  \
		$(DXE_INC)  \
		$(HDD_INC)  \
		$(LINUX_INC) \
		$(MAC_INC)  \
		$(PTT_INC)  \
		$(RIVA_INC) \
		$(SAP_INC)  \
		$(SME_INC)  \
		$(SVC_INC)  \
		$(SYS_INC)  \
		$(TL_INC)   \
		$(VOSS_INC) \
		$(WDA_INC)  \
		$(WDI_INC)

OBJS :=		$(BAP_OBJS)  \
		$(DXE_OBJS)  \
		$(HDD_OBJS)  \
		$(MAC_OBJS)  \
		$(PTT_OBJS)  \
		$(SAP_OBJS)  \
		$(SME_OBJS)  \
		$(SVC_OBJS)  \
		$(SYS_OBJS)  \
		$(TL_OBJS)   \
		$(VOSS_OBJS) \
		$(WDA_OBJS)  \
		$(WDI_OBJS)

EXTRA_CFLAGS += $(INCS)

CDEFINES  := -DANI_PRODUCT_TYPE_CLIENT=1 \
		-DANI_BUS_TYPE_PLATFORM=1 \
		-DANI_LITTLE_BYTE_ENDIAN \
		-DANI_LITTLE_BIT_ENDIAN \
		-DWLAN_STA=1 \
		-DAP=2 \
		-DWNI_POLARIS_FW_PRODUCT=1 \
		-DQC_WLAN_CHIPSET_PRIMA \
		-DINTEGRATION_READY \
		-DVOSS_ENABLED \
		-DDOT11F_LITTLE_ENDIAN_HOST \
		-DGEN6_ONWARDS \
		-DANI_COMPILER_TYPE_GCC \
		-DANI_OS_TYPE_ANDROID=6 \
		-DWNI_POLARIS_FW_OS=6 \
		-DADVANCED=3 \
		-DWNI_POLARIS_FW_PACKAGE=9 \
		-DTRACE_RECORD \
		-DPE_DEBUG_LOGW \
		-DPE_DEBUG_LOGE \
		-DDEBUG \
		-DANI_LOGDUMP \
		-DWLAN_PERF \
		-DUSE_LOCKED_QUEUE \
		-DPTT_SOCK_SVC_ENABLE \
		-DFEATURE_WLAN_UAPSD_FW_TRG_FRAMES \
		-DWLAN_SOFTAP_FEATURE \
		-Wall\
		-DWLAN_DEBUG \
		-D__linux__ \
		-DMSM_PLATFORM \
		-DFEATURE_WLAN_INTEGRATED_SOC \
		-DHAL_SELF_STA_PER_BSS=1 \
		-DANI_MANF_DIAG \
		-DWLAN_FEATURE_VOWIFI_11R \
		-DWLAN_FEATURE_NEIGHBOR_ROAMING \
		-DWLAN_FEATURE_NEIGHBOR_ROAMING_DEBUG \
		-DWLAN_FEATURE_VOWIFI_11R_DEBUG \
		-DFEATURE_WLAN_WAPI \
		-DFEATURE_OEM_DATA_SUPPORT \
		-DSOFTAP_CHANNEL_RANGE \
		-DWLAN_AP_STA_CONCURRENCY \
		-DFEATURE_WLAN_SCAN_PNO \
		-DWLAN_FEATURE_PACKET_FILTERING \
		-DWLAN_FEATURE_VOWIFI

# there are still pieces of code which are conditional upon these
# need to investigate all of them to see which should also be
# conditional upon QC_WLAN_CHIPSET_PRIMA
CDEFINES += -DANI_CHIPSET_VOLANS 

ifeq ($(BUILD_DEBUG_VERSION),1)
CDEFINES += -DWLAN_DEBUG \
		-DTRACE_RECORD \
		-DPE_DEBUG_LOGW \
		-DPE_DEBUG_LOGE \
		-DDEBUG 
endif

ifeq ($(CONFIG_SLUB_DEBUG_ON),y)
CDEFINES += -DTIMER_MANAGER
CDEFINES += -DMEMORY_DEBUG
endif

ifeq ($(HAVE_CFG80211),1)
CDEFINES += -DWLAN_FEATURE_P2P
CDEFINES += -DWLAN_FEATURE_WFD
endif

ifeq ($(CONFIG_QCOM_CCX),y)
CDEFINES += -DFEATURE_WLAN_CCX
endif

ifeq ($(BUILD_DIAG_VERSION),1)
CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT
CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT_CSR
CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT_LIM
endif

# enable the MAC Address auto-generation feature
CDEFINES += -DWLAN_AUTOGEN_MACADDR_FEATURE

ifeq ($(WLAN_DBG),1)
CDEFINES += -DWLAN_DEBUG
endif

ifeq ($(PANIC_ON_BUG),1)
CDEFINES += -DPANIC_ON_BUG
endif

ifeq ($(RE_ENABLE_WIFI_ON_WDI_TIMEOUT),1)
CDEFINES += -DWDI_RE_ENABLE_WIFI_ON_WDI_TIMEOUT
endif

ifeq ($(CONFIG_PRIMA_WLAN_BTAMP),y)
CDEFINES += -DWLAN_BTAMP_FEATURE
endif

CDEFINES += -DWLAN_FEATURE_11AC
CDEFINES += -DWLAN_FEATURE_11AC_HIGH_TP
CDEFINED += -DWLAN_FEATURE_P2P_DEBUG

CDEFINES += -DWLAN_OPEN_SOURCE

KBUILD_CPPFLAGS += $(CDEFINES)


$(MODNAME)-objs := $(OBJS)
obj-$(CONFIG_PRIMA_WLAN) += $(MODNAME).o
