xref: /OK3568_Linux_fs/kernel/drivers/net/wireless/rockchip_wlan/rtl8821cs/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 = n
43CONFIG_RTL8821C = y
44CONFIG_RTL8710B = n
45CONFIG_RTL8192F = n
46CONFIG_RTL8822C = n
47CONFIG_RTL8814B = n
48CONFIG_RTL8723F = n
49######################### Interface ###########################
50CONFIG_USB_HCI = n
51CONFIG_PCI_HCI = n
52CONFIG_SDIO_HCI = y
53CONFIG_GSPI_HCI = n
54########################## Features ###########################
55CONFIG_AP_MODE = y
56CONFIG_P2P = y
57CONFIG_MP_INCLUDED = y
58CONFIG_POWER_SAVING = y
59CONFIG_IPS_MODE = default
60CONFIG_LPS_MODE = default
61CONFIG_USB_AUTOSUSPEND = n
62CONFIG_HW_PWRP_DETECTION = n
63CONFIG_BT_COEXIST = y
64CONFIG_WAPI_SUPPORT = n
65CONFIG_EFUSE_CONFIG_FILE = y
66CONFIG_EXT_CLK = n
67CONFIG_TRAFFIC_PROTECT = n
68CONFIG_LOAD_PHY_PARA_FROM_FILE = y
69CONFIG_TXPWR_BY_RATE = y
70CONFIG_TXPWR_BY_RATE_EN = y
71CONFIG_TXPWR_LIMIT = y
72CONFIG_TXPWR_LIMIT_EN = n
73CONFIG_RTW_CHPLAN = 0xFF
74CONFIG_RTW_ADAPTIVITY_EN = disable
75CONFIG_RTW_ADAPTIVITY_MODE = normal
76CONFIG_SIGNAL_SCALE_MAPPING = n
77CONFIG_80211W = y
78CONFIG_REDUCE_TX_CPU_LOADING = n
79CONFIG_BR_EXT = y
80CONFIG_TDLS = n
81CONFIG_WIFI_MONITOR = n
82CONFIG_MCC_MODE = n
83CONFIG_APPEND_VENDOR_IE_ENABLE = n
84CONFIG_RTW_NAPI = y
85CONFIG_RTW_GRO = y
86CONFIG_RTW_NETIF_SG = y
87CONFIG_RTW_IPCAM_APPLICATION = n
88CONFIG_RTW_REPEATER_SON = n
89CONFIG_ICMP_VOQ = n
90CONFIG_IP_R_MONITOR = n #arp VOQ and high rate
91# user priority mapping rule : tos, dscp
92CONFIG_RTW_UP_MAPPING_RULE = tos
93CONFIG_RTW_MBO = n
94
95########################## Android ###########################
96# CONFIG_RTW_ANDROID - 0: no Android, 4/5/6/7/8/9/10/11 : Android version
97CONFIG_RTW_ANDROID = 11
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 = 2
108
109# enable /proc/net/rtlxxxx/ debug interfaces
110CONFIG_PROC_DEBUG = y
111
112######################## Wake On Lan ##########################
113CONFIG_WOWLAN = y
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 = y
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=\"/vendor/etc/firmware/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
1167endif
1168
1169ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), normal)
1170EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=0
1171else ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), carrier_sense)
1172EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=1
1173endif
1174
1175ifeq ($(CONFIG_SIGNAL_SCALE_MAPPING), y)
1176EXTRA_CFLAGS += -DCONFIG_SIGNAL_SCALE_MAPPING
1177endif
1178
1179ifeq ($(CONFIG_80211W), y)
1180EXTRA_CFLAGS += -DCONFIG_IEEE80211W
1181endif
1182
1183ifeq ($(CONFIG_WOWLAN), y)
1184EXTRA_CFLAGS += -DCONFIG_WOWLAN -DRTW_WAKEUP_EVENT=$(CONFIG_WAKEUP_TYPE)
1185EXTRA_CFLAGS += -DRTW_SUSPEND_TYPE=$(CONFIG_SUSPEND_TYPE)
1186ifeq ($(CONFIG_WOW_STA_MIX), y)
1187EXTRA_CFLAGS += -DRTW_WOW_STA_MIX
1188endif
1189ifeq ($(CONFIG_SDIO_HCI), y)
1190EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1191endif
1192endif
1193
1194ifeq ($(CONFIG_AP_WOWLAN), y)
1195EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN
1196ifeq ($(CONFIG_AP_MODE), n)
1197EXTRA_CFLAGS += -DCONFIG_AP_MODE
1198endif
1199ifeq ($(CONFIG_SDIO_HCI), y)
1200EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1201endif
1202endif
1203
1204ifeq ($(CONFIG_LAYER2_ROAMING), y)
1205EXTRA_CFLAGS += -DCONFIG_LAYER2_ROAMING -DCONFIG_ROAMING_FLAG=$(CONFIG_ROAMING_FLAG)
1206endif
1207
1208ifeq ($(CONFIG_PNO_SUPPORT), y)
1209EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT
1210ifeq ($(CONFIG_PNO_SET_DEBUG), y)
1211EXTRA_CFLAGS += -DCONFIG_PNO_SET_DEBUG
1212endif
1213endif
1214
1215ifeq ($(CONFIG_GPIO_WAKEUP), y)
1216EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP
1217ifeq ($(CONFIG_ONE_PIN_GPIO), y)
1218EXTRA_CFLAGS += -DCONFIG_RTW_ONE_PIN_GPIO
1219endif
1220ifeq ($(CONFIG_HIGH_ACTIVE_DEV2HST), y)
1221EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=1
1222else
1223EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=0
1224endif
1225endif
1226
1227ifeq ($(CONFIG_HIGH_ACTIVE_HST2DEV), y)
1228EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=1
1229else
1230EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=0
1231endif
1232
1233ifneq ($(CONFIG_WAKEUP_GPIO_IDX), default)
1234EXTRA_CFLAGS += -DWAKEUP_GPIO_IDX=$(CONFIG_WAKEUP_GPIO_IDX)
1235endif
1236
1237ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y)
1238ifeq ($(CONFIG_SDIO_HCI), y)
1239EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
1240endif
1241endif
1242
1243ifeq ($(CONFIG_REDUCE_TX_CPU_LOADING), y)
1244EXTRA_CFLAGS += -DCONFIG_REDUCE_TX_CPU_LOADING
1245endif
1246
1247ifeq ($(CONFIG_BR_EXT), y)
1248BR_NAME = br0
1249EXTRA_CFLAGS += -DCONFIG_BR_EXT
1250EXTRA_CFLAGS += '-DCONFIG_BR_EXT_BRNAME="'$(BR_NAME)'"'
1251endif
1252
1253
1254ifeq ($(CONFIG_TDLS), y)
1255EXTRA_CFLAGS += -DCONFIG_TDLS
1256endif
1257
1258ifeq ($(CONFIG_WIFI_MONITOR), y)
1259EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
1260endif
1261
1262ifeq ($(CONFIG_MCC_MODE), y)
1263EXTRA_CFLAGS += -DCONFIG_MCC_MODE
1264endif
1265
1266ifeq ($(CONFIG_RTW_NAPI), y)
1267EXTRA_CFLAGS += -DCONFIG_RTW_NAPI
1268endif
1269
1270ifeq ($(CONFIG_RTW_GRO), y)
1271EXTRA_CFLAGS += -DCONFIG_RTW_GRO
1272endif
1273
1274ifeq ($(CONFIG_RTW_REPEATER_SON), y)
1275EXTRA_CFLAGS += -DCONFIG_RTW_REPEATER_SON
1276endif
1277
1278ifeq ($(CONFIG_RTW_IPCAM_APPLICATION), y)
1279EXTRA_CFLAGS += -DCONFIG_RTW_IPCAM_APPLICATION
1280ifeq ($(CONFIG_WIFI_MONITOR), n)
1281EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
1282endif
1283endif
1284
1285ifeq ($(CONFIG_RTW_NETIF_SG), y)
1286EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG
1287endif
1288
1289ifeq ($(CONFIG_ICMP_VOQ), y)
1290EXTRA_CFLAGS += -DCONFIG_ICMP_VOQ
1291endif
1292
1293ifeq ($(CONFIG_IP_R_MONITOR), y)
1294EXTRA_CFLAGS += -DCONFIG_IP_R_MONITOR
1295endif
1296
1297ifeq ($(CONFIG_MP_VHT_HW_TX_MODE), y)
1298EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
1299ifeq ($(CONFIG_PLATFORM_I386_PC), y)
1300## For I386 X86 ToolChain use Hardware FLOATING
1301EXTRA_CFLAGS += -mhard-float
1302else
1303## For ARM ToolChain use Hardware FLOATING
1304EXTRA_CFLAGS += -mfloat-abi=hard
1305endif
1306endif
1307
1308ifeq ($(CONFIG_APPEND_VENDOR_IE_ENABLE), y)
1309EXTRA_CFLAGS += -DCONFIG_APPEND_VENDOR_IE_ENABLE
1310endif
1311
1312ifeq ($(CONFIG_RTW_DEBUG), y)
1313EXTRA_CFLAGS += -DCONFIG_RTW_DEBUG
1314EXTRA_CFLAGS += -DRTW_LOG_LEVEL=$(CONFIG_RTW_LOG_LEVEL)
1315endif
1316
1317ifeq ($(CONFIG_PROC_DEBUG), y)
1318EXTRA_CFLAGS += -DCONFIG_PROC_DEBUG
1319endif
1320
1321ifeq ($(CONFIG_RTW_UP_MAPPING_RULE), dscp)
1322EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=1
1323else
1324EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=0
1325endif
1326
1327EXTRA_CFLAGS += -DDM_ODM_SUPPORT_TYPE=0x04
1328
1329ifeq ($(CONFIG_RTW_MBO), y)
1330EXTRA_CFLAGS += -DCONFIG_RTW_MBO -DCONFIG_RTW_80211K -DCONFIG_RTW_WNM -DCONFIG_RTW_BTM_ROAM
1331EXTRA_CFLAGS += -DCONFIG_RTW_80211R
1332endif
1333
1334ifeq ($(CONFIG_PLATFORM_I386_PC), y)
1335EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1336EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1337
1338SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1339ARCH ?= $(SUBARCH)
1340CROSS_COMPILE ?=
1341KVER  := $(shell uname -r)
1342KSRC := /lib/modules/$(KVER)/build
1343MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
1344INSTALL_PREFIX :=
1345STAGINGMODDIR := /lib/modules/$(KVER)/kernel/drivers/staging
1346endif
1347
1348ifeq ($(CONFIG_PLATFORM_NV_TK1), y)
1349EXTRA_CFLAGS += -DCONFIG_PLATFORM_NV_TK1
1350EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1351# default setting for Android 4.1, 4.2
1352EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1353EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1354EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_PLATFORM_ANDROID
1355# Enable this for Android 5.0
1356EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1357EXTRA_CFLAGS += -DRTW_VENDOR_EXT_SUPPORT
1358EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1359ARCH ?= arm
1360
1361CROSS_COMPILE := /mnt/newdisk/android_sdk/nvidia_tk1/android_L/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-
1362KSRC :=/mnt/newdisk/android_sdk/nvidia_tk1/android_L/out/target/product/shieldtablet/obj/KERNEL/
1363MODULE_NAME = wlan
1364endif
1365
1366ifeq ($(CONFIG_PLATFORM_NV_TK1_UBUNTU), y)
1367EXTRA_CFLAGS += -DCONFIG_PLATFORM_NV_TK1
1368EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1369EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1370
1371ARCH ?= arm
1372
1373CROSS_COMPILE ?=
1374KVER := $(shell uname -r)
1375KSRC := /lib/modules/$(KVER)/build
1376MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
1377INSTALL_PREFIX :=
1378endif
1379
1380ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM702X), y)
1381EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ACTIONS_ATM702X
1382#ARCH := arm
1383ARCH := $(R_ARCH)
1384#CROSS_COMPILE := arm-none-linux-gnueabi-
1385CROSS_COMPILE := $(R_CROSS_COMPILE)
1386KVER:= 3.4.0
1387#KSRC := ../../../../build/out/kernel
1388KSRC := $(KERNEL_BUILD_PATH)
1389MODULE_NAME :=wlan
1390endif
1391
1392
1393ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM705X), y)
1394EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1395#EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1396# default setting for Android 4.1, 4.2, 4.3, 4.4
1397EXTRA_CFLAGS += -DCONFIG_PLATFORM_ACTIONS_ATM705X
1398EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1399EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1400
1401# Enable this for Android 5.0
1402EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1403
1404ifeq ($(CONFIG_SDIO_HCI), y)
1405EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1406_PLATFORM_FILES += platform/platform_arm_act_sdio.o
1407endif
1408
1409ARCH := arm
1410CROSS_COMPILE := /opt/arm-2011.09/bin/arm-none-linux-gnueabi-
1411KSRC := /home/android_sdk/Action-semi/705a_android_L/android/kernel
1412endif
1413
1414ifeq ($(CONFIG_PLATFORM_ARM_SUN50IW1P1), y)
1415EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1416EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN50IW1P1
1417EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1418# default setting for Android 4.1, 4.2
1419EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1420EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1421EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1422EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1423
1424# Enable this for Android 5.0
1425EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1426
1427ifeq ($(CONFIG_USB_HCI), y)
1428EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1429_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1430endif
1431ifeq ($(CONFIG_SDIO_HCI), y)
1432_PLATFORM_FILES += platform/platform_ARM_SUN50IW1P1_sdio.o
1433endif
1434
1435ARCH := arm64
1436# ===Cross compile setting for Android 5.1(64) SDK ===
1437CROSS_COMPILE := /home/android_sdk/Allwinner/a64/android-51/lichee/out/sun50iw1p1/android/common/buildroot/external-toolchain/bin/aarch64-linux-gnu-
1438KSRC :=/home/android_sdk/Allwinner/a64/android-51/lichee/linux-3.10/
1439endif
1440
1441ifeq ($(CONFIG_PLATFORM_TI_AM3517), y)
1442EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_SHUTTLE
1443CROSS_COMPILE := arm-eabi-
1444KSRC := $(shell pwd)/../../../Android/kernel
1445ARCH := arm
1446endif
1447
1448ifeq ($(CONFIG_PLATFORM_MSTAR_TITANIA12), y)
1449EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR -DCONFIG_PLATFORM_MSTAR_TITANIA12
1450ARCH:=mips
1451CROSS_COMPILE:= /usr/src/Mstar_kernel/mips-4.3/bin/mips-linux-gnu-
1452KVER:= 2.6.28.9
1453KSRC:= /usr/src/Mstar_kernel/2.6.28.9/
1454endif
1455
1456ifeq ($(CONFIG_PLATFORM_MSTAR), y)
1457EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1458EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1459EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1460EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR
1461EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR_HIGH
1462ifeq ($(CONFIG_USB_HCI), y)
1463EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX -DCONFIG_FIX_NR_BULKIN_BUFFER
1464endif
1465ARCH:=arm
1466CROSS_COMPILE:= /usr/src/bin/arm-none-linux-gnueabi-
1467KVER:= 3.1.10
1468KSRC:= /usr/src/Mstar_kernel/3.1.10/
1469endif
1470
1471ifeq ($(CONFIG_PLATFORM_ANDROID_X86), y)
1472EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1473SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1474ARCH := $(SUBARCH)
1475CROSS_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-
1476KSRC := /media/DATA-2/android-x86/ics-x86_20120130/out/target/product/generic_x86/obj/kernel
1477MODULE_NAME :=wlan
1478endif
1479
1480ifeq ($(CONFIG_PLATFORM_ANDROID_INTEL_X86), y)
1481EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID_INTEL_X86
1482EXTRA_CFLAGS += -DCONFIG_PLATFORM_INTEL_BYT
1483EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID
1484EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1485EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1486EXTRA_CFLAGS += -DCONFIG_SKIP_SIGNAL_SCALE_MAPPING
1487ifeq ($(CONFIG_SDIO_HCI), y)
1488EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1489endif
1490endif
1491
1492ifeq ($(CONFIG_PLATFORM_JB_X86), y)
1493EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1494EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1495EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1496SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
1497ARCH := $(SUBARCH)
1498CROSS_COMPILE := /home/android_sdk/android-x86_JB/prebuilts/gcc/linux-x86/x86/i686-linux-android-4.7/bin/i686-linux-android-
1499KSRC := /home/android_sdk/android-x86_JB/out/target/product/x86/obj/kernel/
1500MODULE_NAME :=wlan
1501endif
1502
1503ifeq ($(CONFIG_PLATFORM_ARM_PXA2XX), y)
1504EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1505ARCH := arm
1506CROSS_COMPILE := arm-none-linux-gnueabi-
1507KVER  := 2.6.34.1
1508KSRC ?= /usr/src/linux-2.6.34.1
1509endif
1510
1511ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
1512EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1513ARCH := arm
1514CROSS_COMPILE := arm-linux-
1515KVER  := 2.6.24.7_$(ARCH)
1516KSRC := /usr/src/kernels/linux-$(KVER)
1517endif
1518
1519ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
1520EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1521ARCH := arm
1522CROSS_COMPILE := arm-none-linux-gnueabi-
1523KVER  := 2.6.34.1
1524KSRC ?= /usr/src/linux-2.6.34.1
1525endif
1526
1527ifeq ($(CONFIG_PLATFORM_RTD2880B), y)
1528EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTD2880B
1529ARCH:=
1530CROSS_COMPILE:=
1531KVER:=
1532KSRC:=
1533endif
1534
1535ifeq ($(CONFIG_PLATFORM_MIPS_RMI), y)
1536EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1537ARCH:=mips
1538CROSS_COMPILE:=mipsisa32r2-uclibc-
1539KVER:=
1540KSRC:= /root/work/kernel_realtek
1541endif
1542
1543ifeq ($(CONFIG_PLATFORM_MIPS_PLM), y)
1544EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1545ARCH:=mips
1546CROSS_COMPILE:=mipsisa32r2-uclibc-
1547KVER:=
1548KSRC:= /root/work/kernel_realtek
1549endif
1550
1551ifeq ($(CONFIG_PLATFORM_MSTAR389), y)
1552EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR389
1553ARCH:=mips
1554CROSS_COMPILE:= mips-linux-gnu-
1555KVER:= 2.6.28.10
1556KSRC:= /home/mstar/mstar_linux/2.6.28.9/
1557endif
1558
1559ifeq ($(CONFIG_PLATFORM_MIPS_AR9132), y)
1560EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1561ARCH := mips
1562CROSS_COMPILE := mips-openwrt-linux-
1563KSRC := /home/alex/test_openwrt/tmp/linux-2.6.30.9
1564endif
1565
1566ifeq ($(CONFIG_PLATFORM_DMP_PHILIPS), y)
1567EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM
1568ARCH := mips
1569#CROSS_COMPILE:=/usr/local/msdk-4.3.6-mips-EL-2.6.12.6-0.9.30.3/bin/mipsel-linux-
1570CROSS_COMPILE:=/usr/local/toolchain_mipsel/bin/mipsel-linux-
1571KSRC ?=/usr/local/Jupiter/linux-2.6.12
1572endif
1573
1574ifeq ($(CONFIG_PLATFORM_RTK_DMP), y)
1575EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM  -DCONFIG_WIRELESS_EXT
1576EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1577ifeq ($(CONFIG_USB_HCI), y)
1578_PLATFORM_FILES += platform/platform_RTK_DMP_usb.o
1579endif
1580ARCH:=mips
1581CROSS_COMPILE:=mipsel-linux-
1582KVER:=
1583KSRC ?= /usr/src/DMP_Kernel/jupiter/linux-2.6.12
1584endif
1585
1586ifeq ($(CONFIG_PLATFORM_MT53XX), y)
1587EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MT53XX
1588ARCH:= arm
1589CROSS_COMPILE:= arm11_mtk_le-
1590KVER:= 2.6.27
1591KSRC?= /proj/mtk00802/BD_Compare/BDP/Dev/BDP_V301/BDP_Linux/linux-2.6.27
1592endif
1593
1594ifeq ($(CONFIG_PLATFORM_ARM_MX51_241H), y)
1595EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_WISTRON_PLATFORM
1596ARCH := arm
1597CROSS_COMPILE := /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
1598KVER  := 2.6.31
1599KSRC ?= /lib/modules/2.6.31-770-g0e46b52/source
1600endif
1601
1602ifeq ($(CONFIG_PLATFORM_FS_MX61), y)
1603EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1604ARCH := arm
1605CROSS_COMPILE := /home/share/CusEnv/FreeScale/arm-eabi-4.4.3/bin/arm-eabi-
1606KSRC ?= /home/share/CusEnv/FreeScale/FS_kernel_env
1607endif
1608
1609
1610
1611ifeq ($(CONFIG_PLATFORM_ACTIONS_ATJ227X), y)
1612EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATJ227X
1613ARCH := mips
1614CROSS_COMPILE := /home/cnsd4/project/actions/tools-2.6.27/bin/mipsel-linux-gnu-
1615KVER  := 2.6.27
1616KSRC := /home/cnsd4/project/actions/linux-2.6.27.28
1617endif
1618
1619ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
1620EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_TI_DM365
1621EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
1622EXTRA_CFLAGS += -DCONFIG_SINGLE_XMIT_BUF -DCONFIG_SINGLE_RECV_BUF
1623ARCH := arm
1624#CROSS_COMPILE := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-
1625#KSRC := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci/linux-dm365
1626CROSS_COMPILE := /opt/montavista/pro5.0/devkit/arm/v5t_le/bin/arm-linux-
1627KSRC:= /home/vivotek/lsp/DM365/kernel_platform/kernel/linux-2.6.18
1628KERNELOUTPUT := ${PRODUCTDIR}/tmp
1629KVER  := 2.6.18
1630endif
1631
1632ifeq ($(CONFIG_PLATFORM_MOZART), y)
1633EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MOZART
1634ARCH := arm
1635CROSS_COMPILE := /home/vivotek/lsp/mozart3v2/Mozart3e_Toolchain/build_arm_nofpu/usr/bin/arm-linux-
1636KVER  := $(shell uname -r)
1637KSRC:= /opt/Vivotek/lsp/mozart3v2/kernel_platform/kernel/mozart_kernel-1.17
1638KERNELOUTPUT := /home/pink/sample/ODM/IP8136W-VINT/tmp/kernel
1639endif
1640
1641ifeq ($(CONFIG_PLATFORM_TEGRA3_CARDHU), y)
1642EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1643# default setting for Android 4.1, 4.2
1644EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1645EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1646EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1647ARCH := arm
1648CROSS_COMPILE := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1649KSRC := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/out/target/product/cardhu/obj/KERNEL
1650MODULE_NAME := wlan
1651endif
1652
1653ifeq ($(CONFIG_PLATFORM_TEGRA4_DALMORE), y)
1654EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1655# default setting for Android 4.1, 4.2
1656EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1657EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1658EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1659ARCH := arm
1660CROSS_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-
1661KSRC := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/out/target/product/dalmore/obj/KERNEL
1662MODULE_NAME := wlan
1663endif
1664
1665ifeq ($(CONFIG_PLATFORM_ARM_TCC8900), y)
1666EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1667ARCH := arm
1668CROSS_COMPILE := /home/android_sdk/Telechips/SDK_2304_20110613/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1669KSRC := /home/android_sdk/Telechips/SDK_2304_20110613/kernel
1670MODULE_NAME := wlan
1671endif
1672
1673ifeq ($(CONFIG_PLATFORM_ARM_TCC8920), y)
1674EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1675ARCH := arm
1676CROSS_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-
1677KSRC := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/kernel
1678MODULE_NAME := wlan
1679endif
1680
1681ifeq ($(CONFIG_PLATFORM_ARM_TCC8920_JB42), y)
1682EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1683# default setting for Android 4.1, 4.2
1684EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1685EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1686ARCH := arm
1687CROSS_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-
1688KSRC := /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/kernel
1689MODULE_NAME := wlan
1690endif
1691
1692ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
1693EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1694ARCH := arm
1695CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
1696KSRC := /usr/src/release_fae_version/kernel25_A7_281x
1697MODULE_NAME := wlan
1698endif
1699
1700ifeq ($(CONFIG_PLATFORM_ARM_RK3188), y)
1701EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
1702# default setting for Android 4.1, 4.2, 4.3, 4.4
1703EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1704EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1705EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
1706# default setting for Power control
1707#EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1708ifeq ($(CONFIG_SDIO_HCI), y)
1709EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1710endif
1711# default setting for Special function
1712ARCH := arm
1713CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3188/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
1714KSRC := /home/android_sdk/Rockchip/Rk3188/kernel
1715MODULE_NAME := 8821cs
1716endif
1717
1718ifeq ($(CONFIG_PLATFORM_ARM_RK3066), y)
1719EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_RK3066
1720EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
1721EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1722EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1723EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
1724ifeq ($(CONFIG_SDIO_HCI), y)
1725EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
1726endif
1727EXTRA_CFLAGS += -fno-pic
1728ARCH := arm
1729CROSS_COMPILE := /home/android_sdk/Rockchip/rk3066_20130607/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1730#CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3066sdk/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-
1731KSRC := /home/android_sdk/Rockchip/Rk3066sdk/kernel
1732MODULE_NAME :=wlan
1733endif
1734
1735ifeq ($(CONFIG_PLATFORM_ARM_URBETTER), y)
1736EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1737ARCH := arm
1738CROSS_COMPILE := /media/DATA-1/urbetter/arm-2009q3/bin/arm-none-linux-gnueabi-
1739KSRC := /media/DATA-1/urbetter/ics-urbetter/kernel
1740MODULE_NAME := wlan
1741endif
1742
1743ifeq ($(CONFIG_PLATFORM_ARM_TI_PANDA), y)
1744EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
1745ARCH := arm
1746#CROSS_COMPILE := /media/DATA-1/aosp/ics-aosp_20111227/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1747#KSRC := /media/DATA-1/aosp/android-omap-panda-3.0_20120104
1748CROSS_COMPILE := /media/DATA-1/android-4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
1749KSRC := /media/DATA-1/android-4.0/panda_kernel/omap
1750MODULE_NAME := wlan
1751endif
1752
1753ifeq ($(CONFIG_PLATFORM_MIPS_JZ4760), y)
1754EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_MINIMAL_MEMORY_USAGE
1755ARCH ?= mips
1756CROSS_COMPILE ?= /mnt/sdb5/Ingenic/Umido/mips-4.3/bin/mips-linux-gnu-
1757KSRC ?= /mnt/sdb5/Ingenic/Umido/kernel
1758endif
1759
1760ifeq ($(CONFIG_PLATFORM_SZEBOOK), y)
1761EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
1762ARCH:=arm
1763CROSS_COMPILE:=/opt/crosstool2/bin/armeb-unknown-linux-gnueabi-
1764KVER:= 2.6.31.6
1765KSRC:= ../code/linux-2.6.31.6-2020/
1766endif
1767
1768ifeq ($(CONFIG_PLATFORM_ARM_SUNxI), y)
1769EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1770EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUNxI
1771# default setting for Android 4.1, 4.2
1772EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1773EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1774
1775EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1776ifeq ($(CONFIG_USB_HCI), y)
1777EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1778_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1779endif
1780ifeq ($(CONFIG_SDIO_HCI), y)
1781# default setting for A10-EVB mmc0
1782#EXTRA_CFLAGS += -DCONFIG_WITS_EVB_V13
1783_PLATFORM_FILES += platform/platform_ARM_SUNxI_sdio.o
1784endif
1785
1786ARCH := arm
1787#CROSS_COMPILE := arm-none-linux-gnueabi-
1788CROSS_COMPILE=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/buildroot/output/external-toolchain/bin/arm-none-linux-gnueabi-
1789KVER  := 3.0.8
1790#KSRC:= ../lichee/linux-3.0/
1791KSRC=/home/android_sdk/Allwinner/a10/android-jb42/lichee-jb42/linux-3.0
1792endif
1793
1794ifeq ($(CONFIG_PLATFORM_ARM_SUN6I), y)
1795EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1796EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN6I
1797EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1798# default setting for Android 4.1, 4.2, 4.3, 4.4
1799EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1800EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1801EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1802
1803EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1804ifeq ($(CONFIG_USB_HCI), y)
1805EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1806_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1807endif
1808ifeq ($(CONFIG_SDIO_HCI), y)
1809# default setting for A31-EVB mmc0
1810EXTRA_CFLAGS += -DCONFIG_A31_EVB
1811_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1812endif
1813
1814ARCH := arm
1815#Android-JB42
1816#CROSS_COMPILE := /home/android_sdk/Allwinner/a31/android-jb42/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1817#KSRC :=/home/android_sdk/Allwinner/a31/android-jb42/lichee/linux-3.3
1818#ifeq ($(CONFIG_USB_HCI), y)
1819#MODULE_NAME := 8188eu_sw
1820#endif
1821# ==== Cross compile setting for kitkat-a3x_v4.5 =====
1822CROSS_COMPILE := /home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/buildroot/output/external-toolchain/bin/arm-linux-gnueabi-
1823KSRC :=/home/android_sdk/Allwinner/a31/kitkat-a3x_v4.5/lichee/linux-3.3
1824endif
1825
1826ifeq ($(CONFIG_PLATFORM_ARM_SUN7I), y)
1827EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1828EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
1829EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1830# default setting for Android 4.1, 4.2, 4.3, 4.4
1831EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1832EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1833EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
1834
1835EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1836ifeq ($(CONFIG_USB_HCI), y)
1837EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1838_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1839endif
1840ifeq ($(CONFIG_SDIO_HCI), y)
1841_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1842endif
1843
1844ARCH := arm
1845# ===Cross compile setting for Android 4.2 SDK ===
1846#CROSS_COMPILE := /home/android_sdk/Allwinner/a20_evb/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1847#KSRC := /home/android_sdk/Allwinner/a20_evb/lichee/linux-3.3
1848# ==== Cross compile setting for Android 4.3 SDK =====
1849#CROSS_COMPILE := /home/android_sdk/Allwinner/a20/android-jb43/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1850#KSRC := /home/android_sdk/Allwinner/a20/android-jb43/lichee/linux-3.4
1851# ==== Cross compile setting for kitkat-a20_v4.4 =====
1852CROSS_COMPILE := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1853KSRC := /home/android_sdk/Allwinner/a20/kitkat-a20_v4.4/lichee/linux-3.4
1854endif
1855
1856ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W3P1), y)
1857EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1858EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1859EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W3P1
1860EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1861# default setting for Android 4.1, 4.2
1862EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1863EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1864
1865EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1866ifeq ($(CONFIG_USB_HCI), y)
1867EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1868_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1869endif
1870ifeq ($(CONFIG_SDIO_HCI), y)
1871_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1872endif
1873
1874ARCH := arm
1875# ===Cross compile setting for Android 4.2 SDK ===
1876#CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-jb42/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1877#KSRC :=/home/android_sdk/Allwinner/a23/android-jb42/lichee/linux-3.4
1878# ===Cross compile setting for Android 4.4 SDK ===
1879CROSS_COMPILE := /home/android_sdk/Allwinner/a23/android-kk44/lichee/out/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1880KSRC :=/home/android_sdk/Allwinner/a23/android-kk44/lichee/linux-3.4
1881endif
1882
1883ifeq ($(CONFIG_PLATFORM_ARM_SUN8I_W5P1), y)
1884EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1885EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I
1886EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN8I_W5P1
1887EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
1888# default setting for Android 4.1, 4.2
1889EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1890EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1891
1892# Enable this for Android 5.0
1893EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1894
1895EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1896ifeq ($(CONFIG_USB_HCI), y)
1897EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
1898_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
1899endif
1900ifeq ($(CONFIG_SDIO_HCI), y)
1901_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
1902endif
1903
1904ARCH := arm
1905# ===Cross compile setting for Android L SDK ===
1906CROSS_COMPILE := /home/android_sdk/Allwinner/a33/android-L/lichee/out/sun8iw5p1/android/common/buildroot/external-toolchain/bin/arm-linux-gnueabi-
1907KSRC :=/home/android_sdk/Allwinner/a33/android-L/lichee/linux-3.4
1908endif
1909
1910ifeq ($(CONFIG_PLATFORM_ACTIONS_ATV5201), y)
1911EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATV5201
1912EXTRA_CFLAGS += -DCONFIG_SDIO_DISABLE_RXFIFO_POLLING_LOOP
1913ARCH := mips
1914CROSS_COMPILE := mipsel-linux-gnu-
1915KVER  := $(KERNEL_VER)
1916KSRC:= $(CFGDIR)/../../kernel/linux-$(KERNEL_VER)
1917endif
1918
1919ifeq ($(CONFIG_PLATFORM_ARM_RTD299X), y)
1920EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1921EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1922EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1923ifeq ($(CONFIG_ANDROID), y)
1924# Enable this for Android 5.0
1925EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1926endif
1927#ARCH, CROSS_COMPILE, KSRC,and  MODDESTDIR are provided by external makefile
1928INSTALL_PREFIX :=
1929MODULE_NAME := wlan
1930endif
1931
1932ifeq ($(CONFIG_PLATFORM_ARM_RTD299X_LG), y)
1933EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1934EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1935EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1936EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
1937EXTRA_CFLAGS += -DCONFIG_IFACE_NUMBER=3
1938#EXTRA_CFLAGS += -DCONFIG_FIX_HWPORT
1939EXTRA_CFLAGS += -DLGE_PRIVATE
1940EXTRA_CFLAGS += -DPURE_SUPPLICANT
1941EXTRA_CFLAGS += -DCONFIG_CUSTOMIZED_COUNTRY_CHPLAN_MAP -DCONFIG_RTW_IOCTL_SET_COUNTRY
1942EXTRA_CFLAGS += -DDBG_RX_DFRAME_RAW_DATA
1943EXTRA_CFLAGS += -DRTW_REDUCE_SCAN_SWITCH_CH_TIME
1944ARCH ?= arm
1945KVER ?=
1946
1947ifneq ($(PLATFORM), WEBOS)
1948$(info PLATFORM is empty)
1949CROSS_COMPILE ?= /mnt/newdisk/LGE/arm-lg115x-linux-gnueabi-4.8-2016.03-x86_64/bin/arm-lg115x-linux-gnueabi-
1950KSRC ?= /mnt/newdisk/LGE/linux-rockhopper_k3lp_drd4tv_423
1951endif
1952
1953CROSS_COMPILE ?=
1954KSRC ?= $(LINUX_SRC)
1955INSTALL_PREFIX ?=
1956endif
1957
1958ifeq ($(CONFIG_PLATFORM_HISILICON), y)
1959EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_HISILICON
1960ifeq ($(SUPPORT_CONCURRENT),y)
1961EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1962endif
1963EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
1964ARCH := arm
1965ifeq ($(CROSS_COMPILE),)
1966       CROSS_COMPILE = arm-hisiv200-linux-
1967endif
1968MODULE_NAME := rtl8192eu
1969ifeq ($(KSRC),)
1970       KSRC := ../../../../../../kernel/linux-3.4.y
1971endif
1972endif
1973
1974ifeq ($(CONFIG_PLATFORM_HISILICON_HI3798), y)
1975EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON
1976EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON_HI3798
1977#EXTRA_CFLAGS += -DCONFIG_PLATFORM_HISILICON_HI3798_MV200_HDMI_DONGLE
1978EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
1979# default setting for Android
1980EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
1981EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
1982EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
1983# default setting for Android 5.x and later
1984#EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
1985
1986# If system could power on and recognize Wi-Fi SDIO automatically,
1987# platfrom operations are not necessary.
1988#ifeq ($(CONFIG_SDIO_HCI), y)
1989#EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
1990#_PLATFORM_FILES += platform/platform_hisilicon_hi3798_sdio.o
1991#EXTRA_CFLAGS += -DCONFIG_HISI_SDIO_ID=1
1992#endif
1993
1994ARCH ?= arm
1995CROSS_COMPILE ?= /HiSTBAndroidV600R003C00SPC021_git_0512/device/hisilicon/bigfish/sdk/tools/linux/toolchains/arm-histbv310-linux/bin/arm-histbv310-linux-
1996ifndef KSRC
1997KSRC := /HiSTBAndroidV600R003C00SPC021_git_0512/device/hisilicon/bigfish/sdk/source/kernel/linux-3.18.y
1998KSRC += O=/HiSTBAndroidV600R003C00SPC021_git_0512/out/target/product/Hi3798MV200/obj/KERNEL_OBJ
1999endif
2000
2001ifeq ($(CONFIG_RTL8822B), y)
2002ifeq ($(CONFIG_SDIO_HCI), y)
2003CONFIG_RTL8822BS ?= m
2004USER_MODULE_NAME := rtl8822bs
2005endif
2006endif
2007
2008endif
2009
2010# Platform setting
2011ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_6820), y)
2012ifeq ($(CONFIG_ANDROID_2X), y)
2013EXTRA_CFLAGS += -DANDROID_2X
2014endif
2015EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
2016EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_6820
2017EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2018ifeq ($(RTL871X), rtl8188e)
2019EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
2020endif
2021ifeq ($(CONFIG_SDIO_HCI), y)
2022EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2023_PLATFORM_FILES += platform/platform_sprd_sdio.o
2024endif
2025endif
2026
2027ifeq ($(CONFIG_PLATFORM_ARM_SPREADTRUM_8810), y)
2028ifeq ($(CONFIG_ANDROID_2X), y)
2029EXTRA_CFLAGS += -DANDROID_2X
2030endif
2031EXTRA_CFLAGS += -DCONFIG_PLATFORM_SPRD
2032EXTRA_CFLAGS += -DPLATFORM_SPREADTRUM_8810
2033EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2034ifeq ($(RTL871X), rtl8188e)
2035EXTRA_CFLAGS += -DSOFTAP_PS_DURATION=50
2036endif
2037ifeq ($(CONFIG_SDIO_HCI), y)
2038EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2039_PLATFORM_FILES += platform/platform_sprd_sdio.o
2040endif
2041endif
2042
2043ifeq ($(CONFIG_PLATFORM_ARM_WMT), y)
2044EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2045EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2046EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2047EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2048ifeq ($(CONFIG_SDIO_HCI), y)
2049_PLATFORM_FILES += platform/platform_ARM_WMT_sdio.o
2050endif
2051ARCH := arm
2052CROSS_COMPILE := /home/android_sdk/WonderMedia/wm8880-android4.4/toolchain/arm_201103_gcc4.5.2/mybin/arm_1103_le-
2053KSRC := /home/android_sdk/WonderMedia/wm8880-android4.4/kernel4.4/
2054MODULE_NAME :=8189es_kk
2055endif
2056
2057ifeq ($(CONFIG_PLATFORM_RTK119X), y)
2058EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2059#EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN7I
2060EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2061# default setting for Android 4.1, 4.2
2062EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2063EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2064#EXTRA_CFLAGS +=  -DCONFIG_QOS_OPTIMIZATION
2065EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2066
2067#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2068ifeq ($(CONFIG_USB_HCI), y)
2069EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2070#_PLATFORM_FILES += platform/platform_ARM_SUNxI_usb.o
2071endif
2072ifeq ($(CONFIG_SDIO_HCI), y)
2073_PLATFORM_FILES += platform/platform_ARM_SUNnI_sdio.o
2074endif
2075
2076ARCH := arm
2077
2078# ==== Cross compile setting for Android 4.4 SDK =====
2079#CROSS_COMPILE := arm-linux-gnueabihf-
2080KVER  := 3.10.24
2081#KSRC :=/home/android_sdk/Allwinner/a20/android-kitkat44/lichee/linux-3.4
2082CROSS_COMPILE := /home/realtek/software_phoenix/phoenix/toolchain/usr/local/arm-2013.11/bin/arm-linux-gnueabihf-
2083KSRC := /home/realtek/software_phoenix/linux-kernel
2084MODULE_NAME := 8192eu
2085
2086endif
2087
2088# Actions-Micro use this flag for DHC 1195 and DHC 1395
2089ifeq ($(CONFIG_PLATFORM_RTK119X_AM), y)
2090EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK119X_AM
2091EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2092EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2093EXTRA_CFLAGS += -DCONFIG_FULL_CH_IN_P2P_HANDSHAKE
2094EXTRA_CFLAGS += -DCONFIG_SEL_P2P_IFACE=2
2095EXTRA_CFLAGS += -DCONFIG_IFACE_NUMBER=3
2096EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2097
2098ifeq ($(CONFIG_USB_HCI), y)
2099EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2100endif
2101
2102ARCH := arm
2103
2104#CROSS_COMPILE := arm-linux-gnueabihf-
2105KVER  := 3.10.24
2106#KSRC :=
2107CROSS_COMPILE :=
2108endif
2109
2110ifeq ($(CONFIG_PLATFORM_RTK129X), y)
2111EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2112EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK129X
2113EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2114# default setting for Android 4.1, 4.2
2115EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2116EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2117#EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_QOS_OPTIMIZATION
2118EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2119# Enable this for Android 5.0
2120EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2121ifeq ($(CONFIG_RTL8821C)$(CONFIG_SDIO_HCI),yy)
2122EXTRA_CFLAGS += -DCONFIG_WAKEUP_GPIO_INPUT_MODE
2123EXTRA_CFLAGS += -DCONFIG_BT_WAKE_HST_OPEN_DRAIN
2124endif
2125EXTRA_CFLAGS += -Wno-error=date-time
2126# default setting for Android 7.0
2127ifeq ($(RTK_ANDROID_VERSION), nougat)
2128EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
2129endif
2130#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2131ifeq ($(CONFIG_USB_HCI), y)
2132EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2133endif
2134
2135ARCH := arm64
2136
2137# ==== Cross compile setting for Android 4.4 SDK =====
2138#CROSS_COMPILE := arm-linux-gnueabihf-
2139#KVER  := 4.1.10
2140#CROSS_COMPILE := $(CROSS)
2141#KSRC := $(LINUX_KERNEL_PATH)
2142CROSS_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-
2143KSRC := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/linux-kernel
2144endif
2145
2146ifeq ($(CONFIG_PLATFORM_RTK1319), y)
2147EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK1319
2148EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2149EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
2150# default setting for Android 4.1, 4.2
2151EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2152EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2153#EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DCONFIG_QOS_OPTIMIZATION
2154EXTRA_CFLAGS += -DCONFIG_QOS_OPTIMIZATION
2155# Enable this for Android 5.0
2156EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2157ifeq ($(CONFIG_RTL8821C)$(CONFIG_SDIO_HCI),yy)
2158EXTRA_CFLAGS += -DCONFIG_WAKEUP_GPIO_INPUT_MODE
2159EXTRA_CFLAGS += -DCONFIG_BT_WAKE_HST_OPEN_DRAIN
2160endif
2161EXTRA_CFLAGS += -Wno-error=date-time
2162# default setting for Android 7.0
2163ifeq ($(RTK_ANDROID_VERSION), nougat)
2164EXTRA_CFLAGS += -DRTW_P2P_GROUP_INTERFACE=1
2165endif
2166#EXTRA_CFLAGS += -DCONFIG_#PLATFORM_OPS
2167ifeq ($(CONFIG_USB_HCI), y)
2168EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2169endif
2170
2171ARCH := arm64
2172
2173# ==== Cross compile setting for Android 4.4 SDK =====
2174#CROSS_COMPILE := arm-linux-gnueabihf-
2175#KVER  := 4.1.10
2176#CROSS_COMPILE := $(CROSS)
2177#KSRC := $(LINUX_KERNEL_PATH)
2178CROSS_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-
2179KSRC := /home/android_sdk/DHC/trunk-6.0.0_r1-QA160627/linux-kernel
2180endif
2181
2182ifeq ($(CONFIG_PLATFORM_RTK390X), y)
2183EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2184EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTK390X
2185EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2186EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG
2187ifeq ($(CONFIG_USB_HCI), y)
2188EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2189endif
2190
2191ARCH:=rlx
2192
2193CROSS_COMPILE:=mips-linux-
2194KSRC:= /home/realtek/share/Develop/IPCAM_SDK/RealSil/rts3901_sdk_v1.2_vanilla/linux-3.10
2195
2196endif
2197
2198ifeq ($(CONFIG_PLATFORM_NOVATEK_NT72668), y)
2199EXTRA_CFLAGS += -DCONFIG_PLATFORM_NOVATEK_NT72668
2200EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2201EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2202EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2203EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_RX
2204EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
2205ARCH ?= arm
2206CROSS_COMPILE := arm-linux-gnueabihf-
2207KVER := 3.8.0
2208KSRC := /Custom/Novatek/TCL/linux-3.8_header
2209#KSRC := $(KERNELDIR)
2210endif
2211
2212ifeq ($(CONFIG_PLATFORM_ARM_TCC8930_JB42), y)
2213EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2214# default setting for Android 4.1, 4.2
2215EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2216EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
2217ARCH := arm
2218CROSS_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-
2219KSRC := /home/android_sdk/Telechips/v13.05_r1-tcc-android-4.2.2_tcc893x-evm_build/kernel
2220MODULE_NAME := wlan
2221endif
2222
2223ifeq ($(CONFIG_PLATFORM_RTL8197D), y)
2224EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTL8197D
2225export DIR_LINUX=$(shell pwd)/../SDK/rlxlinux-sdk321-v50/linux-2.6.30
2226ARCH ?= rlx
2227CROSS_COMPILE:= $(DIR_LINUX)/../toolchain/rsdk-1.5.5-5281-EB-2.6.30-0.9.30.3-110714/bin/rsdk-linux-
2228KSRC := $(DIR_LINUX)
2229endif
2230
2231ifeq ($(CONFIG_PLATFORM_AML_S905), y)
2232EXTRA_CFLAGS += -DCONFIG_PLATFORM_AML_S905
2233EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -fno-pic
2234# default setting for Android
2235EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2236EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
2237EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
2238# default setting for Android 5.x and later
2239EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2240
2241ifeq ($(CONFIG_SDIO_HCI), y)
2242EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2243_PLATFORM_FILES += platform/platform_aml_s905_sdio.o
2244endif
2245
2246ARCH ?= arm64
2247CROSS_COMPILE ?= /4.4_S905L_8822bs_compile/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux/bin/aarch64-linux-gnu-
2248ifndef KSRC
2249KSRC := /4.4_S905L_8822bs_compile/common
2250# To locate output files in a separate directory.
2251KSRC += O=/4.4_S905L_8822bs_compile/KERNEL_OBJ
2252endif
2253
2254ifeq ($(CONFIG_RTL8822B), y)
2255ifeq ($(CONFIG_SDIO_HCI), y)
2256CONFIG_RTL8822BS ?= m
2257USER_MODULE_NAME := 8822bs
2258endif
2259endif
2260
2261endif
2262
2263ifeq ($(CONFIG_PLATFORM_ZTE_ZX296716), y)
2264EXTRA_CFLAGS += -Wno-error=date-time
2265EXTRA_CFLAGS += -DCONFIG_PLATFORM_ZTE_ZX296716
2266EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
2267# default setting for Android
2268EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
2269EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
2270EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
2271# default setting for Android 5.x and later
2272#EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
2273
2274ifeq ($(CONFIG_SDIO_HCI), y)
2275# mark this temporarily
2276#EXTRA_CFLAGS += -DCONFIG_PLATFORM_OPS
2277#_PLATFORM_FILES += platform/platform_zte_zx296716_sdio.o
2278endif
2279
2280ARCH ?= arm64
2281CROSS_COMPILE ?=
2282KSRC ?=
2283
2284ifeq ($(CONFIG_RTL8822B), y)
2285ifeq ($(CONFIG_SDIO_HCI), y)
2286CONFIG_RTL8822BS ?= m
2287USER_MODULE_NAME := 8822bs
2288endif
2289endif
2290
2291endif
2292
2293########### CUSTOMER ################################
2294ifeq ($(CONFIG_CUSTOMER_HUAWEI_GENERAL), y)
2295CONFIG_CUSTOMER_HUAWEI = y
2296endif
2297
2298ifeq ($(CONFIG_CUSTOMER_HUAWEI), y)
2299EXTRA_CFLAGS += -DCONFIG_HUAWEI_PROC
2300endif
2301
2302CONFIG_PLATFORM_CMAP_INTFS = n
2303ifeq ($(CONFIG_PLATFORM_CMAP_INTFS), y)
2304PLATFORM_CMAP_INTFS_TYPE = 00
2305EXTRA_CFLAGS += -DCONFIG_PLATFORM_CMAP_INTFS -DCMAP_UNASSOC_METRICS_STA_MAX=32
2306_OS_INTFS_FILES += os_dep/linux/custom_multiap_intfs/custom_multiap_intfs.o
2307_PLATFORM_FILES += platform/custom_multiap_intfs_$(PLATFORM_CMAP_INTFS_TYPE).o
2308endif
2309
2310ifeq ($(CONFIG_MULTIDRV), y)
2311
2312ifeq ($(CONFIG_SDIO_HCI), y)
2313MODULE_NAME := rtw_sdio
2314endif
2315
2316ifeq ($(CONFIG_USB_HCI), y)
2317MODULE_NAME := rtw_usb
2318endif
2319
2320ifeq ($(CONFIG_PCI_HCI), y)
2321MODULE_NAME := rtw_pci
2322endif
2323
2324
2325endif
2326
2327USER_MODULE_NAME ?=
2328ifneq ($(USER_MODULE_NAME),)
2329MODULE_NAME := $(USER_MODULE_NAME)
2330endif
2331
2332ifneq ($(KERNELRELEASE),)
2333
2334########### this part for *.mk ############################
2335include $(src)/hal/phydm/phydm.mk
2336
2337########### HAL_RTL8822B #################################
2338ifeq ($(CONFIG_RTL8822B), y)
2339include $(src)/rtl8822b.mk
2340endif
2341
2342########### HAL_RTL8821C #################################
2343ifeq ($(CONFIG_RTL8821C), y)
2344include $(src)/rtl8821c.mk
2345endif
2346
2347########### HAL_RTL8822C #################################
2348ifeq ($(CONFIG_RTL8822C), y)
2349include $(src)/rtl8822c.mk
2350endif
2351
2352########### HAL_RTL8814B #################################
2353ifeq ($(CONFIG_RTL8814B), y)
2354include $(src)/rtl8814b.mk
2355endif
2356
2357########### HAL_RTL8723F #################################
2358ifeq ($(CONFIG_RTL8723F), y)
2359include $(src)/rtl8723f.mk
2360endif
2361
2362rtk_core :=	core/rtw_cmd.o \
2363		core/rtw_security.o \
2364		core/rtw_debug.o \
2365		core/rtw_io.o \
2366		core/rtw_ioctl_query.o \
2367		core/rtw_ioctl_set.o \
2368		core/rtw_ieee80211.o \
2369		core/rtw_mlme.o \
2370		core/rtw_mlme_ext.o \
2371		core/rtw_mi.o \
2372		core/rtw_wlan_util.o \
2373		core/rtw_vht.o \
2374		core/rtw_pwrctrl.o \
2375		core/rtw_rf.o \
2376		core/rtw_chplan.o \
2377		core/monitor/rtw_radiotap.o \
2378		core/rtw_recv.o \
2379		core/rtw_sta_mgt.o \
2380		core/rtw_ap.o \
2381		core/wds/rtw_wds.o \
2382		core/mesh/rtw_mesh.o \
2383		core/mesh/rtw_mesh_pathtbl.o \
2384		core/mesh/rtw_mesh_hwmp.o \
2385		core/rtw_xmit.o	\
2386		core/rtw_p2p.o \
2387		core/rtw_rson.o \
2388		core/rtw_tdls.o \
2389		core/rtw_br_ext.o \
2390		core/rtw_iol.o \
2391		core/rtw_sreset.o \
2392		core/rtw_btcoex_wifionly.o \
2393		core/rtw_btcoex.o \
2394		core/rtw_beamforming.o \
2395		core/rtw_odm.o \
2396		core/rtw_rm.o \
2397		core/rtw_rm_fsm.o \
2398		core/rtw_ft.o \
2399		core/rtw_wnm.o \
2400		core/rtw_mbo.o \
2401		core/rtw_rm_util.o \
2402		core/efuse/rtw_efuse.o \
2403		core/rtw_roch.o
2404
2405ifeq ($(CONFIG_SDIO_HCI), y)
2406rtk_core += core/rtw_sdio.o
2407endif
2408
2409EXTRA_CFLAGS += -I$(src)/core/crypto
2410rtk_core += \
2411		core/crypto/aes-internal.o \
2412		core/crypto/aes-internal-enc.o \
2413		core/crypto/aes-gcm.o \
2414		core/crypto/aes-ccm.o \
2415		core/crypto/aes-omac1.o \
2416		core/crypto/ccmp.o \
2417		core/crypto/gcmp.o \
2418		core/crypto/aes-siv.o \
2419		core/crypto/aes-ctr.o \
2420		core/crypto/sha256-internal.o \
2421		core/crypto/sha256.o \
2422		core/crypto/sha256-prf.o \
2423		core/crypto/rtw_crypto_wrap.o \
2424		core/rtw_swcrypto.o
2425
2426$(MODULE_NAME)-y += $(rtk_core)
2427
2428$(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o	\
2429					core/rtw_wapi_sms4.o
2430
2431$(MODULE_NAME)-y += $(_OS_INTFS_FILES)
2432$(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
2433$(MODULE_NAME)-y += $(_PHYDM_FILES)
2434$(MODULE_NAME)-y += $(_BTC_FILES)
2435$(MODULE_NAME)-y += $(_PLATFORM_FILES)
2436
2437$(MODULE_NAME)-$(CONFIG_MP_INCLUDED) += core/rtw_mp.o
2438
2439ifeq ($(CONFIG_RTL8723B), y)
2440$(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
2441endif
2442
2443obj-$(CONFIG_RTL8821CS) := $(MODULE_NAME).o
2444
2445else
2446
2447export CONFIG_RTL8821CS = m
2448
2449all: modules
2450
2451modules:
2452	$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd)  modules
2453
2454strip:
2455	$(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
2456
2457install:
2458	install -p -m 644 $(MODULE_NAME).ko  $(MODDESTDIR)
2459	/sbin/depmod -a ${KVER}
2460
2461uninstall:
2462	rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
2463	/sbin/depmod -a ${KVER}
2464
2465backup_rtlwifi:
2466	@echo "Making backup rtlwifi drivers"
2467ifneq (,$(wildcard $(STAGINGMODDIR)/rtl*))
2468	@tar cPf $(wildcard $(STAGINGMODDIR))/backup_rtlwifi_driver.tar $(wildcard $(STAGINGMODDIR)/rtl*)
2469	@rm -rf $(wildcard $(STAGINGMODDIR)/rtl*)
2470endif
2471ifneq (,$(wildcard $(MODDESTDIR)realtek))
2472	@tar cPf $(MODDESTDIR)backup_rtlwifi_driver.tar $(MODDESTDIR)realtek
2473	@rm -fr $(MODDESTDIR)realtek
2474endif
2475ifneq (,$(wildcard $(MODDESTDIR)rtl*))
2476	@tar cPf $(MODDESTDIR)../backup_rtlwifi_driver.tar $(wildcard $(MODDESTDIR)rtl*)
2477	@rm -fr $(wildcard $(MODDESTDIR)rtl*)
2478endif
2479	@/sbin/depmod -a ${KVER}
2480	@echo "Please reboot your system"
2481
2482restore_rtlwifi:
2483	@echo "Restoring backups"
2484ifneq (,$(wildcard $(STAGINGMODDIR)/backup_rtlwifi_driver.tar))
2485	@tar xPf $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
2486	@rm $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
2487endif
2488ifneq (,$(wildcard $(MODDESTDIR)backup_rtlwifi_driver.tar))
2489	@tar xPf $(MODDESTDIR)backup_rtlwifi_driver.tar
2490	@rm $(MODDESTDIR)backup_rtlwifi_driver.tar
2491endif
2492ifneq (,$(wildcard $(MODDESTDIR)../backup_rtlwifi_driver.tar))
2493	@tar xPf $(MODDESTDIR)../backup_rtlwifi_driver.tar
2494	@rm $(MODDESTDIR)../backup_rtlwifi_driver.tar
2495endif
2496	@/sbin/depmod -a ${KVER}
2497	@echo "Please reboot your system"
2498
2499config_r:
2500	@echo "make config"
2501	/bin/bash script/Configure script/config.in
2502
2503
2504.PHONY: modules clean
2505
2506clean:
2507	#$(MAKE) -C $(KSRC) M=$(shell pwd) clean
2508	cd hal ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko
2509	cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
2510	cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
2511	cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2512	cd core ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
2513	cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2514	cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2515	cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2516	cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
2517	rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
2518	rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
2519	rm -fr .tmp_versions
2520endif
2521
2522