xref: /OK3568_Linux_fs/external/rkwifibt/drivers/rtl8821cs/Makefile (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
2EXTRA_CFLAGS += -O1
3#EXTRA_CFLAGS += -O3
4#EXTRA_CFLAGS += -Wall
5#EXTRA_CFLAGS += -Wextra
6#EXTRA_CFLAGS += -Werror
7#EXTRA_CFLAGS += -pedantic
8#EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
9
10EXTRA_CFLAGS += -Wno-unused-variable
11#EXTRA_CFLAGS += -Wno-unused-value
12#EXTRA_CFLAGS += -Wno-unused-label
13#EXTRA_CFLAGS += -Wno-unused-parameter
14#EXTRA_CFLAGS += -Wno-unused-function
15#EXTRA_CFLAGS += -Wno-unused
16#EXTRA_CFLAGS += -Wno-uninitialized
17
18GCC_VER_49 := $(shell echo `$(CC) -dumpversion | cut -f1-2 -d.` \>= 4.9 | bc )
19ifeq ($(GCC_VER_49),1)
20EXTRA_CFLAGS += -Wno-date-time	# Fix compile error && warning on gcc 4.9 and later
21endif
22
23EXTRA_CFLAGS += -I$(src)/include
24
25EXTRA_LDFLAGS += --strip-debug
26
27CONFIG_AUTOCFG_CP = n
28
29########################## WIFI IC ############################
30CONFIG_MULTIDRV = n
31CONFIG_RTL8188E = n
32CONFIG_RTL8812A = n
33CONFIG_RTL8821A = n
34CONFIG_RTL8192E = n
35CONFIG_RTL8723B = n
36CONFIG_RTL8814A = n
37CONFIG_RTL8723C = n
38CONFIG_RTL8188F = n
39CONFIG_RTL8188GTV = n
40CONFIG_RTL8822B = n
41CONFIG_RTL8723D = n
42CONFIG_RTL8821C = y
43CONFIG_RTL8710B = n
44CONFIG_RTL8192F = n
45CONFIG_RTL8822C = n
46CONFIG_RTL8814B = n
47CONFIG_RTL8814C = n
48CONFIG_RTL8723F = n
49######################### Interface ###########################
50CONFIG_USB_HCI = n
51CONFIG_PCI_HCI = n
52CONFIG_SDIO_HCI = y
53CONFIG_GSPI_HCI = n
54########################## Features ###########################
55CONFIG_AP_MODE = y
56CONFIG_P2P = y
57CONFIG_MP_INCLUDED = y
58CONFIG_POWER_SAVING = y
59CONFIG_IPS_MODE = default
60CONFIG_LPS_MODE = default
61CONFIG_USB_AUTOSUSPEND = n
62CONFIG_HW_PWRP_DETECTION = n
63CONFIG_BT_COEXIST = y
64CONFIG_WAPI_SUPPORT = n
65CONFIG_EFUSE_CONFIG_FILE = y
66CONFIG_EXT_CLK = n
67CONFIG_TRAFFIC_PROTECT = n
68CONFIG_LOAD_PHY_PARA_FROM_FILE = y
69CONFIG_TXPWR_BY_RATE = y
70CONFIG_TXPWR_BY_RATE_EN = y
71CONFIG_TXPWR_LIMIT = y
72CONFIG_TXPWR_LIMIT_EN = n
73CONFIG_RTW_CHPLAN = 0xFFFF
74CONFIG_RTW_ADAPTIVITY_EN = disable
75CONFIG_RTW_ADAPTIVITY_MODE = normal
76CONFIG_80211D = n
77CONFIG_SIGNAL_SCALE_MAPPING = n
78CONFIG_80211W = y
79CONFIG_REDUCE_TX_CPU_LOADING = n
80CONFIG_BR_EXT = y
81CONFIG_TDLS = n
82CONFIG_WIFI_MONITOR = n
83CONFIG_MCC_MODE = n
84CONFIG_APPEND_VENDOR_IE_ENABLE = n
85CONFIG_RTW_NAPI = y
86CONFIG_RTW_GRO = y
87CONFIG_RTW_NETIF_SG = y
88CONFIG_RTW_IPCAM_APPLICATION = n
89CONFIG_RTW_REPEATER_SON = n
90CONFIG_ICMP_VOQ = n
91CONFIG_IP_R_MONITOR = n #arp VOQ and high rate
92# user priority mapping rule : tos, dscp
93CONFIG_RTW_UP_MAPPING_RULE = tos
94CONFIG_RTW_MBO = n
95CONFIG_WAKE_ON_BT = n
96########################## Android ###########################
97# CONFIG_RTW_ANDROID - 0: no Android, 4/5/6/7/8/9/10/11 : Android version
98CONFIG_RTW_ANDROID = 0
99
100ifeq ($(shell test $(CONFIG_RTW_ANDROID) -gt 0; echo $$?), 0)
101EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID)
102endif
103
104########################## Debug ###########################
105CONFIG_RTW_DEBUG = y
106# default log level is _DRV_INFO_ = 4,
107# please refer to "How_to_set_driver_debug_log_level.doc" to set the available level.
108CONFIG_RTW_LOG_LEVEL = 4
109
110# enable /proc/net/rtlxxxx/ debug interfaces
111CONFIG_PROC_DEBUG = y
112
113######################## Wake On Lan ##########################
114CONFIG_WOWLAN = n
115#bit2: deauth, bit1: unicast, bit0: magic pkt.
116CONFIG_WAKEUP_TYPE = 0x7
117CONFIG_WOW_LPS_MODE = default
118#bit0: disBBRF off, #bit1: Wireless remote controller (WRC)
119CONFIG_SUSPEND_TYPE = 0
120CONFIG_WOW_STA_MIX = n
121CONFIG_GPIO_WAKEUP = n
122# Please contact with RTK support team first. After getting the agreement from RTK support team,
123# you are just able to modify the CONFIG_WAKEUP_GPIO_IDX with customized requirement.
124CONFIG_WAKEUP_GPIO_IDX = default
125CONFIG_HIGH_ACTIVE_DEV2HST = n
126######### only for USB #########
127CONFIG_ONE_PIN_GPIO = n
128CONFIG_HIGH_ACTIVE_HST2DEV = n
129CONFIG_PNO_SUPPORT = n
130CONFIG_PNO_SET_DEBUG = n
131CONFIG_AP_WOWLAN = n
132######### Notify SDIO Host Keep Power During Syspend ##########
133CONFIG_RTW_SDIO_PM_KEEP_POWER = y
134###################### MP HW TX MODE FOR VHT #######################
135CONFIG_MP_VHT_HW_TX_MODE = n
136###################### ROAMING #####################################
137CONFIG_LAYER2_ROAMING = y
138#bit0: ROAM_ON_EXPIRED, #bit1: ROAM_ON_RESUME, #bit2: ROAM_ACTIVE
139CONFIG_ROAMING_FLAG = 0x3
140###################### Platform Related #######################
141CONFIG_PLATFORM_I386_PC = n
142CONFIG_PLATFORM_ANDROID_X86 = n
143CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
144CONFIG_PLATFORM_JB_X86 = n
145CONFIG_PLATFORM_ARM_S3C2K4 = n
146CONFIG_PLATFORM_ARM_PXA2XX = n
147CONFIG_PLATFORM_ARM_S3C6K4 = n
148CONFIG_PLATFORM_MIPS_RMI = n
149CONFIG_PLATFORM_RTD2880B = n
150CONFIG_PLATFORM_MIPS_AR9132 = n
151CONFIG_PLATFORM_RTK_DMP = n
152CONFIG_PLATFORM_MIPS_PLM = n
153CONFIG_PLATFORM_MSTAR389 = n
154CONFIG_PLATFORM_MT53XX = n
155CONFIG_PLATFORM_ARM_MX51_241H = n
156CONFIG_PLATFORM_FS_MX61 = n
157CONFIG_PLATFORM_ACTIONS_ATJ227X = n
158CONFIG_PLATFORM_TEGRA3_CARDHU = n
159CONFIG_PLATFORM_TEGRA4_DALMORE = n
160CONFIG_PLATFORM_ARM_TCC8900 = n
161CONFIG_PLATFORM_ARM_TCC8920 = n
162CONFIG_PLATFORM_ARM_TCC8920_JB42 = n
163CONFIG_PLATFORM_ARM_TCC8930_JB42 = n
164CONFIG_PLATFORM_ARM_RK2818 = n
165CONFIG_PLATFORM_ARM_RK3066 = n
166CONFIG_PLATFORM_ARM_RK3188 = y
167CONFIG_PLATFORM_ARM_URBETTER = n
168CONFIG_PLATFORM_ARM_TI_PANDA = n
169CONFIG_PLATFORM_MIPS_JZ4760 = n
170CONFIG_PLATFORM_DMP_PHILIPS = n
171CONFIG_PLATFORM_MSTAR_TITANIA12 = n
172CONFIG_PLATFORM_MSTAR = n
173CONFIG_PLATFORM_SZEBOOK = n
174CONFIG_PLATFORM_ARM_SUNxI = n
175CONFIG_PLATFORM_ARM_SUN6I = n
176CONFIG_PLATFORM_ARM_SUN7I = n
177CONFIG_PLATFORM_ARM_SUN8I_W3P1 = n
178CONFIG_PLATFORM_ARM_SUN8I_W5P1 = n
179CONFIG_PLATFORM_ACTIONS_ATM702X = n
180CONFIG_PLATFORM_ACTIONS_ATV5201 = n
181CONFIG_PLATFORM_ACTIONS_ATM705X = n
182CONFIG_PLATFORM_ARM_SUN50IW1P1 = n
183CONFIG_PLATFORM_ARM_RTD299X = n
184CONFIG_PLATFORM_ARM_LGE = n
185CONFIG_PLATFORM_ARM_SPREADTRUM_6820 = n
186CONFIG_PLATFORM_ARM_SPREADTRUM_8810 = n
187CONFIG_PLATFORM_ARM_WMT = n
188CONFIG_PLATFORM_TI_DM365 = n
189CONFIG_PLATFORM_MOZART = n
190CONFIG_PLATFORM_RTK119X = n
191CONFIG_PLATFORM_RTK119X_AM = n
192CONFIG_PLATFORM_RTK129X = n
193CONFIG_PLATFORM_RTK1319 = n
194CONFIG_PLATFORM_RTK390X = n
195CONFIG_PLATFORM_NOVATEK_NT72668 = n
196CONFIG_PLATFORM_HISILICON = n
197CONFIG_PLATFORM_HISILICON_HI3798 = n
198CONFIG_PLATFORM_NV_TK1 = n
199CONFIG_PLATFORM_NV_TK1_UBUNTU = n
200CONFIG_PLATFORM_RTL8197D = n
201CONFIG_PLATFORM_AML_S905 = n
202CONFIG_PLATFORM_ZTE_ZX296716 = n
203########### CUSTOMER ################################
204CONFIG_CUSTOMER_HUAWEI_GENERAL = n
205
206CONFIG_DRVEXT_MODULE = n
207
208export TopDIR ?= $(shell pwd)
209
210########### COMMON  #################################
211ifeq ($(CONFIG_GSPI_HCI), y)
212HCI_NAME = gspi
213endif
214
215ifeq ($(CONFIG_SDIO_HCI), y)
216HCI_NAME = sdio
217endif
218
219ifeq ($(CONFIG_USB_HCI), y)
220HCI_NAME = usb
221endif
222
223ifeq ($(CONFIG_PCI_HCI), y)
224HCI_NAME = pci
225endif
226
227
228_OS_INTFS_FILES :=	os_dep/osdep_service.o \
229			os_dep/linux/os_intfs.o \
230			os_dep/linux/$(HCI_NAME)_intf.o \
231			os_dep/linux/$(HCI_NAME)_ops_linux.o \
232			os_dep/linux/ioctl_linux.o \
233			os_dep/linux/xmit_linux.o \
234			os_dep/linux/mlme_linux.o \
235			os_dep/linux/recv_linux.o \
236			os_dep/linux/ioctl_cfg80211.o \
237			os_dep/linux/rtw_cfgvendor.o \
238			os_dep/linux/wifi_regd.o \
239			os_dep/linux/rtw_android.o \
240			os_dep/linux/rtw_proc.o \
241			os_dep/linux/nlrtw.o \
242			os_dep/linux/rtw_rhashtable.o
243
244ifeq ($(CONFIG_MP_INCLUDED), y)
245_OS_INTFS_FILES += os_dep/linux/ioctl_mp.o
246endif
247
248ifeq ($(CONFIG_SDIO_HCI), y)
249_OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
250_OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
251endif
252
253ifeq ($(CONFIG_GSPI_HCI), y)
254_OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
255_OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
256endif
257
258
259_HAL_INTFS_FILES :=	hal/hal_intf.o \
260			hal/hal_com.o \
261			hal/hal_com_phycfg.o \
262			hal/hal_phy.o \
263			hal/hal_dm.o \
264			hal/hal_dm_acs.o \
265			hal/hal_btcoex_wifionly.o \
266			hal/hal_btcoex.o \
267			hal/hal_mp.o \
268			hal/hal_mcc.o \
269			hal/hal_hci/hal_$(HCI_NAME).o \
270			hal/led/hal_led.o \
271			hal/led/hal_$(HCI_NAME)_led.o
272
273
274EXTRA_CFLAGS += -I$(src)/platform
275_PLATFORM_FILES := platform/platform_ops.o
276
277EXTRA_CFLAGS += -I$(src)/hal/btc
278
279########### HAL_RTL8188E #################################
280ifeq ($(CONFIG_RTL8188E), y)
281
282RTL871X = rtl8188e
283ifeq ($(CONFIG_SDIO_HCI), y)
284MODULE_NAME = 8189es
285endif
286
287ifeq ($(CONFIG_GSPI_HCI), y)
288MODULE_NAME = 8189es
289endif
290
291ifeq ($(CONFIG_USB_HCI), y)
292MODULE_NAME = 8188eu
293endif
294
295ifeq ($(CONFIG_PCI_HCI), y)
296MODULE_NAME = 8188ee
297endif
298EXTRA_CFLAGS += -DCONFIG_RTL8188E
299
300_HAL_INTFS_FILES +=	hal/HalPwrSeqCmd.o \
301					hal/$(RTL871X)/Hal8188EPwrSeq.o\
302 					hal/$(RTL871X)/$(RTL871X)_xmit.o\
303					hal/$(RTL871X)/$(RTL871X)_sreset.o
304
305_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
306			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
307			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
308			hal/$(RTL871X)/$(RTL871X)_dm.o \
309			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
310			hal/$(RTL871X)/$(RTL871X)_cmd.o \
311			hal/$(RTL871X)/hal8188e_s_fw.o \
312			hal/$(RTL871X)/hal8188e_t_fw.o \
313			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
314			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
315			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
316			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
317
318ifeq ($(CONFIG_SDIO_HCI), y)
319_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
320else
321ifeq ($(CONFIG_GSPI_HCI), y)
322_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
323else
324_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
325endif
326endif
327
328ifeq ($(CONFIG_USB_HCI), y)
329_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_USB.o
330endif
331ifeq ($(CONFIG_PCI_HCI), y)
332_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_PCIE.o
333endif
334ifeq ($(CONFIG_SDIO_HCI), y)
335_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188E_SDIO.o
336endif
337
338endif
339
340########### HAL_RTL8192E #################################
341ifeq ($(CONFIG_RTL8192E), y)
342
343RTL871X = rtl8192e
344ifeq ($(CONFIG_SDIO_HCI), y)
345MODULE_NAME = 8192es
346endif
347
348ifeq ($(CONFIG_USB_HCI), y)
349MODULE_NAME = 8192eu
350endif
351
352ifeq ($(CONFIG_PCI_HCI), y)
353MODULE_NAME = 8192ee
354endif
355EXTRA_CFLAGS += -DCONFIG_RTL8192E
356_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
357					hal/$(RTL871X)/Hal8192EPwrSeq.o\
358					hal/$(RTL871X)/$(RTL871X)_xmit.o\
359					hal/$(RTL871X)/$(RTL871X)_sreset.o
360
361_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
362			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
363			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
364			hal/$(RTL871X)/$(RTL871X)_dm.o \
365			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
366			hal/$(RTL871X)/$(RTL871X)_cmd.o \
367			hal/$(RTL871X)/hal8192e_fw.o \
368			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
369			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
370			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
371			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
372
373ifeq ($(CONFIG_SDIO_HCI), y)
374_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
375else
376ifeq ($(CONFIG_GSPI_HCI), y)
377_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
378else
379_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
380endif
381endif
382
383ifeq ($(CONFIG_USB_HCI), y)
384_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8192E_USB.o
385endif
386ifeq ($(CONFIG_PCI_HCI), y)
387_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8192E_PCIE.o
388endif
389ifeq ($(CONFIG_SDIO_HCI), y)
390_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8192E_SDIO.o
391endif
392
393ifeq ($(CONFIG_BT_COEXIST), y)
394_BTC_FILES += hal/btc/halbtc8192e1ant.o \
395				hal/btc/halbtc8192e2ant.o
396endif
397
398endif
399
400########### HAL_RTL8812A_RTL8821A #################################
401
402ifneq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A), n_n)
403
404RTL871X = rtl8812a
405ifeq ($(CONFIG_USB_HCI), y)
406MODULE_NAME = 8812au
407endif
408ifeq ($(CONFIG_PCI_HCI), y)
409MODULE_NAME = 8812ae
410endif
411ifeq ($(CONFIG_SDIO_HCI), y)
412MODULE_NAME = 8812as
413endif
414
415_HAL_INTFS_FILES +=  hal/HalPwrSeqCmd.o \
416					hal/$(RTL871X)/Hal8812PwrSeq.o \
417					hal/$(RTL871X)/Hal8821APwrSeq.o\
418					hal/$(RTL871X)/$(RTL871X)_xmit.o\
419					hal/$(RTL871X)/$(RTL871X)_sreset.o
420
421_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
422			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
423			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
424			hal/$(RTL871X)/$(RTL871X)_dm.o \
425			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
426			hal/$(RTL871X)/$(RTL871X)_cmd.o \
427			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
428			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
429			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
430			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
431
432ifeq ($(CONFIG_SDIO_HCI), y)
433_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
434else
435ifeq ($(CONFIG_GSPI_HCI), y)
436_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
437else
438_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
439endif
440endif
441
442ifeq ($(CONFIG_RTL8812A), y)
443ifeq ($(CONFIG_USB_HCI), y)
444_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8812A_USB.o
445endif
446ifeq ($(CONFIG_PCI_HCI), y)
447_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8812A_PCIE.o
448endif
449endif
450ifeq ($(CONFIG_RTL8821A), y)
451ifeq ($(CONFIG_USB_HCI), y)
452_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8821A_USB.o
453endif
454ifeq ($(CONFIG_PCI_HCI), y)
455_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8821A_PCIE.o
456endif
457ifeq ($(CONFIG_SDIO_HCI), y)
458_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8821A_SDIO.o
459endif
460endif
461
462ifeq ($(CONFIG_RTL8812A), y)
463EXTRA_CFLAGS += -DCONFIG_RTL8812A
464_HAL_INTFS_FILES +=	hal/rtl8812a/hal8812a_fw.o
465endif
466
467ifeq ($(CONFIG_RTL8821A), y)
468
469ifeq ($(CONFIG_RTL8812A), n)
470
471RTL871X = rtl8821a
472ifeq ($(CONFIG_USB_HCI), y)
473ifeq ($(CONFIG_BT_COEXIST), y)
474MODULE_NAME := 8821au
475else
476MODULE_NAME := 8811au
477endif
478endif
479ifeq ($(CONFIG_PCI_HCI), y)
480MODULE_NAME := 8821ae
481endif
482ifeq ($(CONFIG_SDIO_HCI), y)
483MODULE_NAME := 8821as
484endif
485
486endif
487
488EXTRA_CFLAGS += -DCONFIG_RTL8821A
489
490_HAL_INTFS_FILES +=	hal/rtl8812a/hal8821a_fw.o
491
492endif
493
494ifeq ($(CONFIG_BT_COEXIST), y)
495ifeq ($(CONFIG_RTL8812A), y)
496_BTC_FILES += hal/btc/halbtc8812a1ant.o \
497				hal/btc/halbtc8812a2ant.o
498endif
499ifeq ($(CONFIG_RTL8821A), y)
500_BTC_FILES += hal/btc/halbtc8821a1ant.o \
501				hal/btc/halbtc8821a2ant.o
502endif
503endif
504
505endif
506
507########### HAL_RTL8723B #################################
508ifeq ($(CONFIG_RTL8723B), y)
509
510RTL871X = rtl8723b
511ifeq ($(CONFIG_USB_HCI), y)
512MODULE_NAME = 8723bu
513endif
514ifeq ($(CONFIG_PCI_HCI), y)
515MODULE_NAME = 8723be
516endif
517ifeq ($(CONFIG_SDIO_HCI), y)
518MODULE_NAME = 8723bs
519endif
520
521EXTRA_CFLAGS += -DCONFIG_RTL8723B
522
523_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
524					hal/$(RTL871X)/Hal8723BPwrSeq.o\
525					hal/$(RTL871X)/$(RTL871X)_sreset.o
526
527_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
528			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
529			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
530			hal/$(RTL871X)/$(RTL871X)_dm.o \
531			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
532			hal/$(RTL871X)/$(RTL871X)_cmd.o \
533			hal/$(RTL871X)/hal8723b_fw.o
534
535_HAL_INTFS_FILES +=	\
536			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
537			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
538			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
539			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
540
541ifeq ($(CONFIG_PCI_HCI), y)
542_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
543else
544_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
545endif
546
547ifeq ($(CONFIG_USB_HCI), y)
548_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723B_USB.o
549endif
550ifeq ($(CONFIG_PCI_HCI), y)
551_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723B_PCIE.o
552endif
553ifeq ($(CONFIG_SDIO_HCI), y)
554_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723B_SDIO.o
555endif
556
557_BTC_FILES += hal/btc/halbtc8723bwifionly.o
558ifeq ($(CONFIG_BT_COEXIST), y)
559_BTC_FILES += hal/btc/halbtc8723b1ant.o \
560				hal/btc/halbtc8723b2ant.o
561endif
562
563endif
564
565########### HAL_RTL8814A #################################
566ifeq ($(CONFIG_RTL8814A), y)
567## ADD NEW VHT MP HW TX MODE ##
568#EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
569#CONFIG_MP_VHT_HW_TX_MODE = y
570##########################################
571RTL871X = rtl8814a
572ifeq ($(CONFIG_USB_HCI), y)
573MODULE_NAME = 8814au
574endif
575ifeq ($(CONFIG_PCI_HCI), y)
576MODULE_NAME = 8814ae
577endif
578ifeq ($(CONFIG_SDIO_HCI), y)
579MODULE_NAME = 8814as
580endif
581
582EXTRA_CFLAGS += -DCONFIG_RTL8814A
583
584_HAL_INTFS_FILES +=  hal/HalPwrSeqCmd.o \
585					hal/$(RTL871X)/Hal8814PwrSeq.o \
586					hal/$(RTL871X)/$(RTL871X)_xmit.o\
587					hal/$(RTL871X)/$(RTL871X)_sreset.o
588
589_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
590			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
591			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
592			hal/$(RTL871X)/$(RTL871X)_dm.o \
593			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
594			hal/$(RTL871X)/$(RTL871X)_cmd.o \
595			hal/$(RTL871X)/hal8814a_fw.o
596
597
598_HAL_INTFS_FILES +=	\
599			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
600			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
601			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
602			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
603
604ifeq ($(CONFIG_SDIO_HCI), y)
605_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
606else
607ifeq ($(CONFIG_GSPI_HCI), y)
608_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
609else
610_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
611endif
612endif
613
614ifeq ($(CONFIG_USB_HCI), y)
615_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8814A_USB.o
616endif
617ifeq ($(CONFIG_PCI_HCI), y)
618_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8814A_PCIE.o
619endif
620
621ifeq ($(CONFIG_BT_COEXIST), y)
622_BTC_FILES += hal/btc/halbtc8814a2ant.o
623endif
624endif
625
626########### HAL_RTL8723C #################################
627ifeq ($(CONFIG_RTL8723C), y)
628
629RTL871X = rtl8703b
630ifeq ($(CONFIG_USB_HCI), y)
631MODULE_NAME = 8723cu
632MODULE_SUB_NAME = 8703bu
633endif
634ifeq ($(CONFIG_PCI_HCI), y)
635MODULE_NAME = 8723ce
636MODULE_SUB_NAME = 8703be
637endif
638ifeq ($(CONFIG_SDIO_HCI), y)
639MODULE_NAME = 8723cs
640MODULE_SUB_NAME = 8703bs
641endif
642
643EXTRA_CFLAGS += -DCONFIG_RTL8703B
644
645_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
646					hal/$(RTL871X)/Hal8703BPwrSeq.o\
647					hal/$(RTL871X)/$(RTL871X)_sreset.o
648
649_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
650			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
651			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
652			hal/$(RTL871X)/$(RTL871X)_dm.o \
653			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
654			hal/$(RTL871X)/$(RTL871X)_cmd.o \
655			hal/$(RTL871X)/hal8703b_fw.o
656
657_HAL_INTFS_FILES +=	\
658			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
659			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_led.o \
660			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_xmit.o \
661			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_recv.o
662
663ifeq ($(CONFIG_PCI_HCI), y)
664_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
665else
666_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
667endif
668
669ifeq ($(CONFIG_USB_HCI), y)
670_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8703B_USB.o
671endif
672ifeq ($(CONFIG_PCI_HCI), y)
673_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8703B_PCIE.o
674endif
675
676ifeq ($(CONFIG_BT_COEXIST), y)
677_BTC_FILES += hal/btc/halbtc8703b1ant.o
678endif
679
680endif
681
682########### HAL_RTL8723D #################################
683ifeq ($(CONFIG_RTL8723D), y)
684
685RTL871X = rtl8723d
686ifeq ($(CONFIG_USB_HCI), y)
687MODULE_NAME = 8723du
688MODULE_SUB_NAME = 8723du
689endif
690ifeq ($(CONFIG_PCI_HCI), y)
691MODULE_NAME = 8723de
692MODULE_SUB_NAME = 8723de
693endif
694ifeq ($(CONFIG_SDIO_HCI), y)
695MODULE_NAME = 8723ds
696MODULE_SUB_NAME = 8723ds
697endif
698
699EXTRA_CFLAGS += -DCONFIG_RTL8723D
700
701_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
702					hal/$(RTL871X)/Hal8723DPwrSeq.o\
703					hal/$(RTL871X)/$(RTL871X)_sreset.o
704
705_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
706			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
707			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
708			hal/$(RTL871X)/$(RTL871X)_dm.o \
709			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
710			hal/$(RTL871X)/$(RTL871X)_cmd.o \
711			hal/$(RTL871X)/hal8723d_fw.o \
712			hal/$(RTL871X)/$(RTL871X)_lps_poff.o
713
714
715_HAL_INTFS_FILES +=	\
716			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
717			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_led.o \
718			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_xmit.o \
719			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_recv.o
720
721ifeq ($(CONFIG_PCI_HCI), y)
722_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
723else
724_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
725endif
726
727ifeq ($(CONFIG_USB_HCI), y)
728_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723D_USB.o
729endif
730ifeq ($(CONFIG_PCI_HCI), y)
731_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8723D_PCIE.o
732endif
733
734ifeq ($(CONFIG_BT_COEXIST), y)
735_BTC_FILES += hal/btc/halbtc8723d1ant.o \
736				hal/btc/halbtc8723d2ant.o
737endif
738
739endif
740
741########### HAL_RTL8723F #################################
742ifeq ($(CONFIG_RTL8723F), y)
743RTL871X := rtl8723f
744ifeq ($(CONFIG_USB_HCI), y)
745MODULE_NAME = 8723fu
746endif
747ifeq ($(CONFIG_SDIO_HCI), y)
748MODULE_NAME = 8723fs
749endif
750
751endif
752
753########### HAL_RTL8188F #################################
754ifeq ($(CONFIG_RTL8188F), y)
755
756RTL871X = rtl8188f
757ifeq ($(CONFIG_USB_HCI), y)
758MODULE_NAME = 8188fu
759endif
760ifeq ($(CONFIG_PCI_HCI), y)
761MODULE_NAME = 8188fe
762endif
763ifeq ($(CONFIG_SDIO_HCI), y)
764MODULE_NAME = 8189fs
765endif
766
767EXTRA_CFLAGS += -DCONFIG_RTL8188F
768
769_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
770					hal/$(RTL871X)/Hal8188FPwrSeq.o\
771					hal/$(RTL871X)/$(RTL871X)_sreset.o
772
773_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
774			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
775			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
776			hal/$(RTL871X)/$(RTL871X)_dm.o \
777			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
778			hal/$(RTL871X)/$(RTL871X)_cmd.o \
779			hal/$(RTL871X)/hal8188f_fw.o
780
781_HAL_INTFS_FILES +=	\
782			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
783			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
784			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
785			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
786
787ifeq ($(CONFIG_PCI_HCI), y)
788_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
789else
790_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
791endif
792
793ifeq ($(CONFIG_USB_HCI), y)
794_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188F_USB.o
795endif
796
797ifeq ($(CONFIG_SDIO_HCI), y)
798_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188F_SDIO.o
799endif
800
801endif
802
803########### HAL_RTL8188GTV #################################
804ifeq ($(CONFIG_RTL8188GTV), y)
805
806RTL871X = rtl8188gtv
807ifeq ($(CONFIG_USB_HCI), y)
808MODULE_NAME = 8188gtvu
809endif
810ifeq ($(CONFIG_SDIO_HCI), y)
811MODULE_NAME = 8189gtvs
812endif
813
814EXTRA_CFLAGS += -DCONFIG_RTL8188GTV
815
816_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
817					hal/$(RTL871X)/Hal8188GTVPwrSeq.o\
818					hal/$(RTL871X)/$(RTL871X)_sreset.o
819
820_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
821			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
822			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
823			hal/$(RTL871X)/$(RTL871X)_dm.o \
824			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
825			hal/$(RTL871X)/$(RTL871X)_cmd.o \
826			hal/$(RTL871X)/hal8188gtv_fw.o
827
828_HAL_INTFS_FILES +=	\
829			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
830			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
831			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
832			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
833
834ifeq ($(CONFIG_PCI_HCI), y)
835_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
836else
837_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
838endif
839
840ifeq ($(CONFIG_USB_HCI), y)
841_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188GTV_USB.o
842endif
843
844ifeq ($(CONFIG_SDIO_HCI), y)
845_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8188GTV_SDIO.o
846endif
847
848endif
849
850########### HAL_RTL8822B #################################
851ifeq ($(CONFIG_RTL8822B), y)
852RTL871X := rtl8822b
853ifeq ($(CONFIG_USB_HCI), y)
854ifeq ($(CONFIG_BT_COEXIST), n)
855MODULE_NAME = 8812bu
856else
857MODULE_NAME = 88x2bu
858endif
859endif
860ifeq ($(CONFIG_PCI_HCI), y)
861MODULE_NAME = 88x2be
862endif
863ifeq ($(CONFIG_SDIO_HCI), y)
864MODULE_NAME = 88x2bs
865endif
866
867endif
868########### HAL_RTL8821C #################################
869ifeq ($(CONFIG_RTL8821C), y)
870RTL871X := rtl8821c
871ifeq ($(CONFIG_USB_HCI), y)
872MODULE_NAME = 8821cu
873endif
874ifeq ($(CONFIG_PCI_HCI), y)
875MODULE_NAME = 8821ce
876endif
877ifeq ($(CONFIG_SDIO_HCI), y)
878MODULE_NAME = 8821cs
879endif
880
881endif
882
883########### HAL_RTL8710B #################################
884ifeq ($(CONFIG_RTL8710B), y)
885
886RTL871X = rtl8710b
887ifeq ($(CONFIG_USB_HCI), y)
888MODULE_NAME = 8710bu
889MODULE_SUB_NAME = 8710bu
890endif
891
892EXTRA_CFLAGS += -DCONFIG_RTL8710B
893
894_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
895					hal/$(RTL871X)/Hal8710BPwrSeq.o\
896					hal/$(RTL871X)/$(RTL871X)_sreset.o
897
898_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
899			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
900			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
901			hal/$(RTL871X)/$(RTL871X)_dm.o \
902			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
903			hal/$(RTL871X)/$(RTL871X)_cmd.o \
904			hal/$(RTL871X)/hal8710b_fw.o \
905			hal/$(RTL871X)/$(RTL871X)_lps_poff.o
906
907
908_HAL_INTFS_FILES +=	\
909			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
910			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_led.o \
911			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_xmit.o \
912			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_recv.o
913
914_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
915
916ifeq ($(CONFIG_USB_HCI), y)
917_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8710B_USB.o
918endif
919
920endif
921
922########### HAL_RTL8192F #################################
923ifeq ($(CONFIG_RTL8192F), y)
924
925RTL871X = rtl8192f
926ifeq ($(CONFIG_USB_HCI), y)
927MODULE_NAME = 8192fu
928MODULE_SUB_NAME = 8192fu
929endif
930ifeq ($(CONFIG_PCI_HCI), y)
931MODULE_NAME = 8192fe
932MODULE_SUB_NAME = 8192fe
933endif
934ifeq ($(CONFIG_SDIO_HCI), y)
935MODULE_NAME = 8192fs
936MODULE_SUB_NAME = 8192fs
937endif
938
939EXTRA_CFLAGS += -DCONFIG_RTL8192F
940
941_HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
942					hal/$(RTL871X)/Hal8192FPwrSeq.o\
943					hal/$(RTL871X)/$(RTL871X)_sreset.o
944
945_HAL_INTFS_FILES +=	hal/$(RTL871X)/$(RTL871X)_hal_init.o \
946			hal/$(RTL871X)/$(RTL871X)_phycfg.o \
947			hal/$(RTL871X)/$(RTL871X)_rf6052.o \
948			hal/$(RTL871X)/$(RTL871X)_dm.o \
949			hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
950			hal/$(RTL871X)/$(RTL871X)_cmd.o \
951			hal/$(RTL871X)/hal8192f_fw.o \
952			hal/$(RTL871X)/$(RTL871X)_lps_poff.o
953
954
955_HAL_INTFS_FILES +=	\
956			hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
957			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_led.o \
958			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_xmit.o \
959			hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_SUB_NAME)_recv.o
960
961ifeq ($(CONFIG_PCI_HCI), y)
962_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
963else
964_HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
965endif
966
967ifeq ($(CONFIG_SDIO_HCI), y)
968_HAL_INTFS_FILES += hal/efuse/$(RTL871X)/HalEfuseMask8192F_SDIO.o
969endif
970
971ifeq ($(CONFIG_USB_HCI), y)
972_HAL_INTFS_FILES += hal/efuse/$(RTL871X)/HalEfuseMask8192F_USB.o
973endif
974
975ifeq ($(CONFIG_PCI_HCI), y)
976_HAL_INTFS_FILES += hal/efuse/$(RTL871X)/HalEfuseMask8192F_PCIE.o
977endif
978
979ifeq ($(CONFIG_BT_COEXIST), y)
980_BTC_FILES += hal/btc/halbtccommon.o \
981				hal/btc/halbtc8192f.o
982endif
983
984endif
985
986########### HAL_RTL8822C #################################
987ifeq ($(CONFIG_RTL8822C), y)
988RTL871X := rtl8822c
989ifeq ($(CONFIG_USB_HCI), y)
990ifeq ($(CONFIG_BT_COEXIST), n)
991MODULE_NAME = 8812cu
992else
993MODULE_NAME = 88x2cu
994endif
995endif
996ifeq ($(CONFIG_PCI_HCI), y)
997MODULE_NAME = 88x2ce
998endif
999ifeq ($(CONFIG_SDIO_HCI), y)
1000MODULE_NAME = 88x2cs
1001endif
1002
1003endif
1004
1005########### HAL_RTL8814B #################################
1006ifeq ($(CONFIG_RTL8814B), y)
1007RTL871X := rtl8814b
1008ifeq ($(CONFIG_RTL8814C), y)
1009MODULE_NAME = 8814ce
1010else
1011ifeq ($(CONFIG_USB_HCI), y)
1012MODULE_NAME = 8814bu
1013endif
1014ifeq ($(CONFIG_PCI_HCI), y)
1015MODULE_NAME = 8814be
1016endif
1017endif
1018
1019endif
1020
1021########### AUTO_CFG  #################################
1022
1023ifeq ($(CONFIG_AUTOCFG_CP), y)
1024
1025ifeq ($(CONFIG_MULTIDRV), y)
1026$(shell cp $(TopDIR)/autoconf_multidrv_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
1027else
1028ifeq ($(CONFIG_RTL8188E)$(CONFIG_SDIO_HCI),yy)
1029$(shell cp $(TopDIR)/autoconf_rtl8189e_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
1030else ifeq ($(CONFIG_RTL8188F)$(CONFIG_SDIO_HCI),yy)
1031$(shell cp $(TopDIR)/autoconf_rtl8189f_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
1032else ifeq ($(CONFIG_RTL8723C),y)
1033$(shell cp $(TopDIR)/autoconf_rtl8723c_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
1034else
1035$(shell cp $(TopDIR)/autoconf_$(RTL871X)_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
1036endif
1037endif
1038
1039endif
1040
1041########### END OF PATH  #################################
1042
1043ifeq ($(CONFIG_AP_MODE), y)
1044EXTRA_CFLAGS += -DCONFIG_AP_MODE
1045endif
1046
1047ifeq ($(CONFIG_P2P), y)
1048EXTRA_CFLAGS += -DCONFIG_P2P
1049ifneq ($(CONFIG_AP_MODE), y)
1050$(error "CONFIG_AP_MODE is required for CONFIG_P2P")
1051endif
1052endif
1053
1054ifeq ($(CONFIG_USB_HCI), y)
1055ifeq ($(CONFIG_USB_AUTOSUSPEND), y)
1056EXTRA_CFLAGS += -DCONFIG_USB_AUTOSUSPEND
1057endif
1058endif
1059
1060ifeq ($(CONFIG_MP_INCLUDED), y)
1061#MODULE_NAME := $(MODULE_NAME)_mp
1062EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
1063endif
1064
1065ifeq ($(CONFIG_POWER_SAVING), y)
1066ifneq ($(CONFIG_IPS_MODE), default)
1067EXTRA_CFLAGS += -DRTW_IPS_MODE=$(CONFIG_IPS_MODE)
1068endif
1069ifneq ($(CONFIG_LPS_MODE), default)
1070EXTRA_CFLAGS += -DRTW_LPS_MODE=$(CONFIG_LPS_MODE)
1071endif
1072ifneq ($(CONFIG_WOW_LPS_MODE), default)
1073EXTRA_CFLAGS += -DRTW_WOW_LPS_MODE=$(CONFIG_WOW_LPS_MODE)
1074endif
1075EXTRA_CFLAGS += -DCONFIG_POWER_SAVING
1076endif
1077
1078ifeq ($(CONFIG_HW_PWRP_DETECTION), y)
1079EXTRA_CFLAGS += -DCONFIG_HW_PWRP_DETECTION
1080endif
1081
1082ifeq ($(CONFIG_BT_COEXIST), y)
1083EXTRA_CFLAGS += -DCONFIG_BT_COEXIST
1084endif
1085
1086ifeq ($(CONFIG_WAPI_SUPPORT), y)
1087EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT
1088endif
1089
1090
1091ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
1092EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE
1093
1094#EFUSE_MAP_PATH
1095USER_EFUSE_MAP_PATH ?=
1096ifneq ($(USER_EFUSE_MAP_PATH),)
1097EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"$(USER_EFUSE_MAP_PATH)\"
1098else ifeq ($(MODULE_NAME), 8189es)
1099EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8189e.map\"
1100else ifeq ($(MODULE_NAME), 8723bs)
1101EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8723bs.map\"
1102else
1103EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_$(MODULE_NAME).map\"
1104endif
1105
1106#WIFIMAC_PATH
1107USER_WIFIMAC_PATH ?=
1108ifneq ($(USER_WIFIMAC_PATH),)
1109EXTRA_CFLAGS += -DWIFIMAC_PATH=\"$(USER_WIFIMAC_PATH)\"
1110else
1111EXTRA_CFLAGS += -DWIFIMAC_PATH=\"/data/wifimac.txt\"
1112endif
1113
1114endif
1115
1116ifeq ($(CONFIG_EXT_CLK), y)
1117EXTRA_CFLAGS += -DCONFIG_EXT_CLK
1118endif
1119
1120ifeq ($(CONFIG_TRAFFIC_PROTECT), y)
1121EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1122endif
1123
1124ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y)
1125EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE
1126#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH_WITH_IC_NAME_FOLDER
1127EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/lib/firmware/\"
1128endif
1129
1130ifeq ($(CONFIG_TXPWR_BY_RATE), n)
1131EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=0
1132else ifeq ($(CONFIG_TXPWR_BY_RATE), y)
1133EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=1
1134endif
1135ifeq ($(CONFIG_TXPWR_BY_RATE_EN), n)
1136EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=0
1137else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), y)
1138EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=1
1139else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), auto)
1140EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=2
1141endif
1142
1143ifeq ($(CONFIG_TXPWR_LIMIT), n)
1144EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=0
1145else ifeq ($(CONFIG_TXPWR_LIMIT), y)
1146EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=1
1147endif
1148ifeq ($(CONFIG_TXPWR_LIMIT_EN), n)
1149EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=0
1150else ifeq ($(CONFIG_TXPWR_LIMIT_EN), y)
1151EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=1
1152else ifeq ($(CONFIG_TXPWR_LIMIT_EN), auto)
1153EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=2
1154endif
1155
1156ifneq ($(CONFIG_RTW_CHPLAN), 0xFFFF)
1157EXTRA_CFLAGS += -DCONFIG_RTW_CHPLAN=$(CONFIG_RTW_CHPLAN)
1158endif
1159
1160ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y)
1161EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_BY_REGULATORY
1162endif
1163
1164ifeq ($(CONFIG_CALIBRATE_TX_POWER_TO_MAX), y)
1165EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_TO_MAX
1166endif
1167
1168ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), disable)
1169EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=0
1170else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), enable)
1171EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=1
1172else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), auto)
1173EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=2
1174endif
1175
1176ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), normal)
1177EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=0
1178else ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), carrier_sense)
1179EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=1
1180endif
1181
1182ifeq ($(CONFIG_80211D), y)
1183EXTRA_CFLAGS += -DCONFIG_80211D
1184endif
1185
1186ifeq ($(CONFIG_SIGNAL_SCALE_MAPPING), y)
1187EXTRA_CFLAGS += -DCONFIG_SIGNAL_SCALE_MAPPING
1188endif
1189
1190ifeq ($(CONFIG_80211W), y)
1191EXTRA_CFLAGS += -DCONFIG_IEEE80211W
1192endif
1193
1194ifeq ($(CONFIG_WOWLAN), y)
1195EXTRA_CFLAGS += -DCONFIG_WOWLAN -DRTW_WAKEUP_EVENT=$(CONFIG_WAKEUP_TYPE)
1196EXTRA_CFLAGS += -DRTW_SUSPEND_TYPE=$(CONFIG_SUSPEND_TYPE)
1197ifeq ($(CONFIG_WOW_STA_MIX), y)
1198EXTRA_CFLAGS += -DRTW_WOW_STA_MIX
1199endif
1200ifeq ($(CONFIG_SDIO_HCI), y)
1201EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1202endif
1203endif
1204
1205ifeq ($(CONFIG_AP_WOWLAN), y)
1206EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN
1207ifeq ($(CONFIG_AP_MODE), n)
1208EXTRA_CFLAGS += -DCONFIG_AP_MODE
1209endif
1210ifeq ($(CONFIG_SDIO_HCI), y)
1211EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1212endif
1213endif
1214
1215ifeq ($(CONFIG_LAYER2_ROAMING), y)
1216EXTRA_CFLAGS += -DCONFIG_LAYER2_ROAMING -DCONFIG_ROAMING_FLAG=$(CONFIG_ROAMING_FLAG)
1217endif
1218
1219ifeq ($(CONFIG_PNO_SUPPORT), y)
1220EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT
1221ifeq ($(CONFIG_PNO_SET_DEBUG), y)
1222EXTRA_CFLAGS += -DCONFIG_PNO_SET_DEBUG
1223endif
1224endif
1225
1226ifeq ($(CONFIG_GPIO_WAKEUP), y)
1227EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP
1228ifeq ($(CONFIG_ONE_PIN_GPIO), y)
1229EXTRA_CFLAGS += -DCONFIG_RTW_ONE_PIN_GPIO
1230endif
1231ifeq ($(CONFIG_HIGH_ACTIVE_DEV2HST), y)
1232EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=1
1233else
1234EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=0
1235endif
1236endif
1237
1238ifeq ($(CONFIG_HIGH_ACTIVE_HST2DEV), y)
1239EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=1
1240else
1241EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=0
1242endif
1243
1244ifneq ($(CONFIG_WAKEUP_GPIO_IDX), default)
1245EXTRA_CFLAGS += -DWAKEUP_GPIO_IDX=$(CONFIG_WAKEUP_GPIO_IDX)
1246endif
1247
1248ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y)
1249ifeq ($(CONFIG_SDIO_HCI), y)
1250EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1251endif
1252endif
1253
1254ifeq ($(CONFIG_REDUCE_TX_CPU_LOADING), y)
1255EXTRA_CFLAGS += -DCONFIG_REDUCE_TX_CPU_LOADING
1256endif
1257
1258ifeq ($(CONFIG_BR_EXT), y)
1259BR_NAME = br0
1260EXTRA_CFLAGS += -DCONFIG_BR_EXT
1261EXTRA_CFLAGS += '-DCONFIG_BR_EXT_BRNAME="'$(BR_NAME)'"'
1262endif
1263
1264
1265ifeq ($(CONFIG_TDLS), y)
1266EXTRA_CFLAGS += -DCONFIG_TDLS
1267endif
1268
1269ifeq ($(CONFIG_WIFI_MONITOR), y)
1270EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
1271endif
1272
1273ifeq ($(CONFIG_MCC_MODE), y)
1274EXTRA_CFLAGS += -DCONFIG_MCC_MODE
1275endif
1276
1277ifeq ($(CONFIG_RTW_NAPI), y)
1278EXTRA_CFLAGS += -DCONFIG_RTW_NAPI
1279endif
1280
1281ifeq ($(CONFIG_RTW_GRO), y)
1282EXTRA_CFLAGS += -DCONFIG_RTW_GRO
1283endif
1284
1285ifeq ($(CONFIG_RTW_REPEATER_SON), y)
1286EXTRA_CFLAGS += -DCONFIG_RTW_REPEATER_SON
1287endif
1288
1289ifeq ($(CONFIG_RTW_IPCAM_APPLICATION), y)
1290EXTRA_CFLAGS += -DCONFIG_RTW_IPCAM_APPLICATION
1291ifeq ($(CONFIG_WIFI_MONITOR), n)
1292EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
1293endif
1294endif
1295
1296ifeq ($(CONFIG_RTW_NETIF_SG), y)
1297EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG
1298endif
1299
1300ifeq ($(CONFIG_ICMP_VOQ), y)
1301EXTRA_CFLAGS += -DCONFIG_ICMP_VOQ
1302endif
1303
1304ifeq ($(CONFIG_IP_R_MONITOR), y)
1305EXTRA_CFLAGS += -DCONFIG_IP_R_MONITOR
1306endif
1307
1308ifeq ($(CONFIG_MP_VHT_HW_TX_MODE), y)
1309EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
1310ifeq ($(CONFIG_PLATFORM_I386_PC), y)
1311## For I386 X86 ToolChain use Hardware FLOATING
1312EXTRA_CFLAGS += -mhard-float
1313else
1314## For ARM ToolChain use Hardware FLOATING
1315EXTRA_CFLAGS += -mfloat-abi=hard
1316endif
1317endif
1318
1319ifeq ($(CONFIG_APPEND_VENDOR_IE_ENABLE), y)
1320EXTRA_CFLAGS += -DCONFIG_APPEND_VENDOR_IE_ENABLE
1321endif
1322
1323ifeq ($(CONFIG_RTW_DEBUG), y)
1324EXTRA_CFLAGS += -DCONFIG_RTW_DEBUG
1325EXTRA_CFLAGS += -DRTW_LOG_LEVEL=$(CONFIG_RTW_LOG_LEVEL)
1326endif
1327
1328ifeq ($(CONFIG_PROC_DEBUG), y)
1329EXTRA_CFLAGS += -DCONFIG_PROC_DEBUG
1330endif
1331
1332ifeq ($(CONFIG_RTW_UP_MAPPING_RULE), dscp)
1333EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=1
1334else
1335EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=0
1336endif
1337
1338EXTRA_CFLAGS += -DDM_ODM_SUPPORT_TYPE=0x04
1339
1340ifeq ($(CONFIG_RTW_MBO), y)
1341EXTRA_CFLAGS += -DCONFIG_RTW_MBO -DCONFIG_RTW_80211K -DCONFIG_RTW_WNM -DCONFIG_RTW_BTM_ROAM
1342EXTRA_CFLAGS += -DCONFIG_RTW_80211R
1343endif
1344
1345ifeq ($(CONFIG_WAKE_ON_BT), y)
1346EXTRA_CFLAGS += -DCONFIG_WAKE_ON_BT
1347endif
1348
1349ifeq ($(CONFIG_PLATFORM_I386_PC), y)
1350EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1351EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1352
1353SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1354ARCH ?= $(SUBARCH)
1355CROSS_COMPILE ?=
1356KVER  := $(shell uname -r)
1357KSRC := /lib/modules/$(KVER)/build
1358MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
1359INSTALL_PREFIX :=
1360STAGINGMODDIR := /lib/modules/$(KVER)/kernel/drivers/staging
1361endif
1362
1363ifeq ($(CONFIG_PLATFORM_NV_TK1), y)
1364EXTRA_CFLAGS += -DCONFIG_PLATFORM_NV_TK1
1365EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1366# default setting for Android 4.1, 4.2
1367EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1368EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1369EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_PLATFORM_ANDROID
1370# Enable this for Android 5.0
1371EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1372EXTRA_CFLAGS += -DRTW_VENDOR_EXT_SUPPORT
1373EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1374ARCH ?= arm
1375
1376CROSS_COMPILE := /mnt/newdisk/android_sdk/nvidia_tk1/android_L/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-
1377KSRC :=/mnt/newdisk/android_sdk/nvidia_tk1/android_L/out/target/product/shieldtablet/obj/KERNEL/
1378MODULE_NAME = wlan
1379endif
1380
1381ifeq ($(CONFIG_PLATFORM_NV_TK1_UBUNTU), y)
1382EXTRA_CFLAGS += -DCONFIG_PLATFORM_NV_TK1
1383EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1384EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1385
1386ARCH ?= arm
1387
1388CROSS_COMPILE ?=
1389KVER := $(shell uname -r)
1390KSRC := /lib/modules/$(KVER)/build
1391MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
1392INSTALL_PREFIX :=
1393endif
1394
1395ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM702X), y)
1396EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ACTIONS_ATM702X
1397#ARCH := arm
1398ARCH := $(R_ARCH)
1399#CROSS_COMPILE := arm-none-linux-gnueabi-
1400CROSS_COMPILE := $(R_CROSS_COMPILE)
1401KVER:= 3.4.0
1402#KSRC := ../../../../build/out/kernel
1403KSRC := $(KERNEL_BUILD_PATH)
1404MODULE_NAME :=wlan
1405endif
1406
1407
1408ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM705X), y)
1409EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1410#EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1411# default setting for Android 4.1, 4.2, 4.3, 4.4
1412EXTRA_CFLAGS += -DCONFIG_PLATFORM_ACTIONS_ATM705X
1413EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1414EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1415
1416# Enable this for Android 5.0
1417EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1418
1419ifeq ($(CONFIG_SDIO_HCI), y)
1420EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1421_PLATFORM_FILES += platform/platform_arm_act_sdio.o
1422endif
1423
1424ARCH := arm
1425CROSS_COMPILE := /opt/arm-2011.09/bin/arm-none-linux-gnueabi-
1426KSRC := /home/android_sdk/Action-semi/705a_android_L/android/kernel
1427endif
1428
1429ifeq ($(CONFIG_PLATFORM_ARM_SUN50IW1P1), y)
1430EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1431EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN50IW1P1
1432EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1433# default setting for Android 4.1, 4.2
1434EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1435EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1436EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1437EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1438
1439# Enable this for Android 5.0
1440EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1441
1442ifeq ($(CONFIG_USB_HCI), y)
1443EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1444_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1445endif
1446ifeq ($(CONFIG_SDIO_HCI), y)
1447_PLATFORM_FILES += platform/platform_ARM_SUN50IW1P1_sdio.o
1448endif
1449
1450ARCH := arm64
1451# ===Cross compile setting for Android 5.1(64) SDK ===
1452CROSS_COMPILE := /home/android_sdk/Allwinner/a64/android-51/lichee/out/sun50iw1p1/android/common/buildroot/external-toolchain/bin/aarch64-linux-gnu-
1453KSRC :=/home/android_sdk/Allwinner/a64/android-51/lichee/linux-3.10/
1454endif
1455
1456ifeq ($(CONFIG_PLATFORM_TI_AM3517), y)
1457EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_SHUTTLE
1458CROSS_COMPILE := arm-eabi-
1459KSRC := $(shell pwd)/../../../Android/kernel
1460ARCH := arm
1461endif
1462
1463ifeq ($(CONFIG_PLATFORM_MSTAR_TITANIA12), y)
1464EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR -DCONFIG_PLATFORM_MSTAR_TITANIA12
1465ARCH:=mips
1466CROSS_COMPILE:= /usr/src/Mstar_kernel/mips-4.3/bin/mips-linux-gnu-
1467KVER:= 2.6.28.9
1468KSRC:= /usr/src/Mstar_kernel/2.6.28.9/
1469endif
1470
1471ifeq ($(CONFIG_PLATFORM_MSTAR), y)
1472EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1473EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1474EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1475EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR
1476EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR_HIGH
1477ifeq ($(CONFIG_USB_HCI), y)
1478EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX -DCONFIG_FIX_NR_BULKIN_BUFFER
1479endif
1480ARCH:=arm
1481CROSS_COMPILE:= /usr/src/bin/arm-none-linux-gnueabi-
1482KVER:= 3.1.10
1483KSRC:= /usr/src/Mstar_kernel/3.1.10/
1484endif
1485
1486ifeq ($(CONFIG_PLATFORM_ANDROID_X86), y)
1487EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1488SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1489ARCH := $(SUBARCH)
1490CROSS_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-
1491KSRC := /media/DATA-2/android-x86/ics-x86_20120130/out/target/product/generic_x86/obj/kernel
1492MODULE_NAME :=wlan
1493endif
1494
1495ifeq ($(CONFIG_PLATFORM_ANDROID_INTEL_X86), y)
1496EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID_INTEL_X86
1497EXTRA_CFLAGS += -DCONFIG_PLATFORM_INTEL_BYT
1498EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID
1499EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1500EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1501EXTRA_CFLAGS += -DCONFIG_SKIP_SIGNAL_SCALE_MAPPING
1502ifeq ($(CONFIG_SDIO_HCI), y)
1503EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1504endif
1505endif
1506
1507ifeq ($(CONFIG_PLATFORM_JB_X86), y)
1508EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1509EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1510EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1511SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1512ARCH := $(SUBARCH)
1513CROSS_COMPILE := /home/android_sdk/android-x86_JB/prebuilts/gcc/linux-x86/x86/i686-linux-android-4.7/bin/i686-linux-android-
1514KSRC := /home/android_sdk/android-x86_JB/out/target/product/x86/obj/kernel/
1515MODULE_NAME :=wlan
1516endif
1517
1518ifeq ($(CONFIG_PLATFORM_ARM_PXA2XX), y)
1519EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1520ARCH := arm
1521CROSS_COMPILE := arm-none-linux-gnueabi-
1522KVER  := 2.6.34.1
1523KSRC ?= /usr/src/linux-2.6.34.1
1524endif
1525
1526ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
1527EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1528ARCH := arm
1529CROSS_COMPILE := arm-linux-
1530KVER  := 2.6.24.7_$(ARCH)
1531KSRC := /usr/src/kernels/linux-$(KVER)
1532endif
1533
1534ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
1535EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1536ARCH := arm
1537CROSS_COMPILE := arm-none-linux-gnueabi-
1538KVER  := 2.6.34.1
1539KSRC ?= /usr/src/linux-2.6.34.1
1540endif
1541
1542ifeq ($(CONFIG_PLATFORM_RTD2880B), y)
1543EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTD2880B
1544ARCH:=
1545CROSS_COMPILE:=
1546KVER:=
1547KSRC:=
1548endif
1549
1550ifeq ($(CONFIG_PLATFORM_MIPS_RMI), y)
1551EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1552ARCH:=mips
1553CROSS_COMPILE:=mipsisa32r2-uclibc-
1554KVER:=
1555KSRC:= /root/work/kernel_realtek
1556endif
1557
1558ifeq ($(CONFIG_PLATFORM_MIPS_PLM), y)
1559EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1560ARCH:=mips
1561CROSS_COMPILE:=mipsisa32r2-uclibc-
1562KVER:=
1563KSRC:= /root/work/kernel_realtek
1564endif
1565
1566ifeq ($(CONFIG_PLATFORM_MSTAR389), y)
1567EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR389
1568ARCH:=mips
1569CROSS_COMPILE:= mips-linux-gnu-
1570KVER:= 2.6.28.10
1571KSRC:= /home/mstar/mstar_linux/2.6.28.9/
1572endif
1573
1574ifeq ($(CONFIG_PLATFORM_MIPS_AR9132), y)
1575EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1576ARCH := mips
1577CROSS_COMPILE := mips-openwrt-linux-
1578KSRC := /home/alex/test_openwrt/tmp/linux-2.6.30.9
1579endif
1580
1581ifeq ($(CONFIG_PLATFORM_DMP_PHILIPS), y)
1582EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM
1583ARCH := mips
1584#CROSS_COMPILE:=/usr/local/msdk-4.3.6-mips-EL-2.6.12.6-0.9.30.3/bin/mipsel-linux-
1585CROSS_COMPILE:=/usr/local/toolchain_mipsel/bin/mipsel-linux-
1586KSRC ?=/usr/local/Jupiter/linux-2.6.12
1587endif
1588
1589ifeq ($(CONFIG_PLATFORM_RTK_DMP), y)
1590EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM  -DCONFIG_WIRELESS_EXT
1591EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1592ifeq ($(CONFIG_USB_HCI), y)
1593_PLATFORM_FILES += platform/platform_RTK_DMP_usb.o
1594endif
1595ARCH:=mips
1596CROSS_COMPILE:=mipsel-linux-
1597KVER:=
1598KSRC ?= /usr/src/DMP_Kernel/jupiter/linux-2.6.12
1599endif
1600
1601ifeq ($(CONFIG_PLATFORM_MT53XX), y)
1602EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MT53XX
1603ARCH:= arm
1604CROSS_COMPILE:= arm11_mtk_le-
1605KVER:= 2.6.27
1606KSRC?= /proj/mtk00802/BD_Compare/BDP/Dev/BDP_V301/BDP_Linux/linux-2.6.27
1607endif
1608
1609ifeq ($(CONFIG_PLATFORM_ARM_MX51_241H), y)
1610EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_WISTRON_PLATFORM
1611ARCH := arm
1612CROSS_COMPILE := /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
1613KVER  := 2.6.31
1614KSRC ?= /lib/modules/2.6.31-770-g0e46b52/source
1615endif
1616
1617ifeq ($(CONFIG_PLATFORM_FS_MX61), y)
1618EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1619ARCH := arm
1620CROSS_COMPILE := /home/share/CusEnv/FreeScale/arm-eabi-4.4.3/bin/arm-eabi-
1621KSRC ?= /home/share/CusEnv/FreeScale/FS_kernel_env
1622endif
1623
1624
1625
1626ifeq ($(CONFIG_PLATFORM_ACTIONS_ATJ227X), y)
1627EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATJ227X
1628ARCH := mips
1629CROSS_COMPILE := /home/cnsd4/project/actions/tools-2.6.27/bin/mipsel-linux-gnu-
1630KVER  := 2.6.27
1631KSRC := /home/cnsd4/project/actions/linux-2.6.27.28
1632endif
1633
1634ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
1635EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_TI_DM365
1636EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
1637EXTRA_CFLAGS += -DCONFIG_SINGLE_XMIT_BUF -DCONFIG_SINGLE_RECV_BUF
1638ARCH := arm
1639#CROSS_COMPILE := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-
1640#KSRC := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci/linux-dm365
1641CROSS_COMPILE := /opt/montavista/pro5.0/devkit/arm/v5t_le/bin/arm-linux-
1642KSRC:= /home/vivotek/lsp/DM365/kernel_platform/kernel/linux-2.6.18
1643KERNELOUTPUT := ${PRODUCTDIR}/tmp
1644KVER  := 2.6.18
1645endif
1646
1647ifeq ($(CONFIG_PLATFORM_MOZART), y)
1648EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MOZART
1649ARCH := arm
1650CROSS_COMPILE := /home/vivotek/lsp/mozart3v2/Mozart3e_Toolchain/build_arm_nofpu/usr/bin/arm-linux-
1651KVER  := $(shell uname -r)
1652KSRC:= /opt/Vivotek/lsp/mozart3v2/kernel_platform/kernel/mozart_kernel-1.17
1653KERNELOUTPUT := /home/pink/sample/ODM/IP8136W-VINT/tmp/kernel
1654endif
1655
1656ifeq ($(CONFIG_PLATFORM_TEGRA3_CARDHU), y)
1657EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1658# default setting for Android 4.1, 4.2
1659EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1660EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1661EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1662ARCH := arm
1663CROSS_COMPILE := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1664KSRC := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/out/target/product/cardhu/obj/KERNEL
1665MODULE_NAME := wlan
1666endif
1667
1668ifeq ($(CONFIG_PLATFORM_TEGRA4_DALMORE), y)
1669EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1670# default setting for Android 4.1, 4.2
1671EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1672EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1673EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1674ARCH := arm
1675CROSS_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-
1676KSRC := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/out/target/product/dalmore/obj/KERNEL
1677MODULE_NAME := wlan
1678endif
1679
1680ifeq ($(CONFIG_PLATFORM_ARM_TCC8900), y)
1681EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1682ARCH := arm
1683CROSS_COMPILE := /home/android_sdk/Telechips/SDK_2304_20110613/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1684KSRC := /home/android_sdk/Telechips/SDK_2304_20110613/kernel
1685MODULE_NAME := wlan
1686endif
1687
1688ifeq ($(CONFIG_PLATFORM_ARM_TCC8920), y)
1689EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1690ARCH := arm
1691CROSS_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-
1692KSRC := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/kernel
1693MODULE_NAME := wlan
1694endif
1695
1696ifeq ($(CONFIG_PLATFORM_ARM_TCC8920_JB42), y)
1697EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1698# default setting for Android 4.1, 4.2
1699EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1700EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1701ARCH := arm
1702CROSS_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-
1703KSRC := /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/kernel
1704MODULE_NAME := wlan
1705endif
1706
1707ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
1708EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1709ARCH := arm
1710CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
1711KSRC := /usr/src/release_fae_version/kernel25_A7_281x
1712MODULE_NAME := wlan
1713endif
1714
1715ifeq ($(CONFIG_PLATFORM_ARM_RK3188), y)
1716EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1717# default setting for Android 4.1, 4.2, 4.3, 4.4
1718EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1719EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1720ifeq ($(CONFIG_SDIO_HCI), y)
1721EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1722endif
1723# default setting for Special function
1724ARCH := arm
1725CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3188/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1726KSRC := /home/android_sdk/Rockchip/Rk3188/kernel
1727MODULE_NAME := RTL8821CS
1728endif
1729
1730ifeq ($(CONFIG_PLATFORM_ARM_RK3066), y)
1731EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_RK3066
1732EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1733EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1734EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1735EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
1736ifeq ($(CONFIG_SDIO_HCI), y)
1737EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1738endif
1739EXTRA_CFLAGS += -fno-pic
1740ARCH := arm
1741CROSS_COMPILE := /home/android_sdk/Rockchip/rk3066_20130607/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1742#CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3066sdk/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1743KSRC := /home/android_sdk/Rockchip/Rk3066sdk/kernel
1744MODULE_NAME :=wlan
1745endif
1746
1747ifeq ($(CONFIG_PLATFORM_ARM_URBETTER), y)
1748EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1749ARCH := arm
1750CROSS_COMPILE := /media/DATA-1/urbetter/arm-2009q3/bin/arm-none-linux-gnueabi-
1751KSRC := /media/DATA-1/urbetter/ics-urbetter/kernel
1752MODULE_NAME := wlan
1753endif
1754
1755ifeq ($(CONFIG_PLATFORM_ARM_TI_PANDA), y)
1756EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1757ARCH := arm
1758#CROSS_COMPILE := /media/DATA-1/aosp/ics-aosp_20111227/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1759#KSRC := /media/DATA-1/aosp/android-omap-panda-3.0_20120104
1760CROSS_COMPILE := /media/DATA-1/android-4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1761KSRC := /media/DATA-1/android-4.0/panda_kernel/omap
1762MODULE_NAME := wlan
1763endif
1764
1765ifeq ($(CONFIG_PLATFORM_MIPS_JZ4760), y)
1766EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_MINIMAL_MEMORY_USAGE
1767ARCH ?= mips
1768CROSS_COMPILE ?= /mnt/sdb5/Ingenic/Umido/mips-4.3/bin/mips-linux-gnu-
1769KSRC ?= /mnt/sdb5/Ingenic/Umido/kernel
1770endif
1771
1772ifeq ($(CONFIG_PLATFORM_SZEBOOK), y)
1773EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1774ARCH:=arm
1775CROSS_COMPILE:=/opt/crosstool2/bin/armeb-unknown-linux-gnueabi-
1776KVER:= 2.6.31.6
1777KSRC:= ../code/linux-2.6.31.6-2020/
1778endif
1779
1780ifeq ($(CONFIG_PLATFORM_ARM_SUNxI), y)
1781EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1782EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUNxI
1783# default setting for Android 4.1, 4.2
1784EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1785EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1786
1787EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1788ifeq ($(CONFIG_USB_HCI), y)
1789EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1790_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1791endif
1792ifeq ($(CONFIG_SDIO_HCI), y)
1793# default setting for A10-EVB mmc0
1794#EXTRA_CFLAGS += -DCONFIG_WITS_EVB_V13
1795_PLATFORM_FILES += platform/platform_ARM_SUNxI_sdio.o
1796endif
1797
1798ARCH := arm
1799#CROSS_COMPILE := arm-none-linux-gnueabi-
1800CROSS_COMPILE=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/buildroot/output/external-toolchain/bin/arm-none-linux-gnueabi-
1801KVER  := 3.0.8
1802#KSRC:= ../lichee/linux-3.0/
1803KSRC=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/linux-3.0
1804endif
1805
1806ifeq ($(CONFIG_PLATFORM_ARM_SUN6I), y)
1807EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1808EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN6I
1809EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1810# default setting for Android 4.1, 4.2, 4.3, 4.4
1811EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1812EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1813EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1814
1815EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1816ifeq ($(CONFIG_USB_HCI), y)
1817EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1818_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1819endif
1820ifeq ($(CONFIG_SDIO_HCI), y)
1821# default setting for A31-EVB mmc0
1822EXTRA_CFLAGS += -DCONFIG_A31_EVB
1823_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1824endif
1825
1826ARCH := arm
1827#Android-JB42
1828#CROSS_COMPILE := /home/android_sdk/Allwinner/a31/android-jb42/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1829#KSRC :=/home/android_sdk/Allwinner/a31/android-jb42/lichee/linux-3.3
1830#ifeq ($(CONFIG_USB_HCI), y)
1831#MODULE_NAME := 8188eu_sw
1832#endif
1833# ==== Cross compile setting for kitkat-a3x_v4.5 =====
1834CROSS_COMPILE := /home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1835KSRC :=/home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/linux-3.3
1836endif
1837
1838ifeq ($(CONFIG_PLATFORM_ARM_SUN7I), y)
1839EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1840EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
1841EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1842# default setting for Android 4.1, 4.2, 4.3, 4.4
1843EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1844EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1845EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1846
1847EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1848ifeq ($(CONFIG_USB_HCI), y)
1849EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1850_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1851endif
1852ifeq ($(CONFIG_SDIO_HCI), y)
1853_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1854endif
1855
1856ARCH := arm
1857# ===Cross compile setting for Android 4.2 SDK ===
1858#CROSS_COMPILE := /home/android_sdk/Allwinner/a20_evb/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1859#KSRC := /home/android_sdk/Allwinner/a20_evb/lichee/linux-3.3
1860# ==== Cross compile setting for Android 4.3 SDK =====
1861#CROSS_COMPILE := /home/android_sdk/Allwinner/a20/android-jb43/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1862#KSRC := /home/android_sdk/Allwinner/a20/android-jb43/lichee/linux-3.4
1863# ==== Cross compile setting for kitkat-a20_v4.4 =====
1864CROSS_COMPILE := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1865KSRC := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/linux-3.4
1866endif
1867
1868ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W3P1), y)
1869EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1870EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1871EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W3P1
1872EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1873# default setting for Android 4.1, 4.2
1874EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1875EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1876
1877EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1878ifeq ($(CONFIG_USB_HCI), y)
1879EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1880_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1881endif
1882ifeq ($(CONFIG_SDIO_HCI), y)
1883_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1884endif
1885
1886ARCH := arm
1887# ===Cross compile setting for Android 4.2 SDK ===
1888#CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-jb42/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1889#KSRC :=/home/android_sdk/Allwinner/a23/android-jb42/lichee/linux-3.4
1890# ===Cross compile setting for Android 4.4 SDK ===
1891CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-kk44/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1892KSRC :=/home/android_sdk/Allwinner/a23/android-kk44/lichee/linux-3.4
1893endif
1894
1895ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W5P1), y)
1896EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1897EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1898EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W5P1
1899EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1900# default setting for Android 4.1, 4.2
1901EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1902EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1903
1904# Enable this for Android 5.0
1905EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1906
1907EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1908ifeq ($(CONFIG_USB_HCI), y)
1909EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1910_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1911endif
1912ifeq ($(CONFIG_SDIO_HCI), y)
1913_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1914endif
1915
1916ARCH := arm
1917# ===Cross compile setting for Android L SDK ===
1918CROSS_COMPILE := /home/android_sdk/Allwinner/a33/android-L/lichee/out/sun8iw5p1/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1919KSRC :=/home/android_sdk/Allwinner/a33/android-L/lichee/linux-3.4
1920endif
1921
1922ifeq ($(CONFIG_PLATFORM_ACTIONS_ATV5201), y)
1923EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATV5201
1924EXTRA_CFLAGS += -DCONFIG_SDIO_DISABLE_RXFIFO_POLLING_LOOP
1925ARCH := mips
1926CROSS_COMPILE := mipsel-linux-gnu-
1927KVER  := $(KERNEL_VER)
1928KSRC:= $(CFGDIR)/../../kernel/linux-$(KERNEL_VER)
1929endif
1930
1931ifeq ($(CONFIG_PLATFORM_ARM_RTD299X), y)
1932EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_RTD299X
1933EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1934EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1935EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1936ifeq ($(CONFIG_ANDROID), y)
1937# Enable this for Android 5.0
1938EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1939endif
1940#ARCH, CROSS_COMPILE, KSRC,and  MODDESTDIR are provided by external makefile
1941INSTALL_PREFIX :=
1942MODULE_NAME := wlan
1943endif
1944
1945ifeq ($(CONFIG_PLATFORM_ARM_RTD299X_LG), y)
1946EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1947EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1948EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1949EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
1950EXTRA_CFLAGS += -DCONFIG_IFACE_NUMBER=3
1951#EXTRA_CFLAGS += -DCONFIG_FIX_HWPORT
1952EXTRA_CFLAGS += -DLGE_PRIVATE
1953EXTRA_CFLAGS += -DPURE_SUPPLICANT
1954EXTRA_CFLAGS += -DCONFIG_CUSTOMIZED_COUNTRY_CHPLAN_MAP -DCONFIG_RTW_IOCTL_SET_COUNTRY
1955EXTRA_CFLAGS += -DDBG_RX_DFRAME_RAW_DATA
1956EXTRA_CFLAGS += -DRTW_REDUCE_SCAN_SWITCH_CH_TIME
1957ARCH ?= arm
1958KVER ?=
1959
1960ifneq ($(PLATFORM), WEBOS)
1961$(info PLATFORM is empty)
1962CROSS_COMPILE ?= /mnt/newdisk/LGE/arm-lg115x-linux-gnueabi-4.8-2016.03-x86_64/bin/arm-lg115x-linux-gnueabi-
1963KSRC ?= /mnt/newdisk/LGE/linux-rockhopper_k3lp_drd4tv_423
1964endif
1965
1966CROSS_COMPILE ?=
1967KSRC ?= $(LINUX_SRC)
1968INSTALL_PREFIX ?=
1969endif
1970
1971ifeq ($(CONFIG_PLATFORM_HISILICON), y)
1972EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_HISILICON
1973ifeq ($(SUPPORT_CONCURRENT),y)
1974EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1975endif
1976EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1977ARCH := arm
1978ifeq ($(CROSS_COMPILE),)
1979       CROSS_COMPILE = arm-hisiv200-linux-
1980endif
1981MODULE_NAME := rtl8192eu
1982ifeq ($(KSRC),)
1983       KSRC := ../../../../../../kernel/linux-3.4.y
1984endif
1985endif
1986
1987ifeq ($(CONFIG_PLATFORM_HISILICON_HI3798), y)
1988EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON
1989EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON_HI3798
1990#EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON_HI3798_MV200_HDMI_DONGLE
1991EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1992# default setting for Android
1993EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1994EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
1995EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
1996# default setting for Android 5.x and later
1997#EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1998
1999# If system could power on and recognize Wi-Fi SDIO automatically,
2000# platfrom operations are not necessary.
2001#ifeq ($(CONFIG_SDIO_HCI), y)
2002#EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2003#_PLATFORM_FILES += platform/platform_hisilicon_hi3798_sdio.o
2004#EXTRA_CFLAGS += -DCONFIG_HISI_SDIO_ID=1
2005#endif
2006
2007ARCH ?= arm
2008CROSS_COMPILE ?= /HiSTBAndroidV600R003C00SPC021_git_0512/device/hisilicon/bigfish/sdk/tools/linux/toolchains/arm-histbv310-linux/bin/arm-histbv310-linux-
2009ifndef KSRC
2010KSRC := /HiSTBAndroidV600R003C00SPC021_git_0512/device/hisilicon/bigfish/sdk/source/kernel/linux-3.18.y
2011KSRC += O=/HiSTBAndroidV600R003C00SPC021_git_0512/out/target/product/Hi3798MV200/obj/KERNEL_OBJ
2012endif
2013
2014ifeq ($(CONFIG_RTL8822B), y)
2015ifeq ($(CONFIG_SDIO_HCI), y)
2016CONFIG_RTL8822BS ?= m
2017USER_MODULE_NAME := rtl8822bs
2018endif
2019endif
2020
2021endif
2022
2023# Platform setting
2024ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_6820), y)
2025ifeq ($(CONFIG_ANDROID_2X), y)
2026EXTRA_CFLAGS += -DANDROID_2X
2027endif
2028EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
2029EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_6820
2030EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2031ifeq ($(RTL871X), rtl8188e)
2032EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
2033endif
2034ifeq ($(CONFIG_SDIO_HCI), y)
2035EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2036_PLATFORM_FILES += platform/platform_sprd_sdio.o
2037endif
2038endif
2039
2040ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_8810), y)
2041ifeq ($(CONFIG_ANDROID_2X), y)
2042EXTRA_CFLAGS += -DANDROID_2X
2043endif
2044EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
2045EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_8810
2046EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2047ifeq ($(RTL871X), rtl8188e)
2048EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
2049endif
2050ifeq ($(CONFIG_SDIO_HCI), y)
2051EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2052_PLATFORM_FILES += platform/platform_sprd_sdio.o
2053endif
2054endif
2055
2056ifeq ($(CONFIG_PLATFORM_ARM_WMT), y)
2057EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2058EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2059EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2060EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2061ifeq ($(CONFIG_SDIO_HCI), y)
2062_PLATFORM_FILES += platform/platform_ARM_WMT_sdio.o
2063endif
2064ARCH := arm
2065CROSS_COMPILE := /home/android_sdk/WonderMedia/wm8880-android4.4/toolchain/arm_201103_gcc4.5.2/mybin/arm_1103_le-
2066KSRC := /home/android_sdk/WonderMedia/wm8880-android4.4/kernel4.4/
2067MODULE_NAME :=8189es_kk
2068endif
2069
2070ifeq ($(CONFIG_PLATFORM_RTK119X), y)
2071EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2072#EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
2073EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2074# default setting for Android 4.1, 4.2
2075EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2076EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2077#EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
2078EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2079
2080#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2081ifeq ($(CONFIG_USB_HCI), y)
2082EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2083#_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
2084endif
2085ifeq ($(CONFIG_SDIO_HCI), y)
2086_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
2087endif
2088
2089ARCH := arm
2090
2091# ==== Cross compile setting for Android 4.4 SDK =====
2092#CROSS_COMPILE := arm-linux-gnueabihf-
2093KVER  := 3.10.24
2094#KSRC :=/home/android_sdk/Allwinner/a20/android-kitkat44/lichee/linux-3.4
2095CROSS_COMPILE := /home/realtek/software_phoenix/phoenix/toolchain/usr/local/arm-2013.11/bin/arm-linux-gnueabihf-
2096KSRC := /home/realtek/software_phoenix/linux-kernel
2097MODULE_NAME := 8192eu
2098
2099endif
2100
2101# Actions-Micro use this flag for DHC 1195 and DHC 1395
2102ifeq ($(CONFIG_PLATFORM_RTK119X_AM), y)
2103EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK119X_AM
2104EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2105EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2106EXTRA_CFLAGS += -DCONFIG_FULL_CH_IN_P2P_HANDSHAKE
2107EXTRA_CFLAGS += -DCONFIG_SEL_P2P_IFACE=2
2108EXTRA_CFLAGS += -DCONFIG_IFACE_NUMBER=3
2109EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2110
2111ifeq ($(CONFIG_USB_HCI), y)
2112EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2113endif
2114
2115ARCH := arm
2116
2117#CROSS_COMPILE := arm-linux-gnueabihf-
2118KVER  := 3.10.24
2119#KSRC :=
2120CROSS_COMPILE :=
2121endif
2122
2123ifeq ($(CONFIG_PLATFORM_RTK129X), y)
2124EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2125EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK129X
2126EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2127# default setting for Android 4.1, 4.2
2128EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2129EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2130#EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_QOS_OPTIMIZATION
2131EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2132# Enable this for Android 5.0
2133EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2134ifeq ($(CONFIG_RTL8821C)$(CONFIG_SDIO_HCI),yy)
2135EXTRA_CFLAGS += -DCONFIG_WAKEUP_GPIO_INPUT_MODE
2136EXTRA_CFLAGS += -DCONFIG_BT_WAKE_HST_OPEN_DRAIN
2137endif
2138EXTRA_CFLAGS += -Wno-error=date-time
2139# default setting for Android 7.0
2140ifeq ($(RTK_ANDROID_VERSION), nougat)
2141EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
2142endif
2143#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2144ifeq ($(CONFIG_USB_HCI), y)
2145EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2146endif
2147
2148ARCH := arm64
2149
2150# ==== Cross compile setting for Android 4.4 SDK =====
2151#CROSS_COMPILE := arm-linux-gnueabihf-
2152#KVER  := 4.1.10
2153#CROSS_COMPILE := $(CROSS)
2154#KSRC := $(LINUX_KERNEL_PATH)
2155CROSS_COMPILE := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/phoenix/toolchain/asdk64-4.9.4-a53-EL-3.10-g2.19-a64nt-160307/bin/asdk64-linux-
2156KSRC := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/linux-kernel
2157endif
2158
2159ifeq ($(CONFIG_PLATFORM_RTK1319), y)
2160EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK1319
2161EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2162EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2163# default setting for Android 4.1, 4.2
2164EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2165EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2166#EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_QOS_OPTIMIZATION
2167EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2168# Enable this for Android 5.0
2169EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2170ifeq ($(CONFIG_RTL8821C)$(CONFIG_SDIO_HCI),yy)
2171EXTRA_CFLAGS += -DCONFIG_WAKEUP_GPIO_INPUT_MODE
2172EXTRA_CFLAGS += -DCONFIG_BT_WAKE_HST_OPEN_DRAIN
2173endif
2174EXTRA_CFLAGS += -Wno-error=date-time
2175# default setting for Android 7.0
2176ifeq ($(RTK_ANDROID_VERSION), nougat)
2177EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
2178endif
2179#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2180ifeq ($(CONFIG_USB_HCI), y)
2181EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2182endif
2183
2184ARCH := arm64
2185
2186# ==== Cross compile setting for Android 4.4 SDK =====
2187#CROSS_COMPILE := arm-linux-gnueabihf-
2188#KVER  := 4.1.10
2189#CROSS_COMPILE := $(CROSS)
2190#KSRC := $(LINUX_KERNEL_PATH)
2191CROSS_COMPILE := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/phoenix/toolchain/asdk64-4.9.4-a53-EL-3.10-g2.19-a64nt-160307/bin/asdk64-linux-
2192KSRC := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/linux-kernel
2193endif
2194
2195ifeq ($(CONFIG_PLATFORM_RTK390X), y)
2196EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2197EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK390X
2198EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2199EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG
2200ifeq ($(CONFIG_USB_HCI), y)
2201EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2202endif
2203
2204ARCH:=rlx
2205
2206CROSS_COMPILE:=mips-linux-
2207KSRC:= /home/realtek/share/Develop/IPCAM_SDK/RealSil/rts3901_sdk_v1.2_vanilla/linux-3.10
2208
2209endif
2210
2211ifeq ($(CONFIG_PLATFORM_NOVATEK_NT72668), y)
2212EXTRA_CFLAGS += -DCONFIG_PLATFORM_NOVATEK_NT72668
2213EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2214EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2215EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2216EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
2217EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2218ARCH ?= arm
2219CROSS_COMPILE := arm-linux-gnueabihf-
2220KVER := 3.8.0
2221KSRC := /Custom/Novatek/TCL/linux-3.8_header
2222#KSRC := $(KERNELDIR)
2223endif
2224
2225ifeq ($(CONFIG_PLATFORM_ARM_TCC8930_JB42), y)
2226EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2227# default setting for Android 4.1, 4.2
2228EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2229EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2230ARCH := arm
2231CROSS_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-
2232KSRC := /home/android_sdk/Telechips/v13.05_r1-tcc-android-4.2.2_tcc893x-evm_build/kernel
2233MODULE_NAME := wlan
2234endif
2235
2236ifeq ($(CONFIG_PLATFORM_RTL8197D), y)
2237EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTL8197D
2238export DIR_LINUX=$(shell pwd)/../SDK/rlxlinux-sdk321-v50/linux-2.6.30
2239ARCH ?= rlx
2240CROSS_COMPILE:= $(DIR_LINUX)/../toolchain/rsdk-1.5.5-5281-EB-2.6.30-0.9.30.3-110714/bin/rsdk-linux-
2241KSRC := $(DIR_LINUX)
2242endif
2243
2244ifeq ($(CONFIG_PLATFORM_AML_S905), y)
2245EXTRA_CFLAGS += -DCONFIG_PLATFORM_AML_S905
2246EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -fno-pic
2247# default setting for Android
2248EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2249EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
2250EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
2251# default setting for Android 5.x and later
2252EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2253
2254ifeq ($(CONFIG_SDIO_HCI), y)
2255EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2256_PLATFORM_FILES += platform/platform_aml_s905_sdio.o
2257endif
2258
2259ARCH ?= arm64
2260CROSS_COMPILE ?= /4.4_S905L_8822bs_compile/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux/bin/aarch64-linux-gnu-
2261ifndef KSRC
2262KSRC := /4.4_S905L_8822bs_compile/common
2263# To locate output files in a separate directory.
2264KSRC += O=/4.4_S905L_8822bs_compile/KERNEL_OBJ
2265endif
2266
2267ifeq ($(CONFIG_RTL8822B), y)
2268ifeq ($(CONFIG_SDIO_HCI), y)
2269CONFIG_RTL8822BS ?= m
2270USER_MODULE_NAME := 8822bs
2271endif
2272endif
2273
2274endif
2275
2276ifeq ($(CONFIG_PLATFORM_ZTE_ZX296716), y)
2277EXTRA_CFLAGS += -Wno-error=date-time
2278EXTRA_CFLAGS += -DCONFIG_PLATFORM_ZTE_ZX296716
2279EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2280# default setting for Android
2281EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2282EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
2283EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
2284# default setting for Android 5.x and later
2285#EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2286
2287ifeq ($(CONFIG_SDIO_HCI), y)
2288# mark this temporarily
2289#EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2290#_PLATFORM_FILES += platform/platform_zte_zx296716_sdio.o
2291endif
2292
2293ARCH ?= arm64
2294CROSS_COMPILE ?=
2295KSRC ?=
2296
2297ifeq ($(CONFIG_RTL8822B), y)
2298ifeq ($(CONFIG_SDIO_HCI), y)
2299CONFIG_RTL8822BS ?= m
2300USER_MODULE_NAME := 8822bs
2301endif
2302endif
2303
2304endif
2305
2306########### CUSTOMER ################################
2307ifeq ($(CONFIG_CUSTOMER_HUAWEI_GENERAL), y)
2308CONFIG_CUSTOMER_HUAWEI = y
2309endif
2310
2311ifeq ($(CONFIG_CUSTOMER_HUAWEI), y)
2312EXTRA_CFLAGS += -DCONFIG_HUAWEI_PROC
2313endif
2314
2315CONFIG_PLATFORM_CMAP_INTFS = n
2316ifeq ($(CONFIG_PLATFORM_CMAP_INTFS), y)
2317PLATFORM_CMAP_INTFS_TYPE = 00
2318EXTRA_CFLAGS += -DCONFIG_PLATFORM_CMAP_INTFS -DCMAP_UNASSOC_METRICS_STA_MAX=32
2319_OS_INTFS_FILES += os_dep/linux/custom_multiap_intfs/custom_multiap_intfs.o
2320_PLATFORM_FILES += platform/custom_multiap_intfs_$(PLATFORM_CMAP_INTFS_TYPE).o
2321endif
2322
2323ifeq ($(CONFIG_MULTIDRV), y)
2324
2325ifeq ($(CONFIG_SDIO_HCI), y)
2326MODULE_NAME := rtw_sdio
2327endif
2328
2329ifeq ($(CONFIG_USB_HCI), y)
2330MODULE_NAME := rtw_usb
2331endif
2332
2333ifeq ($(CONFIG_PCI_HCI), y)
2334MODULE_NAME := rtw_pci
2335endif
2336
2337
2338endif
2339
2340USER_MODULE_NAME ?=
2341ifneq ($(USER_MODULE_NAME),)
2342MODULE_NAME := $(USER_MODULE_NAME)
2343endif
2344
2345ifneq ($(KERNELRELEASE),)
2346export CONFIG_RTL8821CS = m
2347
2348########### this part for *.mk ############################
2349include $(src)/hal/phydm/phydm.mk
2350
2351########### HAL_RTL8822B #################################
2352ifeq ($(CONFIG_RTL8822B), y)
2353include $(src)/rtl8822b.mk
2354endif
2355
2356########### HAL_RTL8821C #################################
2357ifeq ($(CONFIG_RTL8821C), y)
2358include $(src)/rtl8821c.mk
2359endif
2360
2361########### HAL_RTL8822C #################################
2362ifeq ($(CONFIG_RTL8822C), y)
2363include $(src)/rtl8822c.mk
2364endif
2365
2366########### HAL_RTL8814B #################################
2367ifeq ($(CONFIG_RTL8814B), y)
2368include $(src)/rtl8814b.mk
2369endif
2370
2371ifeq ($(CONFIG_RTL8814C), y)
2372EXTRA_CFLAGS += -DCONFIG_RTL8814C
2373endif
2374########### HAL_RTL8723F #################################
2375ifeq ($(CONFIG_RTL8723F), y)
2376include $(src)/rtl8723f.mk
2377endif
2378
2379rtk_core :=	core/rtw_cmd.o \
2380		core/rtw_security.o \
2381		core/rtw_debug.o \
2382		core/rtw_io.o \
2383		core/rtw_ioctl_query.o \
2384		core/rtw_ioctl_set.o \
2385		core/rtw_ieee80211.o \
2386		core/rtw_mlme.o \
2387		core/rtw_mlme_ext.o \
2388		core/rtw_mi.o \
2389		core/rtw_wlan_util.o \
2390		core/rtw_vht.o \
2391		core/rtw_pwrctrl.o \
2392		core/rtw_rf.o \
2393		core/rtw_chplan.o \
2394		core/monitor/rtw_radiotap.o \
2395		core/rtw_recv.o \
2396		core/rtw_sta_mgt.o \
2397		core/rtw_ap.o \
2398		core/wds/rtw_wds.o \
2399		core/mesh/rtw_mesh.o \
2400		core/mesh/rtw_mesh_pathtbl.o \
2401		core/mesh/rtw_mesh_hwmp.o \
2402		core/rtw_xmit.o	\
2403		core/rtw_p2p.o \
2404		core/rtw_rson.o \
2405		core/rtw_tdls.o \
2406		core/rtw_br_ext.o \
2407		core/rtw_iol.o \
2408		core/rtw_sreset.o \
2409		core/rtw_btcoex_wifionly.o \
2410		core/rtw_btcoex.o \
2411		core/rtw_beamforming.o \
2412		core/rtw_odm.o \
2413		core/rtw_rm.o \
2414		core/rtw_rm_fsm.o \
2415		core/rtw_ft.o \
2416		core/rtw_wnm.o \
2417		core/rtw_mbo.o \
2418		core/rtw_rm_util.o \
2419		core/efuse/rtw_efuse.o \
2420		core/rtw_roch.o
2421
2422ifeq ($(CONFIG_SDIO_HCI), y)
2423rtk_core += core/rtw_sdio.o
2424endif
2425
2426EXTRA_CFLAGS += -I$(src)/core/crypto
2427rtk_core += \
2428		core/crypto/aes-internal.o \
2429		core/crypto/aes-internal-enc.o \
2430		core/crypto/aes-gcm.o \
2431		core/crypto/aes-ccm.o \
2432		core/crypto/aes-omac1.o \
2433		core/crypto/ccmp.o \
2434		core/crypto/gcmp.o \
2435		core/crypto/aes-siv.o \
2436		core/crypto/aes-ctr.o \
2437		core/crypto/sha256-internal.o \
2438		core/crypto/sha256.o \
2439		core/crypto/sha256-prf.o \
2440		core/crypto/rtw_crypto_wrap.o \
2441		core/rtw_swcrypto.o
2442
2443$(MODULE_NAME)-y += $(rtk_core)
2444
2445$(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o	\
2446					core/rtw_wapi_sms4.o
2447
2448$(MODULE_NAME)-y += $(_OS_INTFS_FILES)
2449$(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
2450$(MODULE_NAME)-y += $(_PHYDM_FILES)
2451$(MODULE_NAME)-y += $(_BTC_FILES)
2452$(MODULE_NAME)-y += $(_PLATFORM_FILES)
2453
2454$(MODULE_NAME)-$(CONFIG_MP_INCLUDED) += core/rtw_mp.o
2455
2456ifeq ($(CONFIG_RTL8723B), y)
2457$(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
2458endif
2459
2460obj-$(CONFIG_RTL8821CS) := $(MODULE_NAME).o
2461
2462else
2463
2464export CONFIG_RTL8821CS = m
2465
2466all: modules
2467
2468modules:
2469	$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd)  modules
2470
2471strip:
2472	$(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
2473
2474install:
2475	install -p -m 644 $(MODULE_NAME).ko  $(MODDESTDIR)
2476	/sbin/depmod -a ${KVER}
2477
2478uninstall:
2479	rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
2480	/sbin/depmod -a ${KVER}
2481
2482backup_rtlwifi:
2483	@echo "Making backup rtlwifi drivers"
2484ifneq (,$(wildcard $(STAGINGMODDIR)/rtl*))
2485	@tar cPf $(wildcard $(STAGINGMODDIR))/backup_rtlwifi_driver.tar $(wildcard $(STAGINGMODDIR)/rtl*)
2486	@rm -rf $(wildcard $(STAGINGMODDIR)/rtl*)
2487endif
2488ifneq (,$(wildcard $(MODDESTDIR)realtek))
2489	@tar cPf $(MODDESTDIR)backup_rtlwifi_driver.tar $(MODDESTDIR)realtek
2490	@rm -fr $(MODDESTDIR)realtek
2491endif
2492ifneq (,$(wildcard $(MODDESTDIR)rtl*))
2493	@tar cPf $(MODDESTDIR)../backup_rtlwifi_driver.tar $(wildcard $(MODDESTDIR)rtl*)
2494	@rm -fr $(wildcard $(MODDESTDIR)rtl*)
2495endif
2496	@/sbin/depmod -a ${KVER}
2497	@echo "Please reboot your system"
2498
2499restore_rtlwifi:
2500	@echo "Restoring backups"
2501ifneq (,$(wildcard $(STAGINGMODDIR)/backup_rtlwifi_driver.tar))
2502	@tar xPf $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
2503	@rm $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
2504endif
2505ifneq (,$(wildcard $(MODDESTDIR)backup_rtlwifi_driver.tar))
2506	@tar xPf $(MODDESTDIR)backup_rtlwifi_driver.tar
2507	@rm $(MODDESTDIR)backup_rtlwifi_driver.tar
2508endif
2509ifneq (,$(wildcard $(MODDESTDIR)../backup_rtlwifi_driver.tar))
2510	@tar xPf $(MODDESTDIR)../backup_rtlwifi_driver.tar
2511	@rm $(MODDESTDIR)../backup_rtlwifi_driver.tar
2512endif
2513	@/sbin/depmod -a ${KVER}
2514	@echo "Please reboot your system"
2515
2516config_r:
2517	@echo "make config"
2518	/bin/bash script/Configure script/config.in
2519
2520
2521.PHONY: modules clean
2522
2523clean:
2524	#$(MAKE) -C $(KSRC) M=$(shell pwd) clean
2525	cd hal ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko
2526	cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
2527	cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
2528	cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2529	cd core ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
2530	cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2531	cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2532	cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2533	cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2534	rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
2535	rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
2536	rm -fr .tmp_versions
2537endif
2538
2539