blob: a2ded763c65a3c1846ff8269ac289a9ce23b082d [file] [log] [blame]
Jeff Johnson2c24a3b2012-12-10 12:28:11 -08001# We can build either as part of a standalone Kernel build or part
2# of an Android build. Determine which mechanism is being used
3ifeq ($(MODNAME),)
4 KERNEL_BUILD := 1
5else
6 KERNEL_BUILD := 0
7endif
8
9ifeq ($(KERNEL_BUILD),1)
10 # These are provided in Android-based builds
11 # Need to explicitly define for Kernel-based builds
12 MODNAME := wlan
Jeff Johnson91a420a2012-12-16 11:16:18 -080013 WLAN_ROOT := drivers/staging/prima
Jeff Johnson2c24a3b2012-12-10 12:28:11 -080014endif
15
16ifeq ($(KERNEL_BUILD),0)
17 # These are configurable via Kconfig for kernel-based builds
18 # Need to explicitly configure for Android-based builds
19
Jeff Johnson2c24a3b2012-12-10 12:28:11 -080020 #Flag to enable BlueTooth AMP feature
21 CONFIG_PRIMA_WLAN_BTAMP := n
22
23 #Flag to enable Legacy Fast Roaming(LFR)
24 CONFIG_PRIMA_WLAN_LFR := y
25
26 #JB kernel has PMKSA patches, hence enabling this flag
27 CONFIG_PRIMA_WLAN_OKC := y
28
29 # JB kernel has CPU enablement patches, so enable
30 CONFIG_PRIMA_WLAN_11AC_HIGH_TP := y
31endif
32
33# Feature flags which are not (currently) configurable via Kconfig
34
Jeff Johnson25abf4d2012-12-01 12:42:42 -080035#Whether to build debug version
36BUILD_DEBUG_VERSION := 1
37
38#Enable this flag to build driver in diag version
39BUILD_DIAG_VERSION := 0
Jeff Johnson25abf4d2012-12-01 12:42:42 -080040
41#Do we panic on bug? default is to warn
42PANIC_ON_BUG := 0
43
44#Re-enable wifi on WDI timeout
45RE_ENABLE_WIFI_ON_WDI_TIMEOUT := 0
46
Jeff Johnson25abf4d2012-12-01 12:42:42 -080047
48ifeq ($(CONFIG_CFG80211),y)
49HAVE_CFG80211 := 1
50else
51ifeq ($(CONFIG_CFG80211),m)
52HAVE_CFG80211 := 1
53EXTRA_CFLAGS += -DCONFIG_CFG80211=1
54else
55HAVE_CFG80211 := 0
56endif
57endif
58
Jeff Johnson2c24a3b2012-12-10 12:28:11 -080059############ BAP ############
60BAP_DIR := CORE/BAP
61BAP_INC_DIR := $(BAP_DIR)/inc
62BAP_SRC_DIR := $(BAP_DIR)/src
63
Jeff Johnson91a420a2012-12-16 11:16:18 -080064BAP_INC := -I$(WLAN_ROOT)/$(BAP_INC_DIR) \
65 -I$(WLAN_ROOT)/$(BAP_SRC_DIR)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -080066
67BAP_OBJS := $(BAP_SRC_DIR)/bapApiData.o \
68 $(BAP_SRC_DIR)/bapApiDebug.o \
69 $(BAP_SRC_DIR)/bapApiExt.o \
70 $(BAP_SRC_DIR)/bapApiHCBB.o \
71 $(BAP_SRC_DIR)/bapApiInfo.o \
72 $(BAP_SRC_DIR)/bapApiLinkCntl.o \
73 $(BAP_SRC_DIR)/bapApiLinkSupervision.o \
74 $(BAP_SRC_DIR)/bapApiStatus.o \
75 $(BAP_SRC_DIR)/bapApiTimer.o \
76 $(BAP_SRC_DIR)/bapModule.o \
77 $(BAP_SRC_DIR)/bapRsn8021xAuthFsm.o \
78 $(BAP_SRC_DIR)/bapRsn8021xPrf.o \
79 $(BAP_SRC_DIR)/bapRsn8021xSuppRsnFsm.o \
80 $(BAP_SRC_DIR)/bapRsnAsfPacket.o \
81 $(BAP_SRC_DIR)/bapRsnSsmAesKeyWrap.o \
82 $(BAP_SRC_DIR)/bapRsnSsmEapol.o \
83 $(BAP_SRC_DIR)/bapRsnSsmReplayCtr.o \
84 $(BAP_SRC_DIR)/bapRsnTxRx.o \
85 $(BAP_SRC_DIR)/btampFsm.o \
86 $(BAP_SRC_DIR)/btampHCI.o
87
88############ DXE ############
89DXE_DIR := CORE/DXE
90DXE_INC_DIR := $(DXE_DIR)/inc
91DXE_SRC_DIR := $(DXE_DIR)/src
92
Jeff Johnson91a420a2012-12-16 11:16:18 -080093DXE_INC := -I$(WLAN_ROOT)/$(DXE_INC_DIR) \
94 -I$(WLAN_ROOT)/$(DXE_SRC_DIR)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -080095
96DXE_OBJS = $(DXE_SRC_DIR)/wlan_qct_dxe.o \
97 $(DXE_SRC_DIR)/wlan_qct_dxe_cfg_i.o
98
99############ HDD ############
100HDD_DIR := CORE/HDD
101HDD_INC_DIR := $(HDD_DIR)/inc
102HDD_SRC_DIR := $(HDD_DIR)/src
103
Jeff Johnson91a420a2012-12-16 11:16:18 -0800104HDD_INC := -I$(WLAN_ROOT)/$(HDD_INC_DIR) \
105 -I$(WLAN_ROOT)/$(HDD_SRC_DIR)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800106
107HDD_OBJS := $(HDD_SRC_DIR)/bap_hdd_main.o \
108 $(HDD_SRC_DIR)/wlan_hdd_assoc.o \
109 $(HDD_SRC_DIR)/wlan_hdd_cfg.o \
110 $(HDD_SRC_DIR)/wlan_hdd_dev_pwr.o \
111 $(HDD_SRC_DIR)/wlan_hdd_dp_utils.o \
112 $(HDD_SRC_DIR)/wlan_hdd_early_suspend.o \
113 $(HDD_SRC_DIR)/wlan_hdd_ftm.o \
114 $(HDD_SRC_DIR)/wlan_hdd_hostapd.o \
115 $(HDD_SRC_DIR)/wlan_hdd_oemdata.o \
116 $(HDD_SRC_DIR)/wlan_hdd_main.o \
117 $(HDD_SRC_DIR)/wlan_hdd_mib.o \
118 $(HDD_SRC_DIR)/wlan_hdd_scan.o \
119 $(HDD_SRC_DIR)/wlan_hdd_softap_tx_rx.o \
120 $(HDD_SRC_DIR)/wlan_hdd_tx_rx.o \
121 $(HDD_SRC_DIR)/wlan_hdd_wext.o \
122 $(HDD_SRC_DIR)/wlan_hdd_wmm.o \
123 $(HDD_SRC_DIR)/wlan_hdd_wowl.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800124
125ifeq ($(HAVE_CFG80211),1)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800126HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_cfg80211.o \
127 $(HDD_SRC_DIR)/wlan_hdd_p2p.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800128endif
129
130ifeq ($(CONFIG_QCOM_TDLS),y)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800131HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_tdls.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800132endif
133
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800134############ MAC ############
135MAC_DIR := CORE/MAC
136MAC_INC_DIR := $(MAC_DIR)/inc
137MAC_SRC_DIR := $(MAC_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800138
Jeff Johnson91a420a2012-12-16 11:16:18 -0800139MAC_INC := -I$(WLAN_ROOT)/$(MAC_INC_DIR) \
140 -I$(WLAN_ROOT)/$(MAC_SRC_DIR)/dph \
141 -I$(WLAN_ROOT)/$(MAC_SRC_DIR)/include \
142 -I$(WLAN_ROOT)/$(MAC_SRC_DIR)/pe/include \
143 -I$(WLAN_ROOT)/$(MAC_SRC_DIR)/pe/lim
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800144
145MAC_CFG_OBJS := $(MAC_SRC_DIR)/cfg/cfgApi.o \
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800146 $(MAC_SRC_DIR)/cfg/cfgDebug.o \
147 $(MAC_SRC_DIR)/cfg/cfgParamName.o \
148 $(MAC_SRC_DIR)/cfg/cfgProcMsg.o \
149 $(MAC_SRC_DIR)/cfg/cfgSendMsg.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800150
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800151MAC_DPH_OBJS := $(MAC_SRC_DIR)/dph/dphHashTable.o
152
153MAC_LIM_OBJS := $(MAC_SRC_DIR)/pe/lim/limAIDmgmt.o \
154 $(MAC_SRC_DIR)/pe/lim/limAdmitControl.o \
155 $(MAC_SRC_DIR)/pe/lim/limApi.o \
156 $(MAC_SRC_DIR)/pe/lim/limAssocUtils.o \
157 $(MAC_SRC_DIR)/pe/lim/limDebug.o \
158 $(MAC_SRC_DIR)/pe/lim/limFT.o \
159 $(MAC_SRC_DIR)/pe/lim/limIbssPeerMgmt.o \
160 $(MAC_SRC_DIR)/pe/lim/limLinkMonitoringAlgo.o \
161 $(MAC_SRC_DIR)/pe/lim/limLogDump.o \
162 $(MAC_SRC_DIR)/pe/lim/limP2P.o \
163 $(MAC_SRC_DIR)/pe/lim/limProcessActionFrame.o \
164 $(MAC_SRC_DIR)/pe/lim/limProcessAssocReqFrame.o \
165 $(MAC_SRC_DIR)/pe/lim/limProcessAssocRspFrame.o \
166 $(MAC_SRC_DIR)/pe/lim/limProcessAuthFrame.o \
167 $(MAC_SRC_DIR)/pe/lim/limProcessBeaconFrame.o \
168 $(MAC_SRC_DIR)/pe/lim/limProcessCfgUpdates.o \
169 $(MAC_SRC_DIR)/pe/lim/limProcessDeauthFrame.o \
170 $(MAC_SRC_DIR)/pe/lim/limProcessDisassocFrame.o \
171 $(MAC_SRC_DIR)/pe/lim/limProcessLmmMessages.o \
172 $(MAC_SRC_DIR)/pe/lim/limProcessMessageQueue.o \
173 $(MAC_SRC_DIR)/pe/lim/limProcessMlmReqMessages.o \
174 $(MAC_SRC_DIR)/pe/lim/limProcessMlmRspMessages.o \
175 $(MAC_SRC_DIR)/pe/lim/limProcessProbeReqFrame.o \
176 $(MAC_SRC_DIR)/pe/lim/limProcessProbeRspFrame.o \
177 $(MAC_SRC_DIR)/pe/lim/limProcessSmeReqMessages.o \
178 $(MAC_SRC_DIR)/pe/lim/limPropExtsUtils.o \
179 $(MAC_SRC_DIR)/pe/lim/limRoamingAlgo.o \
180 $(MAC_SRC_DIR)/pe/lim/limScanResultUtils.o \
181 $(MAC_SRC_DIR)/pe/lim/limSecurityUtils.o \
182 $(MAC_SRC_DIR)/pe/lim/limSendManagementFrames.o \
183 $(MAC_SRC_DIR)/pe/lim/limSendMessages.o \
184 $(MAC_SRC_DIR)/pe/lim/limSendSmeRspMessages.o \
185 $(MAC_SRC_DIR)/pe/lim/limSerDesUtils.o \
186 $(MAC_SRC_DIR)/pe/lim/limSession.o \
187 $(MAC_SRC_DIR)/pe/lim/limSessionUtils.o \
188 $(MAC_SRC_DIR)/pe/lim/limSmeReqUtils.o \
189 $(MAC_SRC_DIR)/pe/lim/limStaHashApi.o \
190 $(MAC_SRC_DIR)/pe/lim/limTimerUtils.o \
191 $(MAC_SRC_DIR)/pe/lim/limTrace.o \
192 $(MAC_SRC_DIR)/pe/lim/limUtils.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800193
194ifeq ($(CONFIG_QCOM_CCX),y)
195MAC_LIM_OBJS += $(MAC_SRC_DIR)/pe/lim/limProcessCcxFrame.o
196endif
197
198ifeq ($(CONFIG_QCOM_TDLS),y)
199MAC_LIM_OBJS += $(MAC_SRC_DIR)/pe/lim/limProcessTdls.o
200endif
201
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800202MAC_PMM_OBJS := $(MAC_SRC_DIR)/pe/pmm/pmmAP.o \
203 $(MAC_SRC_DIR)/pe/pmm/pmmApi.o \
204 $(MAC_SRC_DIR)/pe/pmm/pmmDebug.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800205
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800206MAC_SCH_OBJS := $(MAC_SRC_DIR)/pe/sch/schApi.o \
207 $(MAC_SRC_DIR)/pe/sch/schBeaconGen.o \
208 $(MAC_SRC_DIR)/pe/sch/schBeaconProcess.o \
209 $(MAC_SRC_DIR)/pe/sch/schDebug.o \
210 $(MAC_SRC_DIR)/pe/sch/schMessage.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800211
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800212MAC_RRM_OBJS := $(MAC_SRC_DIR)/pe/rrm/rrmApi.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800213
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800214MAC_OBJS := $(MAC_CFG_OBJS) \
215 $(MAC_DPH_OBJS) \
216 $(MAC_LIM_OBJS) \
217 $(MAC_PMM_OBJS) \
218 $(MAC_SCH_OBJS) \
219 $(MAC_RRM_OBJS)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800220
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800221############ SAP ############
222SAP_DIR := CORE/SAP
223SAP_INC_DIR := $(SAP_DIR)/inc
224SAP_SRC_DIR := $(SAP_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800225
Jeff Johnson91a420a2012-12-16 11:16:18 -0800226SAP_INC := -I$(WLAN_ROOT)/$(SAP_INC_DIR) \
227 -I$(WLAN_ROOT)/$(SAP_SRC_DIR)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800228
229SAP_OBJS := $(SAP_SRC_DIR)/sapApiLinkCntl.o \
230 $(SAP_SRC_DIR)/sapChSelect.o \
231 $(SAP_SRC_DIR)/sapFsm.o \
232 $(SAP_SRC_DIR)/sapModule.o
233
234############ SME ############
235SME_DIR := CORE/SME
236SME_INC_DIR := $(SME_DIR)/inc
237SME_SRC_DIR := $(SME_DIR)/src
238
Jeff Johnson91a420a2012-12-16 11:16:18 -0800239SME_INC := -I$(WLAN_ROOT)/$(SME_INC_DIR) \
240 -I$(WLAN_ROOT)/$(SME_SRC_DIR)/csr
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800241
242SME_CCM_OBJS := $(SME_SRC_DIR)/ccm/ccmApi.o \
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800243 $(SME_SRC_DIR)/ccm/ccmLogDump.o
244
245SME_CSR_OBJS := $(SME_SRC_DIR)/csr/csrApiRoam.o \
246 $(SME_SRC_DIR)/csr/csrApiScan.o \
247 $(SME_SRC_DIR)/csr/csrCmdProcess.o \
248 $(SME_SRC_DIR)/csr/csrLinkList.o \
249 $(SME_SRC_DIR)/csr/csrLogDump.o \
250 $(SME_SRC_DIR)/csr/csrNeighborRoam.o \
251 $(SME_SRC_DIR)/csr/csrUtil.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800252
253ifeq ($(CONFIG_QCOM_CCX),y)
Jeff Johnson91a420a2012-12-16 11:16:18 -0800254SME_CSR_OBJS += $(SME_SRC_DIR)/csr/csrCcx.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800255endif
256
257ifeq ($(CONFIG_QCOM_TDLS),y)
258SME_CSR_OBJS += $(SME_SRC_DIR)/csr/csrTdlsProcess.o
259endif
260
261SME_PMC_OBJS := $(SME_SRC_DIR)/pmc/pmcApi.o \
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800262 $(SME_SRC_DIR)/pmc/pmc.o \
263 $(SME_SRC_DIR)/pmc/pmcLogDump.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800264
265SME_QOS_OBJS := $(SME_SRC_DIR)/QoS/sme_Qos.o
266
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800267SME_CMN_OBJS := $(SME_SRC_DIR)/sme_common/sme_Api.o \
268 $(SME_SRC_DIR)/sme_common/sme_FTApi.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800269
270SME_BTC_OBJS := $(SME_SRC_DIR)/btc/btcApi.o
271
272SME_OEM_DATA_OBJS := $(SME_SRC_DIR)/oemData/oemDataApi.o
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800273
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800274SME_P2P_OBJS = $(SME_SRC_DIR)/p2p/p2p_Api.o
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800275
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800276SME_RRM_OBJS := $(SME_SRC_DIR)/rrm/sme_rrm.o
277
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800278SME_OBJS := $(SME_BTC_OBJS) \
279 $(SME_CCM_OBJS) \
280 $(SME_CMN_OBJS) \
281 $(SME_CSR_OBJS) \
282 $(SME_OEM_DATA_OBJS) \
283 $(SME_P2P_OBJS) \
284 $(SME_PMC_OBJS) \
285 $(SME_QOS_OBJS) \
286 $(SME_RRM_OBJS)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800287
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800288############ SVC ############
289SVC_DIR := CORE/SVC
290SVC_INC_DIR := $(SVC_DIR)/inc
291SVC_SRC_DIR := $(SVC_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800292
Jeff Johnson91a420a2012-12-16 11:16:18 -0800293SVC_INC := -I$(WLAN_ROOT)/$(SVC_INC_DIR) \
294 -I$(WLAN_ROOT)/$(SVC_DIR)/external
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800295
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800296BTC_SRC_DIR := $(SVC_SRC_DIR)/btc
297BTC_OBJS := $(BTC_SRC_DIR)/wlan_btc_svc.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800298
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800299NLINK_SRC_DIR := $(SVC_SRC_DIR)/nlink
300NLINK_OBJS := $(NLINK_SRC_DIR)/wlan_nlink_srv.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800301
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800302PTT_SRC_DIR := $(SVC_SRC_DIR)/ptt
303PTT_OBJS := $(PTT_SRC_DIR)/wlan_ptt_sock_svc.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800304
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800305SVC_OBJS := $(BTC_OBJS) \
306 $(NLINK_OBJS) \
307 $(PTT_OBJS)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800308
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800309############ SYS ############
310SYS_DIR := CORE/SYS
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800311
Jeff Johnson91a420a2012-12-16 11:16:18 -0800312SYS_INC := -I$(WLAN_ROOT)/$(SYS_DIR)/common/inc \
313 -I$(WLAN_ROOT)/$(SYS_DIR)/legacy/src/pal/inc \
314 -I$(WLAN_ROOT)/$(SYS_DIR)/legacy/src/platform/inc \
315 -I$(WLAN_ROOT)/$(SYS_DIR)/legacy/src/system/inc \
316 -I$(WLAN_ROOT)/$(SYS_DIR)/legacy/src/utils/inc
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800317
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800318SYS_COMMON_SRC_DIR := $(SYS_DIR)/common/src
319SYS_LEGACY_SRC_DIR := $(SYS_DIR)/legacy/src
320SYS_OBJS := $(SYS_COMMON_SRC_DIR)/wlan_qct_sys.o \
321 $(SYS_LEGACY_SRC_DIR)/pal/src/palApiComm.o \
322 $(SYS_LEGACY_SRC_DIR)/pal/src/palTimer.o \
323 $(SYS_LEGACY_SRC_DIR)/platform/src/VossWrapper.o \
324 $(SYS_LEGACY_SRC_DIR)/system/src/macInitApi.o \
325 $(SYS_LEGACY_SRC_DIR)/system/src/sysEntryFunc.o \
326 $(SYS_LEGACY_SRC_DIR)/system/src/sysWinStartup.o \
327 $(SYS_LEGACY_SRC_DIR)/utils/src/dot11f.o \
328 $(SYS_LEGACY_SRC_DIR)/utils/src/logApi.o \
329 $(SYS_LEGACY_SRC_DIR)/utils/src/logDump.o \
330 $(SYS_LEGACY_SRC_DIR)/utils/src/macTrace.o \
331 $(SYS_LEGACY_SRC_DIR)/utils/src/parserApi.o \
332 $(SYS_LEGACY_SRC_DIR)/utils/src/utilsApi.o \
333 $(SYS_LEGACY_SRC_DIR)/utils/src/utilsParser.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800334
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800335ifeq ($(CONFIG_QCOM_CCX),y)
336SYS_OBJS += $(SYS_LEGACY_SRC_DIR)/utils/src/limCcxparserApi.o
337endif
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800338
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800339############ TL ############
340TL_DIR := CORE/TL
341TL_INC_DIR := $(TL_DIR)/inc
342TL_SRC_DIR := $(TL_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800343
Jeff Johnson91a420a2012-12-16 11:16:18 -0800344TL_INC := -I$(WLAN_ROOT)/$(TL_INC_DIR) \
345 -I$(WLAN_ROOT)/$(TL_SRC_DIR)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800346
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800347TL_OBJS := $(TL_SRC_DIR)/wlan_qct_tl.o \
348 $(TL_SRC_DIR)/wlan_qct_tl_ba.o \
349 $(TL_SRC_DIR)/wlan_qct_tl_hosupport.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800350
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800351############ VOSS ############
352VOSS_DIR := CORE/VOSS
353VOSS_INC_DIR := $(VOSS_DIR)/inc
354VOSS_SRC_DIR := $(VOSS_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800355
Jeff Johnson91a420a2012-12-16 11:16:18 -0800356VOSS_INC := -I$(WLAN_ROOT)/$(VOSS_INC_DIR) \
357 -I$(WLAN_ROOT)/$(VOSS_SRC_DIR)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800358
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800359VOSS_OBJS := $(VOSS_SRC_DIR)/vos_api.o \
360 $(VOSS_SRC_DIR)/vos_event.o \
361 $(VOSS_SRC_DIR)/vos_getBin.o \
362 $(VOSS_SRC_DIR)/vos_list.o \
363 $(VOSS_SRC_DIR)/vos_lock.o \
364 $(VOSS_SRC_DIR)/vos_memory.o \
365 $(VOSS_SRC_DIR)/vos_mq.o \
366 $(VOSS_SRC_DIR)/vos_nvitem.o \
367 $(VOSS_SRC_DIR)/vos_packet.o \
368 $(VOSS_SRC_DIR)/vos_power.o \
369 $(VOSS_SRC_DIR)/vos_sched.o \
370 $(VOSS_SRC_DIR)/vos_threads.o \
371 $(VOSS_SRC_DIR)/vos_timer.o \
372 $(VOSS_SRC_DIR)/vos_trace.o \
373 $(VOSS_SRC_DIR)/vos_types.o \
374 $(VOSS_SRC_DIR)/vos_utils.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800375
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800376ifeq ($(BUILD_DIAG_VERSION),1)
377VOSS_OBJS += $(VOSS_SRC_DIR)/vos_diag.o
378endif
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800379
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800380############ WDA ############
381WDA_DIR := CORE/WDA
382WDA_INC_DIR := $(WDA_DIR)/inc
383WDA_SRC_DIR := $(WDA_DIR)/src
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800384
Jeff Johnson91a420a2012-12-16 11:16:18 -0800385WDA_INC := -I$(WLAN_ROOT)/$(WDA_INC_DIR) \
386 -I$(WLAN_ROOT)/$(WDA_INC_DIR)/legacy \
387 -I$(WLAN_ROOT)/$(WDA_SRC_DIR)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800388
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800389WDA_OBJS := $(WDA_SRC_DIR)/wlan_qct_wda.o \
390 $(WDA_SRC_DIR)/wlan_qct_wda_debug.o \
391 $(WDA_SRC_DIR)/wlan_qct_wda_ds.o \
392 $(WDA_SRC_DIR)/wlan_qct_wda_legacy.o \
393 $(WDA_SRC_DIR)/wlan_nv.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800394
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800395############ WDI ############
396WDI_DIR := CORE/WDI
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800397
Jeff Johnson91a420a2012-12-16 11:16:18 -0800398WDI_CP_INC := -I$(WLAN_ROOT)/$(WDI_DIR)/CP/inc/
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800399
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800400WDI_CP_SRC_DIR := $(WDI_DIR)/CP/src
401WDI_CP_OBJS := $(WDI_CP_SRC_DIR)/wlan_qct_wdi.o \
402 $(WDI_CP_SRC_DIR)/wlan_qct_wdi_dp.o \
403 $(WDI_CP_SRC_DIR)/wlan_qct_wdi_sta.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800404
Jeff Johnson91a420a2012-12-16 11:16:18 -0800405WDI_DP_INC := -I$(WLAN_ROOT)/$(WDI_DIR)/DP/inc/
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800406
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800407WDI_DP_SRC_DIR := $(WDI_DIR)/DP/src
408WDI_DP_OBJS := $(WDI_DP_SRC_DIR)/wlan_qct_wdi_bd.o \
409 $(WDI_DP_SRC_DIR)/wlan_qct_wdi_ds.o
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800410
Jeff Johnson91a420a2012-12-16 11:16:18 -0800411WDI_TRP_INC := -I$(WLAN_ROOT)/$(WDI_DIR)/TRP/CTS/inc/ \
412 -I$(WLAN_ROOT)/$(WDI_DIR)/TRP/DTS/inc/
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800413
414WDI_TRP_CTS_SRC_DIR := $(WDI_DIR)/TRP/CTS/src
Jeff Johnson91a420a2012-12-16 11:16:18 -0800415WDI_TRP_CTS_OBJS := $(WDI_TRP_CTS_SRC_DIR)/wlan_qct_wdi_cts.o
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800416
417WDI_TRP_DTS_SRC_DIR := $(WDI_DIR)/TRP/DTS/src
Jeff Johnson91a420a2012-12-16 11:16:18 -0800418WDI_TRP_DTS_OBJS := $(WDI_TRP_DTS_SRC_DIR)/wlan_qct_wdi_dts.o
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800419
420WDI_TRP_OBJS := $(WDI_TRP_CTS_OBJS) \
421 $(WDI_TRP_DTS_OBJS)
422
Jeff Johnson91a420a2012-12-16 11:16:18 -0800423WDI_WPAL_INC := -I$(WLAN_ROOT)/$(WDI_DIR)/WPAL/inc
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800424
425WDI_WPAL_SRC_DIR := $(WDI_DIR)/WPAL/src
426WDI_WPAL_OBJS := $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_api.o \
427 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_device.o \
428 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_msg.o \
429 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_packet.o \
430 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_sync.o \
431 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_timer.o \
432 $(WDI_WPAL_SRC_DIR)/wlan_qct_pal_trace.o
433
434WDI_INC := $(WDI_CP_INC) \
435 $(WDI_DP_INC) \
436 $(WDI_TRP_INC) \
437 $(WDI_WPAL_INC)
438
439WDI_OBJS := $(WDI_CP_OBJS) \
440 $(WDI_DP_OBJS) \
441 $(WDI_TRP_OBJS) \
442 $(WDI_WPAL_OBJS)
443
444
Jeff Johnson91a420a2012-12-16 11:16:18 -0800445RIVA_INC := -I$(WLAN_ROOT)/riva/inc
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800446
447LINUX_INC := -Iinclude/linux
448
449INCS := $(BAP_INC) \
450 $(DXE_INC) \
451 $(HDD_INC) \
452 $(LINUX_INC) \
453 $(MAC_INC) \
454 $(RIVA_INC) \
455 $(SAP_INC) \
456 $(SME_INC) \
457 $(SVC_INC) \
458 $(SYS_INC) \
459 $(TL_INC) \
460 $(VOSS_INC) \
461 $(WDA_INC) \
462 $(WDI_INC)
463
464OBJS := $(BAP_OBJS) \
465 $(DXE_OBJS) \
466 $(HDD_OBJS) \
467 $(MAC_OBJS) \
468 $(SAP_OBJS) \
469 $(SME_OBJS) \
470 $(SVC_OBJS) \
471 $(SYS_OBJS) \
472 $(TL_OBJS) \
473 $(VOSS_OBJS) \
474 $(WDA_OBJS) \
475 $(WDI_OBJS)
476
477EXTRA_CFLAGS += $(INCS)
478
479CDEFINES := -DANI_PRODUCT_TYPE_CLIENT=1 \
480 -DANI_BUS_TYPE_PLATFORM=1 \
481 -DANI_LITTLE_BYTE_ENDIAN \
482 -DANI_LITTLE_BIT_ENDIAN \
483 -DWLAN_STA=1 \
484 -DAP=2 \
485 -DWNI_POLARIS_FW_PRODUCT=1 \
486 -DQC_WLAN_CHIPSET_PRIMA \
487 -DINTEGRATION_READY \
488 -DVOSS_ENABLED \
489 -DDOT11F_LITTLE_ENDIAN_HOST \
490 -DGEN6_ONWARDS \
491 -DANI_COMPILER_TYPE_GCC \
492 -DANI_OS_TYPE_ANDROID=6 \
493 -DWNI_POLARIS_FW_OS=6 \
494 -DADVANCED=3 \
495 -DWNI_POLARIS_FW_PACKAGE=9 \
496 -DANI_LOGDUMP \
497 -DWLAN_PERF \
498 -DUSE_LOCKED_QUEUE \
499 -DPTT_SOCK_SVC_ENABLE \
500 -DFEATURE_WLAN_UAPSD_FW_TRG_FRAMES \
501 -DWLAN_SOFTAP_FEATURE \
502 -Wall\
503 -D__linux__ \
504 -DMSM_PLATFORM \
505 -DFEATURE_WLAN_INTEGRATED_SOC \
506 -DHAL_SELF_STA_PER_BSS=1 \
507 -DANI_MANF_DIAG \
508 -DWLAN_FEATURE_VOWIFI_11R \
509 -DWLAN_FEATURE_NEIGHBOR_ROAMING \
510 -DWLAN_FEATURE_NEIGHBOR_ROAMING_DEBUG \
511 -DWLAN_FEATURE_VOWIFI_11R_DEBUG \
512 -DFEATURE_WLAN_WAPI \
513 -DFEATURE_OEM_DATA_SUPPORT\
514 -DSOFTAP_CHANNEL_RANGE \
515 -DWLAN_AP_STA_CONCURRENCY \
516 -DFEATURE_WLAN_SCAN_PNO \
517 -DWLAN_FEATURE_PACKET_FILTERING \
518 -DWLAN_FEATURE_VOWIFI \
519 -DWLAN_FEATURE_11AC \
520 -DWLAN_FEATURE_P2P_DEBUG \
Yathish9f22e662012-12-10 14:21:35 -0800521 -DWLAN_ENABLE_AGEIE_ON_SCAN_RESULTS \
522 -DWLAN_ACTIVEMODE_OFFLOAD_FEATURE
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800523
Jeff Johnson91a420a2012-12-16 11:16:18 -0800524ifneq ($(CONFIG_PRONTO_WLAN),)
525CDEFINES += -DWCN_PRONTO
526CDEFINES += -DWCN_PRONTO_V1
527endif
528
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800529# there are still pieces of code which are conditional upon these
530# need to investigate all of them to see which should also be
531# conditional upon QC_WLAN_CHIPSET_PRIMA
532CDEFINES += -DANI_CHIPSET_VOLANS
533
534ifeq ($(BUILD_DEBUG_VERSION),1)
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800535CDEFINES += -DWLAN_DEBUG \
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800536 -DTRACE_RECORD \
537 -DPE_DEBUG_LOGW \
538 -DPE_DEBUG_LOGE \
539 -DDEBUG
540endif
541
542ifeq ($(CONFIG_SLUB_DEBUG_ON),y)
543CDEFINES += -DTIMER_MANAGER
544CDEFINES += -DMEMORY_DEBUG
545endif
546
547ifeq ($(HAVE_CFG80211),1)
548CDEFINES += -DWLAN_FEATURE_P2P
549CDEFINES += -DWLAN_FEATURE_WFD
550endif
551
552ifeq ($(CONFIG_QCOM_CCX),y)
553CDEFINES += -DFEATURE_WLAN_CCX
554endif
555
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800556#normally, TDLS negative behavior is not needed
557ifeq ($(CONFIG_QCOM_TDLS),y)
558CDEFINES += -DFEATURE_WLAN_TDLS
559#CDEFINES += -DFEATURE_WLAN_TDLS_NEGATIVE
560#Code under FEATURE_WLAN_TDLS_INTERNAL is ported from volans, This code
561#is not tested only verifed that it compiles. This is not required for
562#supplicant based implementation
563#CDEFINES += -DFEATURE_WLAN_TDLS_INTERNAL
564endif
565
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800566ifeq ($(CONFIG_PRIMA_WLAN_BTAMP),y)
567CDEFINES += -DWLAN_BTAMP_FEATURE
568endif
569
570ifeq ($(CONFIG_PRIMA_WLAN_LFR),y)
571CDEFINES += -DFEATURE_WLAN_LFR
572endif
573
574ifeq ($(CONFIG_PRIMA_WLAN_OKC),y)
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800575CDEFINES += -DFEATURE_WLAN_OKC
576endif
577
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800578ifeq ($(CONFIG_PRIMA_WLAN_11AC_HIGH_TP),y)
579CDEFINES += -DWLAN_FEATURE_11AC_HIGH_TP
580endif
581
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800582ifeq ($(BUILD_DIAG_VERSION),1)
583CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT
584CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT_CSR
585CDEFINES += -DFEATURE_WLAN_DIAG_SUPPORT_LIM
586endif
587
588# enable the MAC Address auto-generation feature
589CDEFINES += -DWLAN_AUTOGEN_MACADDR_FEATURE
590
591ifneq (, $(filter msm8960, $(BOARD_PLATFORM)))
592EXTRA_CFLAGS += -march=armv7-a
593CDEFINES += -DMSM_PLATFORM_8960
594endif
595
596ifneq (, $(filter msm8660, $(BOARD_PLATFORM)))
597EXTRA_CFLAGS += -march=armv7-a
598CDEFINES += -DMSM_PLATFORM_8660
599endif
600
601ifneq (, $(filter msm7630_surf msm7630_fusion, $(BOARD_PLATFORM)))
602EXTRA_CFLAGS += -march=armv7-a
603CDEFINES += -DMSM_PLATFORM_7x30
604endif
605
606ifneq (, $(filter msm7627_surf, $(BOARD_PLATFORM)))
607EXTRA_CFLAGS += -march=armv6
608CDEFINES += -DMSM_PLATFORM_7x27
609endif
610
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800611ifeq ($(PANIC_ON_BUG),1)
612CDEFINES += -DPANIC_ON_BUG
613endif
614
615ifeq ($(RE_ENABLE_WIFI_ON_WDI_TIMEOUT),1)
616CDEFINES += -DWDI_RE_ENABLE_WIFI_ON_WDI_TIMEOUT
617endif
618
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800619ifeq ($(KERNEL_BUILD),1)
620CDEFINES += -DWLAN_OPEN_SOURCE
621endif
622
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800623KBUILD_CPPFLAGS += $(CDEFINES)
624
Jeff Johnson25abf4d2012-12-01 12:42:42 -0800625# Module information used by KBuild framework
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800626obj-$(CONFIG_PRIMA_WLAN) += $(MODNAME).o
Jeff Johnson91a420a2012-12-16 11:16:18 -0800627obj-$(CONFIG_PRONTO_WLAN) += $(MODNAME).o
Jeff Johnson2c24a3b2012-12-10 12:28:11 -0800628$(MODNAME)-y := $(OBJS)