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