xref: /OK3568_Linux_fs/kernel/drivers/net/wireless/rockchip_wlan/rtl8723bu/Makefile (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1# SPDX-License-Identifier: GPL-2.0
2EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
3EXTRA_CFLAGS += -O1
4#EXTRA_CFLAGS += -O3
5#EXTRA_CFLAGS += -Wall
6#EXTRA_CFLAGS += -Wextra
7#EXTRA_CFLAGS += -Werror
8#EXTRA_CFLAGS += -pedantic
9#EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
10
11EXTRA_CFLAGS += -Wno-unused-variable
12EXTRA_CFLAGS += -Wno-unused-value
13EXTRA_CFLAGS += -Wno-unused-label
14EXTRA_CFLAGS += -Wno-unused-parameter
15EXTRA_CFLAGS += -Wno-unused-function
16EXTRA_CFLAGS += -Wno-unused
17#EXTRA_CFLAGS += -Wno-uninitialized
18#EXTRA_CFLAGS += -Wno-error=date-time	# Fix compile error on gcc 4.9 and later
19
20EXTRA_CFLAGS += -I$(src)/include
21EXTRA_CFLAGS += -I$(src)/hal/phydm
22
23EXTRA_LDFLAGS += --strip-debug
24
25CONFIG_AUTOCFG_CP = n
26
27########################## WIFI IC ############################
28CONFIG_MULTIDRV = n
29CONFIG_RTL8188E = n
30CONFIG_RTL8812A = n
31CONFIG_RTL8821A = n
32CONFIG_RTL8192E = n
33CONFIG_RTL8723B = y
34CONFIG_RTL8814A = n
35CONFIG_RTL8723C = n
36CONFIG_RTL8188F = n
37######################### Interface ###########################
38CONFIG_USB_HCI = y
39CONFIG_PCI_HCI = n
40CONFIG_SDIO_HCI = n
41CONFIG_GSPI_HCI = n
42########################## Features ###########################
43CONFIG_MP_INCLUDED = y
44CONFIG_POWER_SAVING = y
45CONFIG_USB_AUTOSUSPEND = n
46CONFIG_HW_PWRP_DETECTION = n
47CONFIG_WIFI_TEST = n
48CONFIG_BT_COEXIST = y
49CONFIG_INTEL_WIDI = n
50CONFIG_WAPI_SUPPORT = n
51CONFIG_EFUSE_CONFIG_FILE = n
52CONFIG_EXT_CLK = n
53CONFIG_TRAFFIC_PROTECT = y
54CONFIG_LOAD_PHY_PARA_FROM_FILE = y
55CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY = n
56CONFIG_CALIBRATE_TX_POWER_TO_MAX = y
57CONFIG_RTW_ADAPTIVITY_EN = disable
58CONFIG_RTW_ADAPTIVITY_MODE = normal
59CONFIG_SIGNAL_SCALE_MAPPING = n
60CONFIG_80211W = n
61CONFIG_REDUCE_TX_CPU_LOADING = n
62CONFIG_BR_EXT = y
63CONFIG_ANTENNA_DIVERSITY = n
64CONFIG_TDLS = n
65CONFIG_WIFI_MONITOR = n
66######################## Wake On Lan ##########################
67CONFIG_WOWLAN = n
68CONFIG_GPIO_WAKEUP = n
69CONFIG_WAKEUP_GPIO_IDX = default
70CONFIG_HIGH_ACTIVE = n
71CONFIG_PNO_SUPPORT = n
72CONFIG_PNO_SET_DEBUG = n
73CONFIG_AP_WOWLAN = n
74######### Notify SDIO Host Keep Power During Syspend ##########
75CONFIG_RTW_SDIO_PM_KEEP_POWER = y
76###################### MP HW TX MODE FOR VHT #######################
77CONFIG_MP_VHT_HW_TX_MODE = n
78###################### Platform Related #######################
79CONFIG_PLATFORM_I386_PC = y
80CONFIG_PLATFORM_ANDROID_X86 = n
81CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
82CONFIG_PLATFORM_JB_X86 = n
83CONFIG_PLATFORM_ARM_S3C2K4 = n
84CONFIG_PLATFORM_ARM_PXA2XX = n
85CONFIG_PLATFORM_ARM_S3C6K4 = n
86CONFIG_PLATFORM_MIPS_RMI = n
87CONFIG_PLATFORM_RTD2880B = n
88CONFIG_PLATFORM_MIPS_AR9132 = n
89CONFIG_PLATFORM_RTK_DMP = n
90CONFIG_PLATFORM_MIPS_PLM = n
91CONFIG_PLATFORM_MSTAR389 = n
92CONFIG_PLATFORM_MT53XX = n
93CONFIG_PLATFORM_ARM_MX51_241H = n
94CONFIG_PLATFORM_FS_MX61 = n
95CONFIG_PLATFORM_ACTIONS_ATJ227X = n
96CONFIG_PLATFORM_TEGRA3_CARDHU = n
97CONFIG_PLATFORM_TEGRA4_DALMORE = n
98CONFIG_PLATFORM_ARM_TCC8900 = n
99CONFIG_PLATFORM_ARM_TCC8920 = n
100CONFIG_PLATFORM_ARM_TCC8920_JB42 = n
101CONFIG_PLATFORM_ARM_TCC8930_JB42 = n
102CONFIG_PLATFORM_ARM_RK2818 = n
103CONFIG_PLATFORM_ARM_RK3066 = n
104CONFIG_PLATFORM_ARM_RK3188 = n
105CONFIG_PLATFORM_ARM_URBETTER = n
106CONFIG_PLATFORM_ARM_TI_PANDA = n
107CONFIG_PLATFORM_MIPS_JZ4760 = n
108CONFIG_PLATFORM_DMP_PHILIPS = n
109CONFIG_PLATFORM_MSTAR_TITANIA12 = n
110CONFIG_PLATFORM_MSTAR = n
111CONFIG_PLATFORM_SZEBOOK = n
112CONFIG_PLATFORM_ARM_SUNxI = n
113CONFIG_PLATFORM_ARM_SUN6I = n
114CONFIG_PLATFORM_ARM_SUN7I = n
115CONFIG_PLATFORM_ARM_SUN8I_W3P1 = n
116CONFIG_PLATFORM_ARM_SUN8I_W5P1 = n
117CONFIG_PLATFORM_ACTIONS_ATM702X = n
118CONFIG_PLATFORM_ACTIONS_ATV5201 = n
119CONFIG_PLATFORM_ACTIONS_ATM705X = n
120CONFIG_PLATFORM_ARM_SUN50IW1P1 = n
121CONFIG_PLATFORM_ARM_RTD299X = n
122CONFIG_PLATFORM_ARM_SPREADTRUM_6820 = n
123CONFIG_PLATFORM_ARM_SPREADTRUM_8810 = n
124CONFIG_PLATFORM_ARM_WMT = n
125CONFIG_PLATFORM_TI_DM365 = n
126CONFIG_PLATFORM_MOZART = n
127CONFIG_PLATFORM_RTK119X = n
128CONFIG_PLATFORM_NOVATEK_NT72668 = n
129CONFIG_PLATFORM_HISILICON = n
130###############################################################
131
132CONFIG_DRVEXT_MODULE = n
133
134export TopDIR ?= $(shell pwd)
135
136########### COMMON  #################################
137ifeq ($(CONFIG_GSPI_HCI), y)
138HCI_NAME = gspi
139endif
140
141ifeq ($(CONFIG_SDIO_HCI), y)
142HCI_NAME = sdio
143endif
144
145ifeq ($(CONFIG_USB_HCI), y)
146HCI_NAME = usb
147endif
148
149ifeq ($(CONFIG_PCI_HCI), y)
150HCI_NAME = pci
151endif
152
153
154_OS_INTFS_FILES :=	os_dep/osdep_service.o \
155			os_dep/linux/os_intfs.o \
156			os_dep/linux/$(HCI_NAME)_intf.o \
157			os_dep/linux/$(HCI_NAME)_ops_linux.o \
158			os_dep/linux/ioctl_linux.o \
159			os_dep/linux/xmit_linux.o \
160			os_dep/linux/mlme_linux.o \
161			os_dep/linux/recv_linux.o \
162			os_dep/linux/ioctl_cfg80211.o \
163			os_dep/linux/rtw_cfgvendor.o \
164			os_dep/linux/wifi_regd.o \
165			os_dep/linux/rtw_android.o \
166			os_dep/linux/rtw_proc.o
167
168ifeq ($(CONFIG_MP_INCLUDED), y)
169_OS_INTFS_FILES += os_dep/linux/ioctl_mp.o
170endif
171
172ifeq ($(CONFIG_SDIO_HCI), y)
173_OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
174_OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
175endif
176
177ifeq ($(CONFIG_GSPI_HCI), y)
178_OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
179_OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
180endif
181
182
183_HAL_INTFS_FILES :=	hal/hal_intf.o \
184			hal/hal_com.o \
185			hal/hal_com_phycfg.o \
186			hal/hal_phy.o \
187			hal/hal_dm.o \
188			hal/hal_btcoex.o \
189			hal/hal_mp.o \
190			hal/hal_hci/hal_$(HCI_NAME).o \
191			hal/led/hal_$(HCI_NAME)_led.o
192
193
194_OUTSRC_FILES := hal/phydm/phydm_debug.o	\
195		hal/phydm/phydm_antdiv.o\
196		hal/phydm/phydm_antdect.o\
197		hal/phydm/phydm_interface.o\
198		hal/phydm/phydm_hwconfig.o\
199		hal/phydm/phydm.o\
200		hal/phydm/halphyrf_ce.o\
201		hal/phydm/phydm_edcaturbocheck.o\
202		hal/phydm/phydm_dig.o\
203		hal/phydm/phydm_pathdiv.o\
204		hal/phydm/phydm_rainfo.o\
205		hal/phydm/phydm_dynamicbbpowersaving.o\
206		hal/phydm/phydm_powertracking_ce.o\
207		hal/phydm/phydm_dynamictxpower.o\
208		hal/phydm/phydm_adaptivity.o\
209		hal/phydm/phydm_cfotracking.o\
210		hal/phydm/phydm_noisemonitor.o\
211		hal/phydm/phydm_acs.o\
212		hal/phydm/phydm_beamforming.o\
213		hal/phydm/txbf/halcomtxbf.o\
214		hal/phydm/txbf/haltxbfinterface.o
215
216
217EXTRA_CFLAGS += -I$(src)/platform
218_PLATFORM_FILES := platform/platform_ops.o
219
220ifeq ($(CONFIG_BT_COEXIST), y)
221EXTRA_CFLAGS += -I$(src)/hal/btc
222_OUTSRC_FILES += hal/btc/HalBtc8192e1Ant.o \
223				hal/btc/HalBtc8192e2Ant.o \
224				hal/btc/HalBtc8723b1Ant.o \
225				hal/btc/HalBtc8723b2Ant.o \
226				hal/btc/HalBtc8812a1Ant.o \
227				hal/btc/HalBtc8812a2Ant.o \
228				hal/btc/HalBtc8821a1Ant.o \
229				hal/btc/HalBtc8821a2Ant.o \
230				hal/btc/HalBtc8821aCsr2Ant.o \
231				hal/btc/HalBtc8703b1Ant.o
232endif
233
234
235########### HAL_RTL8188E #################################
236ifeq ($(CONFIG_RTL8188E), y)
237
238RTL871X = rtl8188e
239ifeq ($(CONFIG_SDIO_HCI), y)
240MODULE_NAME = 8189es
241endif
242
243ifeq ($(CONFIG_GSPI_HCI), y)
244MODULE_NAME = 8189es
245endif
246
247ifeq ($(CONFIG_USB_HCI), y)
248MODULE_NAME = 8188eu
249endif
250
251ifeq ($(CONFIG_PCI_HCI), y)
252MODULE_NAME = 8188ee
253endif
254EXTRA_CFLAGS += -DCONFIG_RTL8188E
255
256_HAL_INTFS_FILES +=	hal/HalPwrSeqCmd.o \
257					hal/$(RTL871X)/Hal8188EPwrSeq.o\
258 					hal/$(RTL871X)/$(RTL871X)_xmit.o\
259					hal/$(RTL871X)/$(RTL871X)_sreset.o
260
261_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
262			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
263			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
264			hal/$(RTL871X)/$(RTL871X)_dm.o \
265			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
266			hal/$(RTL871X)/$(RTL871X)_cmd.o \
267			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
268			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
269			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
270			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
271
272ifeq ($(CONFIG_SDIO_HCI), y)
273_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
274else
275ifeq ($(CONFIG_GSPI_HCI), y)
276_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
277else
278_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
279endif
280endif
281
282ifeq ($(CONFIG_USB_HCI), y)
283_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_USB.o
284endif
285ifeq ($(CONFIG_PCI_HCI), y)
286_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_PCIE.o
287endif
288ifeq ($(CONFIG_SDIO_HCI), y)
289_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_SDIO.o
290endif
291
292#hal/OUTSRC/$(RTL871X)/Hal8188EFWImg_CE.o
293_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8188e_mac.o\
294		hal/phydm/$(RTL871X)/halhwimg8188e_bb.o\
295		hal/phydm/$(RTL871X)/halhwimg8188e_rf.o\
296		hal/phydm/$(RTL871X)/halhwimg8188e_t_fw.o\
297		hal/phydm/$(RTL871X)/halhwimg8188e_s_fw.o\
298		hal/phydm/$(RTL871X)/halphyrf_8188e_ce.o\
299		hal/phydm/$(RTL871X)/phydm_regconfig8188e.o\
300		hal/phydm/$(RTL871X)/hal8188erateadaptive.o\
301		hal/phydm/$(RTL871X)/phydm_rtl8188e.o
302
303endif
304
305########### HAL_RTL8192E #################################
306ifeq ($(CONFIG_RTL8192E), y)
307
308RTL871X = rtl8192e
309ifeq ($(CONFIG_SDIO_HCI), y)
310MODULE_NAME = 8192es
311endif
312
313ifeq ($(CONFIG_USB_HCI), y)
314MODULE_NAME = 8192eu
315endif
316
317ifeq ($(CONFIG_PCI_HCI), y)
318MODULE_NAME = 8192ee
319endif
320EXTRA_CFLAGS += -DCONFIG_RTL8192E
321_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
322					hal/$(RTL871X)/Hal8192EPwrSeq.o\
323					hal/$(RTL871X)/$(RTL871X)_xmit.o\
324					hal/$(RTL871X)/$(RTL871X)_sreset.o
325
326_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
327			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
328			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
329			hal/$(RTL871X)/$(RTL871X)_dm.o \
330			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
331			hal/$(RTL871X)/$(RTL871X)_cmd.o \
332			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
333			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
334			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
335			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
336
337ifeq ($(CONFIG_SDIO_HCI), y)
338_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
339else
340ifeq ($(CONFIG_GSPI_HCI), y)
341_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
342else
343_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
344endif
345endif
346
347ifeq ($(CONFIG_USB_HCI), y)
348_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8192E_USB.o
349endif
350ifeq ($(CONFIG_PCI_HCI), y)
351_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8192E_PCIE.o
352endif
353
354#hal/OUTSRC/$(RTL871X)/HalHWImg8188E_FW.o
355_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8192e_mac.o\
356		hal/phydm/$(RTL871X)/halhwimg8192e_bb.o\
357		hal/phydm/$(RTL871X)/halhwimg8192e_rf.o\
358		hal/phydm/$(RTL871X)/halhwimg8192e_fw.o\
359		hal/phydm/$(RTL871X)/halphyrf_8192e_ce.o\
360		hal/phydm/$(RTL871X)/phydm_regconfig8192e.o\
361		hal/phydm/$(RTL871X)/phydm_rtl8192e.o
362
363endif
364
365########### HAL_RTL8812A_RTL8821A #################################
366
367ifneq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A), n_n)
368
369RTL871X = rtl8812a
370ifeq ($(CONFIG_USB_HCI), y)
371MODULE_NAME = 8812au
372endif
373ifeq ($(CONFIG_PCI_HCI), y)
374MODULE_NAME = 8812ae
375endif
376ifeq ($(CONFIG_SDIO_HCI), y)
377MODULE_NAME = 8812as
378endif
379
380_HAL_INTFS_FILES +=  hal/HalPwrSeqCmd.o \
381					hal/$(RTL871X)/Hal8812PwrSeq.o \
382					hal/$(RTL871X)/Hal8821APwrSeq.o\
383					hal/$(RTL871X)/$(RTL871X)_xmit.o\
384					hal/$(RTL871X)/$(RTL871X)_sreset.o
385
386_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
387			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
388			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
389			hal/$(RTL871X)/$(RTL871X)_dm.o \
390			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
391			hal/$(RTL871X)/$(RTL871X)_cmd.o \
392			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
393			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
394			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
395			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
396
397ifeq ($(CONFIG_SDIO_HCI), y)
398_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
399else
400ifeq ($(CONFIG_GSPI_HCI), y)
401_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
402else
403_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
404endif
405endif
406
407ifeq ($(CONFIG_RTL8812A), y)
408ifeq ($(CONFIG_USB_HCI), y)
409_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8812A_USB.o
410endif
411ifeq ($(CONFIG_PCI_HCI), y)
412_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8812A_PCIE.o
413endif
414endif
415ifeq ($(CONFIG_RTL8821A), y)
416ifeq ($(CONFIG_USB_HCI), y)
417_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8821A_USB.o
418endif
419ifeq ($(CONFIG_PCI_HCI), y)
420_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8821A_PCIE.o
421endif
422endif
423
424ifeq ($(CONFIG_RTL8812A), y)
425EXTRA_CFLAGS += -DCONFIG_RTL8812A
426_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8812a_fw.o\
427		hal/phydm/$(RTL871X)/halhwimg8812a_mac.o\
428		hal/phydm/$(RTL871X)/halhwimg8812a_bb.o\
429		hal/phydm/$(RTL871X)/halhwimg8812a_rf.o\
430		hal/phydm/$(RTL871X)/halphyrf_8812a_ce.o\
431		hal/phydm/$(RTL871X)/phydm_regconfig8812a.o\
432		hal/phydm/$(RTL871X)/phydm_rtl8812a.o\
433		hal/phydm/txbf/haltxbfjaguar.o
434endif
435
436ifeq ($(CONFIG_RTL8821A), y)
437
438ifeq ($(CONFIG_RTL8812A), n)
439
440RTL871X = rtl8821a
441ifeq ($(CONFIG_USB_HCI), y)
442ifeq ($(CONFIG_BT_COEXIST), y)
443MODULE_NAME := 8821au
444else
445MODULE_NAME := 8811au
446endif
447endif
448ifeq ($(CONFIG_PCI_HCI), y)
449MODULE_NAME := 8821ae
450endif
451ifeq ($(CONFIG_SDIO_HCI), y)
452MODULE_NAME := 8821as
453endif
454
455endif
456
457EXTRA_CFLAGS += -DCONFIG_RTL8821A
458_OUTSRC_FILES += hal/phydm/rtl8821a/halhwimg8821a_fw.o\
459		hal/phydm/rtl8821a/halhwimg8821a_mac.o\
460		hal/phydm/rtl8821a/halhwimg8821a_bb.o\
461		hal/phydm/rtl8821a/halhwimg8821a_rf.o\
462		hal/phydm/rtl8812a/halphyrf_8812a_ce.o\
463		hal/phydm/rtl8821a/halphyrf_8821a_ce.o\
464		hal/phydm/rtl8821a/phydm_regconfig8821a.o\
465		hal/phydm/rtl8821a/phydm_rtl8821a.o\
466		hal/phydm/rtl8821a/phydm_iqk_8821a_ce.o\
467		hal/phydm/txbf/haltxbfjaguar.o
468
469endif
470
471endif
472
473########### HAL_RTL8723B #################################
474ifeq ($(CONFIG_RTL8723B), y)
475
476RTL871X = rtl8723b
477ifeq ($(CONFIG_USB_HCI), y)
478MODULE_NAME = 8723bu
479endif
480ifeq ($(CONFIG_PCI_HCI), y)
481MODULE_NAME = 8723be
482endif
483ifeq ($(CONFIG_SDIO_HCI), y)
484MODULE_NAME = 8723bs
485endif
486
487EXTRA_CFLAGS += -DCONFIG_RTL8723B
488
489_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
490					hal/$(RTL871X)/Hal8723BPwrSeq.o\
491					hal/$(RTL871X)/$(RTL871X)_sreset.o
492
493_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
494			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
495			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
496			hal/$(RTL871X)/$(RTL871X)_dm.o \
497			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
498			hal/$(RTL871X)/$(RTL871X)_cmd.o \
499
500
501_HAL_INTFS_FILES +=	\
502			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
503			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
504			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
505			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
506
507ifeq ($(CONFIG_PCI_HCI), y)
508_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
509else
510_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
511endif
512
513ifeq ($(CONFIG_USB_HCI), y)
514_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723B_USB.o
515endif
516ifeq ($(CONFIG_PCI_HCI), y)
517_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723B_PCIE.o
518endif
519
520_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8723b_bb.o\
521								hal/phydm/$(RTL871X)/halhwimg8723b_mac.o\
522								hal/phydm/$(RTL871X)/halhwimg8723b_rf.o\
523								hal/phydm/$(RTL871X)/halhwimg8723b_fw.o\
524								hal/phydm/$(RTL871X)/halhwimg8723b_mp.o\
525								hal/phydm/$(RTL871X)/phydm_regconfig8723b.o\
526								hal/phydm/$(RTL871X)/halphyrf_8723b_ce.o\
527								hal/phydm/$(RTL871X)/phydm_rtl8723b.o
528
529endif
530
531########### HAL_RTL8814A #################################
532ifeq ($(CONFIG_RTL8814A), y)
533## ADD NEW VHT MP HW TX MODE ##
534EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
535CONFIG_MP_VHT_HW_TX_MODE = y
536##########################################
537RTL871X = rtl8814a
538ifeq ($(CONFIG_USB_HCI), y)
539MODULE_NAME = 8814au
540endif
541ifeq ($(CONFIG_PCI_HCI), y)
542MODULE_NAME = 8814ae
543endif
544ifeq ($(CONFIG_SDIO_HCI), y)
545MODULE_NAME = 8814as
546endif
547
548EXTRA_CFLAGS += -DCONFIG_RTL8814A
549
550_HAL_INTFS_FILES +=  hal/HalPwrSeqCmd.o \
551					hal/$(RTL871X)/Hal8814PwrSeq.o \
552					hal/$(RTL871X)/$(RTL871X)_xmit.o\
553					hal/$(RTL871X)/$(RTL871X)_sreset.o
554
555_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
556			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
557			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
558			hal/$(RTL871X)/$(RTL871X)_dm.o \
559			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
560			hal/$(RTL871X)/$(RTL871X)_cmd.o \
561
562
563_HAL_INTFS_FILES +=	\
564			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
565			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
566			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
567			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
568
569ifeq ($(CONFIG_SDIO_HCI), y)
570_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
571else
572ifeq ($(CONFIG_GSPI_HCI), y)
573_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
574else
575_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
576endif
577endif
578
579ifeq ($(CONFIG_USB_HCI), y)
580_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8814A_USB.o
581endif
582ifeq ($(CONFIG_PCI_HCI), y)
583_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8814A_PCIE.o
584endif
585
586_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8814a_bb.o\
587								hal/phydm/$(RTL871X)/halhwimg8814a_mac.o\
588								hal/phydm/$(RTL871X)/halhwimg8814a_rf.o\
589								hal/phydm/$(RTL871X)/halhwimg8814a_fw.o\
590								hal/phydm/$(RTL871X)/phydm_iqk_8814a.o\
591								hal/phydm/$(RTL871X)/phydm_regconfig8814a.o\
592								hal/phydm/$(RTL871X)/halphyrf_8814a_ce.o\
593								hal/phydm/$(RTL871X)/phydm_rtl8814a.o\
594								hal/phydm/txbf/haltxbf8814a.o
595
596endif
597
598########### HAL_RTL8723C #################################
599ifeq ($(CONFIG_RTL8723C), y)
600
601RTL871X = rtl8703b
602ifeq ($(CONFIG_USB_HCI), y)
603MODULE_NAME = 8723cu
604MODULE_SUB_NAME = 8703bu
605endif
606ifeq ($(CONFIG_PCI_HCI), y)
607MODULE_NAME = 8723ce
608MODULE_SUB_NAME = 8703be
609endif
610ifeq ($(CONFIG_SDIO_HCI), y)
611MODULE_NAME = 8723cs
612MODULE_SUB_NAME = 8703bs
613endif
614
615EXTRA_CFLAGS += -DCONFIG_RTL8703B
616
617_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
618					hal/$(RTL871X)/Hal8703BPwrSeq.o\
619					hal/$(RTL871X)/$(RTL871X)_sreset.o
620
621_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
622			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
623			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
624			hal/$(RTL871X)/$(RTL871X)_dm.o \
625			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
626			hal/$(RTL871X)/$(RTL871X)_cmd.o \
627
628
629_HAL_INTFS_FILES +=	\
630			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
631			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_led.o \
632			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_xmit.o \
633			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_recv.o
634
635ifeq ($(CONFIG_PCI_HCI), y)
636_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
637else
638_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
639endif
640
641ifeq ($(CONFIG_USB_HCI), y)
642_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8703B_USB.o
643endif
644ifeq ($(CONFIG_PCI_HCI), y)
645_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8703B_PCIE.o
646endif
647
648_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8703b_bb.o\
649								hal/phydm/$(RTL871X)/halhwimg8703b_mac.o\
650								hal/phydm/$(RTL871X)/halhwimg8703b_rf.o\
651								hal/phydm/$(RTL871X)/halhwimg8703b_fw.o\
652								hal/phydm/$(RTL871X)/phydm_regconfig8703b.o\
653								hal/phydm/$(RTL871X)/halphyrf_8703b.o
654endif
655
656########### HAL_RTL8188F #################################
657ifeq ($(CONFIG_RTL8188F), y)
658
659RTL871X = rtl8188f
660ifeq ($(CONFIG_USB_HCI), y)
661MODULE_NAME = 8188fu
662endif
663ifeq ($(CONFIG_PCI_HCI), y)
664MODULE_NAME = 8188fe
665endif
666ifeq ($(CONFIG_SDIO_HCI), y)
667MODULE_NAME = 8189fs
668endif
669
670EXTRA_CFLAGS += -DCONFIG_RTL8188F
671
672_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
673					hal/$(RTL871X)/Hal8188FPwrSeq.o\
674					hal/$(RTL871X)/$(RTL871X)_sreset.o
675
676_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
677			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
678			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
679			hal/$(RTL871X)/$(RTL871X)_dm.o \
680			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
681			hal/$(RTL871X)/$(RTL871X)_cmd.o \
682
683
684_HAL_INTFS_FILES +=	\
685			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
686			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
687			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
688			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
689
690ifeq ($(CONFIG_PCI_HCI), y)
691_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
692else
693_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
694endif
695
696ifeq ($(CONFIG_USB_HCI), y)
697_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188F_USB.o
698endif
699
700ifeq ($(CONFIG_SDIO_HCI), y)
701_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188F_SDIO.o
702endif
703
704_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8188f_bb.o\
705								hal/phydm/$(RTL871X)/halhwimg8188f_mac.o\
706								hal/phydm/$(RTL871X)/halhwimg8188f_rf.o\
707								hal/phydm/$(RTL871X)/halhwimg8188f_fw.o\
708								hal/phydm/$(RTL871X)/phydm_regconfig8188f.o\
709								hal/phydm/$(RTL871X)/halphyrf_8188f.o \
710								hal/phydm/$(RTL871X)/phydm_rtl8188f.o
711
712endif
713
714########### AUTO_CFG  #################################
715
716ifeq ($(CONFIG_AUTOCFG_CP), y)
717
718ifeq ($(CONFIG_MULTIDRV), y)
719$(shell cp $(TopDIR)/autoconf_multidrv_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
720else
721ifeq ($(CONFIG_RTL8188E)$(CONFIG_SDIO_HCI),yy)
722$(shell cp $(TopDIR)/autoconf_rtl8189e_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
723else ifeq ($(CONFIG_RTL8188F)$(CONFIG_SDIO_HCI),yy)
724$(shell cp $(TopDIR)/autoconf_rtl8189f_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
725else ifeq ($(CONFIG_RTL8723C),y)
726$(shell cp $(TopDIR)/autoconf_rtl8723c_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
727else
728$(shell cp $(TopDIR)/autoconf_$(RTL871X)_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
729endif
730endif
731
732endif
733
734########### END OF PATH  #################################
735
736
737ifeq ($(CONFIG_USB_HCI), y)
738ifeq ($(CONFIG_USB_AUTOSUSPEND), y)
739EXTRA_CFLAGS += -DCONFIG_USB_AUTOSUSPEND
740endif
741endif
742
743ifeq ($(CONFIG_MP_INCLUDED), y)
744#MODULE_NAME := $(MODULE_NAME)_mp
745EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
746endif
747
748ifeq ($(CONFIG_POWER_SAVING), y)
749EXTRA_CFLAGS += -DCONFIG_POWER_SAVING
750endif
751
752ifeq ($(CONFIG_HW_PWRP_DETECTION), y)
753EXTRA_CFLAGS += -DCONFIG_HW_PWRP_DETECTION
754endif
755
756ifeq ($(CONFIG_WIFI_TEST), y)
757EXTRA_CFLAGS += -DCONFIG_WIFI_TEST
758endif
759
760ifeq ($(CONFIG_BT_COEXIST), y)
761EXTRA_CFLAGS += -DCONFIG_BT_COEXIST
762endif
763
764ifeq ($(CONFIG_INTEL_WIDI), y)
765EXTRA_CFLAGS += -DCONFIG_INTEL_WIDI
766endif
767
768ifeq ($(CONFIG_WAPI_SUPPORT), y)
769EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT
770endif
771
772
773ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
774EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE
775
776#EFUSE_MAP_PATH
777USER_EFUSE_MAP_PATH ?=
778ifneq ($(USER_EFUSE_MAP_PATH),)
779EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"$(USER_EFUSE_MAP_PATH)\"
780else ifeq ($(MODULE_NAME), 8189es)
781EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8189e.map\"
782else ifeq ($(MODULE_NAME), 8723bs)
783EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8723bs.map\"
784else
785EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_$(MODULE_NAME).map\"
786endif
787
788#WIFIMAC_PATH
789USER_WIFIMAC_PATH ?=
790ifneq ($(USER_WIFIMAC_PATH),)
791EXTRA_CFLAGS += -DWIFIMAC_PATH=\"$(USER_WIFIMAC_PATH)\"
792else
793EXTRA_CFLAGS += -DWIFIMAC_PATH=\"/data/wifimac.txt\"
794endif
795
796endif
797
798ifeq ($(CONFIG_EXT_CLK), y)
799EXTRA_CFLAGS += -DCONFIG_EXT_CLK
800endif
801
802ifeq ($(CONFIG_TRAFFIC_PROTECT), y)
803EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
804endif
805
806ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y)
807EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE
808#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/lib/firmware/\"
809EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"\"
810endif
811
812ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y)
813EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_BY_REGULATORY
814endif
815
816ifeq ($(CONFIG_CALIBRATE_TX_POWER_TO_MAX), y)
817EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_TO_MAX
818endif
819
820ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), disable)
821EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=0
822else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), enable)
823EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=1
824endif
825
826ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), normal)
827EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=0
828else ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), carrier_sense)
829EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=1
830endif
831
832ifeq ($(CONFIG_SIGNAL_SCALE_MAPPING), y)
833EXTRA_CFLAGS += -DCONFIG_SIGNAL_SCALE_MAPPING
834endif
835
836ifeq ($(CONFIG_80211W), y)
837EXTRA_CFLAGS += -DCONFIG_IEEE80211W
838endif
839
840ifeq ($(CONFIG_WOWLAN), y)
841EXTRA_CFLAGS += -DCONFIG_WOWLAN
842ifeq ($(CONFIG_SDIO_HCI), y)
843EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
844endif
845endif
846
847ifeq ($(CONFIG_AP_WOWLAN), y)
848EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN
849ifeq ($(CONFIG_SDIO_HCI), y)
850EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
851endif
852endif
853
854ifeq ($(CONFIG_PNO_SUPPORT), y)
855EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT
856ifeq ($(CONFIG_PNO_SET_DEBUG), y)
857EXTRA_CFLAGS += -DCONFIG_PNO_SET_DEBUG
858endif
859endif
860
861ifeq ($(CONFIG_GPIO_WAKEUP), y)
862EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP
863ifeq ($(CONFIG_HIGH_ACTIVE), y)
864EXTRA_CFLAGS += -DHIGH_ACTIVE=1
865else
866EXTRA_CFLAGS += -DHIGH_ACTIVE=0
867endif
868endif
869
870ifneq ($(CONFIG_WAKEUP_GPIO_IDX), default)
871EXTRA_CFLAGS += -DWAKEUP_GPIO_IDX=$(CONFIG_WAKEUP_GPIO_IDX)
872endif
873
874ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y)
875ifeq ($(CONFIG_SDIO_HCI), y)
876EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
877endif
878endif
879
880ifeq ($(CONFIG_REDUCE_TX_CPU_LOADING), y)
881EXTRA_CFLAGS += -DCONFIG_REDUCE_TX_CPU_LOADING
882endif
883
884ifeq ($(CONFIG_BR_EXT), y)
885BR_NAME = br0
886EXTRA_CFLAGS += -DCONFIG_BR_EXT
887EXTRA_CFLAGS += '-DCONFIG_BR_EXT_BRNAME="'$(BR_NAME)'"'
888endif
889
890ifeq ($(CONFIG_ANTENNA_DIVERSITY), y)
891EXTRA_CFLAGS += -DCONFIG_ANTENNA_DIVERSITY
892endif
893
894ifeq ($(CONFIG_TDLS), y)
895EXTRA_CFLAGS += -DCONFIG_TDLS
896endif
897
898ifeq ($(CONFIG_WIFI_MONITOR), y)
899EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
900endif
901
902ifeq ($(CONFIG_MP_VHT_HW_TX_MODE), y)
903EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
904ifeq ($(CONFIG_PLATFORM_I386_PC), y)
905## For I386 X86 ToolChain use Hardware FLOATING
906EXTRA_CFLAGS += -mhard-float
907else
908## For ARM ToolChain use Hardware FLOATING
909EXTRA_CFLAGS += -mfloat-abi=hard
910endif
911endif
912
913EXTRA_CFLAGS += -DDM_ODM_SUPPORT_TYPE=0x04
914
915ifeq ($(CONFIG_PLATFORM_I386_PC), y)
916EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
917EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
918SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
919ARCH ?= $(SUBARCH)
920CROSS_COMPILE ?=
921KVER  := $(shell uname -r)
922KSRC := /lib/modules/$(KVER)/build
923MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
924INSTALL_PREFIX :=
925endif
926
927ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM702X), y)
928EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ACTIONS_ATM702X
929#ARCH := arm
930ARCH := $(R_ARCH)
931#CROSS_COMPILE := arm-none-linux-gnueabi-
932CROSS_COMPILE := $(R_CROSS_COMPILE)
933KVER:= 3.4.0
934#KSRC := ../../../../build/out/kernel
935KSRC := $(KERNEL_BUILD_PATH)
936MODULE_NAME :=wlan
937endif
938
939
940ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM705X), y)
941EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
942#EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
943# default setting for Android 4.1, 4.2, 4.3, 4.4
944EXTRA_CFLAGS += -DCONFIG_PLATFORM_ACTIONS_ATM705X
945EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
946EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
947
948# Enable this for Android 5.0
949EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
950
951ifeq ($(CONFIG_SDIO_HCI), y)
952EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
953_PLATFORM_FILES += platform/platform_arm_act_sdio.o
954endif
955
956ARCH := arm
957CROSS_COMPILE := /opt/arm-2011.09/bin/arm-none-linux-gnueabi-
958KSRC := /home/android_sdk/Action-semi/705a_android_L/android/kernel
959endif
960
961ifeq ($(CONFIG_PLATFORM_ARM_SUN50IW1P1), y)
962EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
963EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN50IW1P1
964EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
965# default setting for Android 4.1, 4.2
966EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
967EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
968EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
969EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
970
971# Enable this for Android 5.0
972EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
973
974ifeq ($(CONFIG_USB_HCI), y)
975EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
976_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
977endif
978ifeq ($(CONFIG_SDIO_HCI), y)
979_PLATFORM_FILES += platform/platform_ARM_SUN50IW1P1_sdio.o
980endif
981
982ARCH := arm64
983# ===Cross compile setting for Android 5.1(64) SDK ===
984CROSS_COMPILE := /home/android_sdk/Allwinner/a64/android-51/lichee/out/sun50iw1p1/android/common/buildroot/external-toolchain/bin/aarch64-linux-gnu-
985KSRC :=/home/android_sdk/Allwinner/a64/android-51/lichee/linux-3.10/
986endif
987
988ifeq ($(CONFIG_PLATFORM_TI_AM3517), y)
989EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_SHUTTLE
990CROSS_COMPILE := arm-eabi-
991KSRC := $(shell pwd)/../../../Android/kernel
992ARCH := arm
993endif
994
995ifeq ($(CONFIG_PLATFORM_MSTAR_TITANIA12), y)
996EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR -DCONFIG_PLATFORM_MSTAR_TITANIA12
997ARCH:=mips
998CROSS_COMPILE:= /usr/src/Mstar_kernel/mips-4.3/bin/mips-linux-gnu-
999KVER:= 2.6.28.9
1000KSRC:= /usr/src/Mstar_kernel/2.6.28.9/
1001endif
1002
1003ifeq ($(CONFIG_PLATFORM_MSTAR), y)
1004EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1005EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1006EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR -DCONFIG_USE_USB_BUFFER_ALLOC_TX -DCONFIG_FIX_NR_BULKIN_BUFFER -DCONFIG_PREALLOC_RX_SKB_BUFFER
1007EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR_HIGH
1008ARCH:=arm
1009CROSS_COMPILE:= /usr/src/bin/arm-none-linux-gnueabi-
1010KVER:= 3.1.10
1011KSRC:= /usr/src/Mstar_kernel/3.1.10/
1012endif
1013
1014ifeq ($(CONFIG_PLATFORM_ANDROID_X86), y)
1015EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1016SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1017ARCH := $(SUBARCH)
1018CROSS_COMPILE := /media/DATA-2/android-x86/ics-x86_20120130/prebuilt/linux-x86/toolchain/i686-unknown-linux-gnu-4.2.1/bin/i686-unknown-linux-gnu-
1019KSRC := /media/DATA-2/android-x86/ics-x86_20120130/out/target/product/generic_x86/obj/kernel
1020MODULE_NAME :=wlan
1021endif
1022
1023ifeq ($(CONFIG_PLATFORM_ANDROID_INTEL_X86), y)
1024EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID_INTEL_X86
1025EXTRA_CFLAGS += -DCONFIG_PLATFORM_INTEL_BYT
1026EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID
1027EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1028EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1029EXTRA_CFLAGS += -DCONFIG_SKIP_SIGNAL_SCALE_MAPPING
1030ifeq ($(CONFIG_SDIO_HCI), y)
1031EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1032endif
1033endif
1034
1035ifeq ($(CONFIG_PLATFORM_JB_X86), y)
1036EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1037EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1038EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1039SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1040ARCH := $(SUBARCH)
1041CROSS_COMPILE := /home/android_sdk/android-x86_JB/prebuilts/gcc/linux-x86/x86/i686-linux-android-4.7/bin/i686-linux-android-
1042KSRC := /home/android_sdk/android-x86_JB/out/target/product/x86/obj/kernel/
1043MODULE_NAME :=wlan
1044endif
1045
1046ifeq ($(CONFIG_PLATFORM_ARM_PXA2XX), y)
1047EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1048ARCH := arm
1049CROSS_COMPILE := arm-none-linux-gnueabi-
1050KVER  := 2.6.34.1
1051KSRC ?= /usr/src/linux-2.6.34.1
1052endif
1053
1054ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
1055EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1056ARCH := arm
1057CROSS_COMPILE := arm-linux-
1058KVER  := 2.6.24.7_$(ARCH)
1059KSRC := /usr/src/kernels/linux-$(KVER)
1060endif
1061
1062ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
1063EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1064ARCH := arm
1065CROSS_COMPILE := arm-none-linux-gnueabi-
1066KVER  := 2.6.34.1
1067KSRC ?= /usr/src/linux-2.6.34.1
1068endif
1069
1070ifeq ($(CONFIG_PLATFORM_RTD2880B), y)
1071EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTD2880B
1072ARCH:=
1073CROSS_COMPILE:=
1074KVER:=
1075KSRC:=
1076endif
1077
1078ifeq ($(CONFIG_PLATFORM_MIPS_RMI), y)
1079EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1080ARCH:=mips
1081CROSS_COMPILE:=mipsisa32r2-uclibc-
1082KVER:=
1083KSRC:= /root/work/kernel_realtek
1084endif
1085
1086ifeq ($(CONFIG_PLATFORM_MIPS_PLM), y)
1087EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1088ARCH:=mips
1089CROSS_COMPILE:=mipsisa32r2-uclibc-
1090KVER:=
1091KSRC:= /root/work/kernel_realtek
1092endif
1093
1094ifeq ($(CONFIG_PLATFORM_MSTAR389), y)
1095EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR389
1096ARCH:=mips
1097CROSS_COMPILE:= mips-linux-gnu-
1098KVER:= 2.6.28.10
1099KSRC:= /home/mstar/mstar_linux/2.6.28.9/
1100endif
1101
1102ifeq ($(CONFIG_PLATFORM_MIPS_AR9132), y)
1103EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1104ARCH := mips
1105CROSS_COMPILE := mips-openwrt-linux-
1106KSRC := /home/alex/test_openwrt/tmp/linux-2.6.30.9
1107endif
1108
1109ifeq ($(CONFIG_PLATFORM_DMP_PHILIPS), y)
1110EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM
1111ARCH := mips
1112#CROSS_COMPILE:=/usr/local/msdk-4.3.6-mips-EL-2.6.12.6-0.9.30.3/bin/mipsel-linux-
1113CROSS_COMPILE:=/usr/local/toolchain_mipsel/bin/mipsel-linux-
1114KSRC ?=/usr/local/Jupiter/linux-2.6.12
1115endif
1116
1117ifeq ($(CONFIG_PLATFORM_RTK_DMP), y)
1118EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM  -DCONFIG_WIRELESS_EXT
1119EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1120ifeq ($(CONFIG_USB_HCI), y)
1121_PLATFORM_FILES += platform/platform_RTK_DMP_usb.o
1122endif
1123ARCH:=mips
1124CROSS_COMPILE:=mipsel-linux-
1125KVER:=
1126KSRC ?= /usr/src/DMP_Kernel/jupiter/linux-2.6.12
1127endif
1128
1129ifeq ($(CONFIG_PLATFORM_MT53XX), y)
1130EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MT53XX
1131ARCH:= arm
1132CROSS_COMPILE:= arm11_mtk_le-
1133KVER:= 2.6.27
1134KSRC?= /proj/mtk00802/BD_Compare/BDP/Dev/BDP_V301/BDP_Linux/linux-2.6.27
1135endif
1136
1137ifeq ($(CONFIG_PLATFORM_ARM_MX51_241H), y)
1138EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_WISTRON_PLATFORM
1139ARCH := arm
1140CROSS_COMPILE := /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
1141KVER  := 2.6.31
1142KSRC ?= /lib/modules/2.6.31-770-g0e46b52/source
1143endif
1144
1145ifeq ($(CONFIG_PLATFORM_FS_MX61), y)
1146EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1147ARCH := arm
1148CROSS_COMPILE := /home/share/CusEnv/FreeScale/arm-eabi-4.4.3/bin/arm-eabi-
1149KSRC ?= /home/share/CusEnv/FreeScale/FS_kernel_env
1150endif
1151
1152
1153
1154ifeq ($(CONFIG_PLATFORM_ACTIONS_ATJ227X), y)
1155EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATJ227X
1156ARCH := mips
1157CROSS_COMPILE := /home/cnsd4/project/actions/tools-2.6.27/bin/mipsel-linux-gnu-
1158KVER  := 2.6.27
1159KSRC := /home/cnsd4/project/actions/linux-2.6.27.28
1160endif
1161
1162ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
1163EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_TI_DM365
1164EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
1165EXTRA_CFLAGS += -DCONFIG_SINGLE_XMIT_BUF -DCONFIG_SINGLE_RECV_BUF
1166ARCH := arm
1167#CROSS_COMPILE := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-
1168#KSRC := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci/linux-dm365
1169CROSS_COMPILE := /opt/montavista/pro5.0/devkit/arm/v5t_le/bin/arm-linux-
1170KSRC:= /home/vivotek/lsp/DM365/kernel_platform/kernel/linux-2.6.18
1171KERNELOUTPUT := ${PRODUCTDIR}/tmp
1172KVER  := 2.6.18
1173endif
1174
1175ifeq ($(CONFIG_PLATFORM_MOZART), y)
1176EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MOZART
1177ARCH := arm
1178CROSS_COMPILE := /home/vivotek/lsp/mozart3v2/Mozart3e_Toolchain/build_arm_nofpu/usr/bin/arm-linux-
1179KVER  := $(shell uname -r)
1180KSRC:= /opt/Vivotek/lsp/mozart3v2/kernel_platform/kernel/mozart_kernel-1.17
1181KERNELOUTPUT := /home/pink/sample/ODM/IP8136W-VINT/tmp/kernel
1182endif
1183
1184ifeq ($(CONFIG_PLATFORM_TEGRA3_CARDHU), y)
1185EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1186# default setting for Android 4.1, 4.2
1187EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1188EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1189EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1190ARCH := arm
1191CROSS_COMPILE := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1192KSRC := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/out/target/product/cardhu/obj/KERNEL
1193MODULE_NAME := wlan
1194endif
1195
1196ifeq ($(CONFIG_PLATFORM_TEGRA4_DALMORE), y)
1197EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1198# default setting for Android 4.1, 4.2
1199EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1200EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1201EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1202ARCH := arm
1203CROSS_COMPILE := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1204KSRC := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/out/target/product/dalmore/obj/KERNEL
1205MODULE_NAME := wlan
1206endif
1207
1208ifeq ($(CONFIG_PLATFORM_ARM_TCC8900), y)
1209EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1210ARCH := arm
1211CROSS_COMPILE := /home/android_sdk/Telechips/SDK_2304_20110613/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1212KSRC := /home/android_sdk/Telechips/SDK_2304_20110613/kernel
1213MODULE_NAME := wlan
1214endif
1215
1216ifeq ($(CONFIG_PLATFORM_ARM_TCC8920), y)
1217EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1218ARCH := arm
1219CROSS_COMPILE := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1220KSRC := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/kernel
1221MODULE_NAME := wlan
1222endif
1223
1224ifeq ($(CONFIG_PLATFORM_ARM_TCC8920_JB42), y)
1225EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1226# default setting for Android 4.1, 4.2
1227EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1228EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1229ARCH := arm
1230CROSS_COMPILE := /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1231KSRC := /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/kernel
1232MODULE_NAME := wlan
1233endif
1234
1235ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
1236EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1237ARCH := arm
1238CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
1239KSRC := /usr/src/release_fae_version/kernel25_A7_281x
1240MODULE_NAME := wlan
1241endif
1242
1243ifeq ($(CONFIG_PLATFORM_ARM_RK3188), y)
1244EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1245# default setting for Android 4.1, 4.2, 4.3, 4.4
1246EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1247EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1248# default setting for Power control
1249EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1250EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1251# default setting for Special function
1252ARCH := arm
1253CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3188/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1254KSRC := /home/android_sdk/Rockchip/Rk3188/kernel
1255MODULE_NAME := wlan
1256endif
1257
1258ifeq ($(CONFIG_PLATFORM_ARM_RK3066), y)
1259EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_RK3066
1260EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1261EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1262EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1263EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
1264ifeq ($(CONFIG_SDIO_HCI), y)
1265EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1266endif
1267EXTRA_CFLAGS += -fno-pic
1268ARCH := arm
1269CROSS_COMPILE := /home/android_sdk/Rockchip/rk3066_20130607/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1270#CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3066sdk/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1271KSRC := /home/android_sdk/Rockchip/Rk3066sdk/kernel
1272MODULE_NAME :=wlan
1273endif
1274
1275ifeq ($(CONFIG_PLATFORM_ARM_URBETTER), y)
1276EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1277ARCH := arm
1278CROSS_COMPILE := /media/DATA-1/urbetter/arm-2009q3/bin/arm-none-linux-gnueabi-
1279KSRC := /media/DATA-1/urbetter/ics-urbetter/kernel
1280MODULE_NAME := wlan
1281endif
1282
1283ifeq ($(CONFIG_PLATFORM_ARM_TI_PANDA), y)
1284EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1285ARCH := arm
1286#CROSS_COMPILE := /media/DATA-1/aosp/ics-aosp_20111227/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1287#KSRC := /media/DATA-1/aosp/android-omap-panda-3.0_20120104
1288CROSS_COMPILE := /media/DATA-1/android-4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1289KSRC := /media/DATA-1/android-4.0/panda_kernel/omap
1290MODULE_NAME := wlan
1291endif
1292
1293ifeq ($(CONFIG_PLATFORM_MIPS_JZ4760), y)
1294EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_MINIMAL_MEMORY_USAGE
1295ARCH ?= mips
1296CROSS_COMPILE ?= /mnt/sdb5/Ingenic/Umido/mips-4.3/bin/mips-linux-gnu-
1297KSRC ?= /mnt/sdb5/Ingenic/Umido/kernel
1298endif
1299
1300ifeq ($(CONFIG_PLATFORM_SZEBOOK), y)
1301EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1302ARCH:=arm
1303CROSS_COMPILE:=/opt/crosstool2/bin/armeb-unknown-linux-gnueabi-
1304KVER:= 2.6.31.6
1305KSRC:= ../code/linux-2.6.31.6-2020/
1306endif
1307
1308#Add setting for MN10300
1309ifeq ($(CONFIG_PLATFORM_MN10300), y)
1310EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MN10300
1311ARCH := mn10300
1312CROSS_COMPILE := mn10300-linux-
1313KVER := 2.6.32.2
1314KSRC := /home/winuser/work/Plat_sLD2T_V3010/usr/src/linux-2.6.32.2
1315INSTALL_PREFIX :=
1316endif
1317
1318
1319ifeq ($(CONFIG_PLATFORM_ARM_SUNxI), y)
1320EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1321EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUNxI
1322# default setting for Android 4.1, 4.2
1323EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1324EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1325
1326EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1327ifeq ($(CONFIG_USB_HCI), y)
1328EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1329_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1330endif
1331ifeq ($(CONFIG_SDIO_HCI), y)
1332# default setting for A10-EVB mmc0
1333#EXTRA_CFLAGS += -DCONFIG_WITS_EVB_V13
1334_PLATFORM_FILES += platform/platform_ARM_SUNxI_sdio.o
1335endif
1336
1337ARCH := arm
1338#CROSS_COMPILE := arm-none-linux-gnueabi-
1339CROSS_COMPILE=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/buildroot/output/external-toolchain/bin/arm-none-linux-gnueabi-
1340KVER  := 3.0.8
1341#KSRC:= ../lichee/linux-3.0/
1342KSRC=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/linux-3.0
1343endif
1344
1345ifeq ($(CONFIG_PLATFORM_ARM_SUN6I), y)
1346EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1347EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN6I
1348EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1349# default setting for Android 4.1, 4.2, 4.3, 4.4
1350EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1351EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1352EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1353
1354EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1355ifeq ($(CONFIG_USB_HCI), y)
1356EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1357_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1358endif
1359ifeq ($(CONFIG_SDIO_HCI), y)
1360# default setting for A31-EVB mmc0
1361EXTRA_CFLAGS += -DCONFIG_A31_EVB
1362_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1363endif
1364
1365ARCH := arm
1366#Android-JB42
1367#CROSS_COMPILE := /home/android_sdk/Allwinner/a31/android-jb42/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1368#KSRC :=/home/android_sdk/Allwinner/a31/android-jb42/lichee/linux-3.3
1369#ifeq ($(CONFIG_USB_HCI), y)
1370#MODULE_NAME := 8188eu_sw
1371#endif
1372# ==== Cross compile setting for kitkat-a3x_v4.5 =====
1373CROSS_COMPILE := /home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1374KSRC :=/home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/linux-3.3
1375endif
1376
1377ifeq ($(CONFIG_PLATFORM_ARM_SUN7I), y)
1378EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1379EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
1380EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1381# default setting for Android 4.1, 4.2, 4.3, 4.4
1382EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1383EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1384EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1385
1386EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1387ifeq ($(CONFIG_USB_HCI), y)
1388EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1389_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1390endif
1391ifeq ($(CONFIG_SDIO_HCI), y)
1392_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1393endif
1394
1395ARCH := arm
1396# ===Cross compile setting for Android 4.2 SDK ===
1397#CROSS_COMPILE := /home/android_sdk/Allwinner/a20_evb/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1398#KSRC := /home/android_sdk/Allwinner/a20_evb/lichee/linux-3.3
1399# ==== Cross compile setting for Android 4.3 SDK =====
1400#CROSS_COMPILE := /home/android_sdk/Allwinner/a20/android-jb43/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1401#KSRC := /home/android_sdk/Allwinner/a20/android-jb43/lichee/linux-3.4
1402# ==== Cross compile setting for kitkat-a20_v4.4 =====
1403CROSS_COMPILE := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1404KSRC := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/linux-3.4
1405endif
1406
1407ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W3P1), y)
1408EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1409EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1410EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W3P1
1411EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1412# default setting for Android 4.1, 4.2
1413EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1414EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1415
1416EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1417ifeq ($(CONFIG_USB_HCI), y)
1418EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1419_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1420endif
1421ifeq ($(CONFIG_SDIO_HCI), y)
1422_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1423endif
1424
1425ARCH := arm
1426# ===Cross compile setting for Android 4.2 SDK ===
1427#CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-jb42/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1428#KSRC :=/home/android_sdk/Allwinner/a23/android-jb42/lichee/linux-3.4
1429# ===Cross compile setting for Android 4.4 SDK ===
1430CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-kk44/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1431KSRC :=/home/android_sdk/Allwinner/a23/android-kk44/lichee/linux-3.4
1432endif
1433
1434ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W5P1), y)
1435EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1436EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1437EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W5P1
1438EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1439# default setting for Android 4.1, 4.2
1440EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1441EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1442
1443# Enable this for Android 5.0
1444EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1445
1446EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1447ifeq ($(CONFIG_USB_HCI), y)
1448EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1449_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1450endif
1451ifeq ($(CONFIG_SDIO_HCI), y)
1452_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1453endif
1454
1455ARCH := arm
1456# ===Cross compile setting for Android L SDK ===
1457CROSS_COMPILE := /home/android_sdk/Allwinner/a33/android-L/lichee/out/sun8iw5p1/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1458KSRC :=/home/android_sdk/Allwinner/a33/android-L/lichee/linux-3.4
1459endif
1460
1461ifeq ($(CONFIG_PLATFORM_ACTIONS_ATV5201), y)
1462EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATV5201
1463EXTRA_CFLAGS += -DCONFIG_SDIO_DISABLE_RXFIFO_POLLING_LOOP
1464ARCH := mips
1465CROSS_COMPILE := mipsel-linux-gnu-
1466KVER  := $(KERNEL_VER)
1467KSRC:= $(CFGDIR)/../../kernel/linux-$(KERNEL_VER)
1468endif
1469
1470ifeq ($(CONFIG_PLATFORM_ARM_RTD299X), y)
1471EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1472EXTRA_CFLAGS += -DUSB_XMITBUF_ALIGN_SZ=1024 -DUSB_PACKET_OFFSET_SZ=0
1473EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1474ifeq ($(CONFIG_ANDROID), y)
1475EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1476# Enable this for Android 5.0
1477EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1478endif
1479#ARCH, CROSS_COMPILE, KSRC,and  MODDESTDIR are provided by external makefile
1480INSTALL_PREFIX :=
1481endif
1482
1483ifeq ($(CONFIG_PLATFORM_HISILICON), y)
1484EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_HISILICON
1485ifeq ($(SUPPORT_CONCURRENT),y)
1486EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1487endif
1488EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1489ARCH := arm
1490ifeq ($(CROSS_COMPILE),)
1491       CROSS_COMPILE = arm-hisiv200-linux-
1492endif
1493MODULE_NAME := rtl8192eu
1494ifeq ($(KSRC),)
1495       KSRC := ../../../../../../kernel/linux-3.4.y
1496endif
1497endif
1498
1499# Platform setting
1500ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_6820), y)
1501ifeq ($(CONFIG_ANDROID_2X), y)
1502EXTRA_CFLAGS += -DANDROID_2X
1503endif
1504EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
1505EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_6820
1506EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1507ifeq ($(RTL871X), rtl8188e)
1508EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
1509endif
1510ifeq ($(CONFIG_SDIO_HCI), y)
1511EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1512_PLATFORM_FILES += platform/platform_sprd_sdio.o
1513endif
1514endif
1515
1516ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_8810), y)
1517ifeq ($(CONFIG_ANDROID_2X), y)
1518EXTRA_CFLAGS += -DANDROID_2X
1519endif
1520EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
1521EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_8810
1522EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1523ifeq ($(RTL871X), rtl8188e)
1524EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
1525endif
1526ifeq ($(CONFIG_SDIO_HCI), y)
1527EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1528_PLATFORM_FILES += platform/platform_sprd_sdio.o
1529endif
1530endif
1531
1532ifeq ($(CONFIG_PLATFORM_ARM_WMT), y)
1533EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1534EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1535EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1536EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1537ifeq ($(CONFIG_SDIO_HCI), y)
1538_PLATFORM_FILES += platform/platform_ARM_WMT_sdio.o
1539endif
1540ARCH := arm
1541CROSS_COMPILE := /home/android_sdk/WonderMedia/wm8880-android4.4/toolchain/arm_201103_gcc4.5.2/mybin/arm_1103_le-
1542KSRC := /home/android_sdk/WonderMedia/wm8880-android4.4/kernel4.4/
1543MODULE_NAME :=8189es_kk
1544endif
1545
1546ifeq ($(CONFIG_PLATFORM_RTK119X), y)
1547EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1548#EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
1549EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1550# default setting for Android 4.1, 4.2
1551EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1552EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1553#EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1554EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
1555
1556#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
1557ifeq ($(CONFIG_USB_HCI), y)
1558EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1559#_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1560endif
1561ifeq ($(CONFIG_SDIO_HCI), y)
1562_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1563endif
1564
1565ARCH := arm
1566
1567# ==== Cross compile setting for Android 4.4 SDK =====
1568#CROSS_COMPILE := arm-linux-gnueabihf-
1569KVER  := 3.10.24
1570#KSRC :=/home/android_sdk/Allwinner/a20/android-kitkat44/lichee/linux-3.4
1571CROSS_COMPILE := /home/realtek/software_phoenix/phoenix/toolchain/usr/local/arm-2013.11/bin/arm-linux-gnueabihf-
1572KSRC := /home/realtek/software_phoenix/linux-kernel
1573MODULE_NAME := 8192eu
1574
1575endif
1576
1577ifeq ($(CONFIG_PLATFORM_NOVATEK_NT72668), y)
1578EXTRA_CFLAGS += -DCONFIG_PLATFORM_NOVATEK_NT72668
1579EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1580EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1581EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1582EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
1583EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1584ARCH ?= arm
1585CROSS_COMPILE := arm-linux-gnueabihf-
1586KVER := 3.8.0
1587KSRC := /Custom/Novatek/TCL/linux-3.8_header
1588#KSRC := $(KERNELDIR)
1589endif
1590
1591ifeq ($(CONFIG_PLATFORM_ARM_TCC8930_JB42), y)
1592EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1593# default setting for Android 4.1, 4.2
1594EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1595EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1596ARCH := arm
1597CROSS_COMPILE := /home/android_sdk/Telechips/v13.05_r1-tcc-android-4.2.2_tcc893x-evm_build/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1598KSRC := /home/android_sdk/Telechips/v13.05_r1-tcc-android-4.2.2_tcc893x-evm_build/kernel
1599MODULE_NAME := wlan
1600endif
1601
1602ifeq ($(CONFIG_MULTIDRV), y)
1603
1604ifeq ($(CONFIG_SDIO_HCI), y)
1605MODULE_NAME := rtw_sdio
1606endif
1607
1608ifeq ($(CONFIG_USB_HCI), y)
1609MODULE_NAME := rtw_usb
1610endif
1611
1612ifeq ($(CONFIG_PCI_HCI), y)
1613MODULE_NAME := rtw_pci
1614endif
1615
1616
1617endif
1618
1619USER_MODULE_NAME ?=
1620ifneq ($(USER_MODULE_NAME),)
1621MODULE_NAME := $(USER_MODULE_NAME)
1622endif
1623
1624ifneq ($(KERNELRELEASE),)
1625
1626rtk_core :=	core/rtw_cmd.o \
1627		core/rtw_security.o \
1628		core/rtw_debug.o \
1629		core/rtw_io.o \
1630		core/rtw_ioctl_query.o \
1631		core/rtw_ioctl_set.o \
1632		core/rtw_ieee80211.o \
1633		core/rtw_mlme.o \
1634		core/rtw_mlme_ext.o \
1635		core/rtw_wlan_util.o \
1636		core/rtw_vht.o \
1637		core/rtw_pwrctrl.o \
1638		core/rtw_rf.o \
1639		core/rtw_recv.o \
1640		core/rtw_sta_mgt.o \
1641		core/rtw_ap.o \
1642		core/rtw_xmit.o	\
1643		core/rtw_p2p.o \
1644		core/rtw_tdls.o \
1645		core/rtw_br_ext.o \
1646		core/rtw_iol.o \
1647		core/rtw_sreset.o \
1648		core/rtw_btcoex.o \
1649		core/rtw_beamforming.o \
1650		core/rtw_odm.o \
1651		core/efuse/rtw_efuse.o
1652
1653$(MODULE_NAME)-y += $(rtk_core)
1654
1655$(MODULE_NAME)-$(CONFIG_INTEL_WIDI) += core/rtw_intel_widi.o
1656
1657$(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o	\
1658					core/rtw_wapi_sms4.o
1659
1660$(MODULE_NAME)-y += $(_OS_INTFS_FILES)
1661$(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
1662$(MODULE_NAME)-y += $(_OUTSRC_FILES)
1663$(MODULE_NAME)-y += $(_PLATFORM_FILES)
1664
1665$(MODULE_NAME)-$(CONFIG_MP_INCLUDED) += core/rtw_mp.o \
1666					core/rtw_mp_ioctl.o
1667
1668ifeq ($(CONFIG_RTL8723B), y)
1669$(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
1670endif
1671
1672obj-$(CONFIG_RTL8723BU) := $(MODULE_NAME).o
1673
1674else
1675
1676export CONFIG_RTL8723BU = m
1677
1678all: modules
1679
1680modules:
1681	$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd)  modules
1682
1683strip:
1684	$(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
1685
1686install:
1687	install -p -m 644 $(MODULE_NAME).ko  $(MODDESTDIR)
1688	/sbin/depmod -a ${KVER}
1689
1690uninstall:
1691	rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
1692	/sbin/depmod -a ${KVER}
1693
1694config_r:
1695	@echo "make config"
1696	/bin/bash script/Configure script/config.in
1697
1698
1699.PHONY: modules clean
1700
1701clean:
1702	cd hal/phydm/ ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
1703	cd hal/phydm/ ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1704	cd hal/led ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1705	cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
1706	cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
1707	cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1708	cd core/efuse ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1709	cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1710	cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1711	cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1712	cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
1713	rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
1714	rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
1715	rm -fr .tmp_versions
1716endif
1717
1718