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