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