1 EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
5 #EXTRA_CFLAGS += -Wextra
6 #EXTRA_CFLAGS += -Werror
7 #EXTRA_CFLAGS += -pedantic
8 #EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
10 EXTRA_CFLAGS += -Wno-unused-variable
11 EXTRA_CFLAGS += -Wno-unused-value
12 EXTRA_CFLAGS += -Wno-unused-label
13 EXTRA_CFLAGS += -Wno-unused-parameter
14 EXTRA_CFLAGS += -Wno-unused-function
15 EXTRA_CFLAGS += -Wno-unused
17 EXTRA_CFLAGS += -Wno-uninitialized
19 EXTRA_CFLAGS += -I$(src)/include
28 CONFIG_POWER_SAVING = y
29 CONFIG_USB_AUTOSUSPEND = n
30 CONFIG_HW_PWRP_DETECTION = n
33 CONFIG_RTL8192CU_REDEFINE_1X1 = n
35 CONFIG_WAPI_SUPPORT = n
36 CONFIG_EFUSE_CONFIG_FILE = n
38 CONFIG_FTP_PROTECT = n
41 CONFIG_PLATFORM_I386_PC = y
42 CONFIG_PLATFORM_ANDROID_X86 = n
43 CONFIG_PLATFORM_ARM_S3C2K4 = n
44 CONFIG_PLATFORM_ARM_PXA2XX = n
45 CONFIG_PLATFORM_ARM_S3C6K4 = n
46 CONFIG_PLATFORM_MIPS_RMI = n
47 CONFIG_PLATFORM_RTD2880B = n
48 CONFIG_PLATFORM_MIPS_AR9132 = n
49 CONFIG_PLATFORM_RTK_DMP = n
50 CONFIG_PLATFORM_MIPS_PLM = n
51 CONFIG_PLATFORM_MSTAR389 = n
52 CONFIG_PLATFORM_MT53XX = n
53 CONFIG_PLATFORM_ARM_MX51_241H = n
54 CONFIG_PLATFORM_ACTIONS_ATJ227X = n
55 CONFIG_PLATFORM_TEGRA3_CARDHU = n
56 CONFIG_PLATFORM_TEGRA4_DALMORE = n
57 CONFIG_PLATFORM_ARM_TCC8900 = n
58 CONFIG_PLATFORM_ARM_TCC8920 = n
59 CONFIG_PLATFORM_ARM_RK2818 = n
60 CONFIG_PLATFORM_ARM_URBETTER = n
61 CONFIG_PLATFORM_ARM_TI_PANDA = n
62 CONFIG_PLATFORM_MIPS_JZ4760 = n
63 CONFIG_PLATFORM_DMP_PHILIPS = n
64 CONFIG_PLATFORM_TI_DM365 = n
65 CONFIG_PLATFORM_MSTAR_TITANIA12 = n
66 CONFIG_PLATFORM_SZEBOOK = n
67 CONFIG_PLATFORM_ARM_SUNxI = n
68 CONFIG_PLATFORM_ARM_SUN6I = n
69 CONFIG_PLATFORM_ACTIONS_ATM702X = n
70 CONFIG_PLATFORM_MN10300 = n
71 CONFIG_PLATFORM_ACTIONS_ATV5201 = n
73 CONFIG_DRVEXT_MODULE = n
75 export TopDIR ?= $(shell pwd)
78 OUTSRC_FILES := hal/odm_debug.o \
83 ifeq ($(CONFIG_RTL8723A), y)
87 HAL_COMM_FILES := hal/$(RTL871X)_xmit.o \
88 hal/$(RTL871X)_sreset.o
91 OUTSRC_FILES += hal/Hal8723UHWImg_CE.o
93 #hal/HalHWImg8723A_FW.o
94 OUTSRC_FILES += hal/HalHWImg8723A_BB.o\
95 hal/HalHWImg8723A_MAC.o\
96 hal/HalHWImg8723A_RF.o\
97 hal/HalDMOutSrc8192C_CE.o\
98 hal/odm_RegConfig8723A.o
101 clean_more += clean_odm-8192c
103 PWRSEQ_FILES := hal/HalPwrSeqCmd.o \
106 CHIP_FILES += $(HAL_COMM_FILES) $(OUTSRC_FILES) $(PWRSEQ_FILES)
108 ifeq ($(CONFIG_BT_COEXIST), y)
109 CHIP_FILES += hal/rtl8723a_bt-coexist.o
114 _OS_INTFS_FILES := os_dep/osdep_service.o \
116 os_dep/$(HCI_NAME)_intf.o \
117 os_dep/$(HCI_NAME)_ops_linux.o \
118 os_dep/ioctl_linux.o \
119 os_dep/xmit_linux.o \
120 os_dep/mlme_linux.o \
121 os_dep/recv_linux.o \
122 os_dep/ioctl_cfg80211.o
124 _HAL_INTFS_FILES := hal/hal_intf.o \
126 hal/$(RTL871X)_hal_init.o \
127 hal/$(RTL871X)_phycfg.o \
128 hal/$(RTL871X)_rf6052.o \
129 hal/$(RTL871X)_dm.o \
130 hal/$(RTL871X)_rxdesc.o \
131 hal/$(RTL871X)_cmd.o \
132 hal/$(HCI_NAME)_halinit.o \
133 hal/rtl$(MODULE_NAME)_led.o \
134 hal/rtl$(MODULE_NAME)_xmit.o \
135 hal/rtl$(MODULE_NAME)_recv.o
137 _HAL_INTFS_FILES += hal/$(HCI_NAME)_ops_linux.o
140 _HAL_INTFS_FILES += $(CHIP_FILES)
143 ifeq ($(CONFIG_USB_AUTOSUSPEND), y)
144 EXTRA_CFLAGS += -DCONFIG_USB_AUTOSUSPEND
147 ifeq ($(CONFIG_POWER_SAVING), y)
148 EXTRA_CFLAGS += -DCONFIG_POWER_SAVING
151 ifeq ($(CONFIG_HW_PWRP_DETECTION), y)
152 EXTRA_CFLAGS += -DCONFIG_HW_PWRP_DETECTION
155 ifeq ($(CONFIG_WIFI_TEST), y)
156 EXTRA_CFLAGS += -DCONFIG_WIFI_TEST
159 ifeq ($(CONFIG_BT_COEXIST), y)
160 EXTRA_CFLAGS += -DCONFIG_BT_COEXIST
163 ifeq ($(CONFIG_RTL8192CU_REDEFINE_1X1), y)
164 EXTRA_CFLAGS += -DRTL8192C_RECONFIG_TO_1T1R
167 ifeq ($(CONFIG_INTEL_WIDI), y)
168 EXTRA_CFLAGS += -DCONFIG_INTEL_WIDI
171 ifeq ($(CONFIG_WAPI_SUPPORT), y)
172 EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT
175 ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
176 EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE
179 ifeq ($(CONFIG_EXT_CLK), y)
180 EXTRA_CFLAGS += -DCONFIG_EXT_CLK
183 ifeq ($(CONFIG_FTP_PROTECT), y)
184 EXTRA_CFLAGS += -DCONFIG_FTP_PROTECT
187 ifeq ($(CONFIG_RTL8188E), y)
188 ifeq ($(CONFIG_WOWLAN), y)
189 EXTRA_CFLAGS += -DCONFIG_WOWLAN
193 ifeq ($(CONFIG_RTL8188E), y)
194 ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
195 EXTRA_CFLAGS += -DCONFIG_RF_GAIN_OFFSET
199 ifeq ($(CONFIG_PLATFORM_I386_PC), y)
200 SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ | sed -e s/ppc/powerpc/)
203 KVER := $(shell uname -r)
204 KSRC := /lib/modules/$(KVER)/build
205 MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
209 ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM702X), y)
210 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ACTIONS_ATM702X
213 #CROSS_COMPILE := arm-none-linux-gnueabi-
214 CROSS_COMPILE := $(R_CROSS_COMPILE)
216 #KSRC := ../../../../build/out/kernel
217 KSRC := $(KERNEL_BUILD_PATH)
221 ifeq ($(CONFIG_PLATFORM_TI_AM3517), y)
222 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_SHUTTLE
223 CROSS_COMPILE := arm-eabi-
224 KSRC := $(shell pwd)/../../../Android/kernel
228 ifeq ($(CONFIG_PLATFORM_MSTAR_TITANIA12), y)
229 EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR_TITANIA12
231 CROSS_COMPILE:= /usr/src/Mstar_kernel/mips-4.3/bin/mips-linux-gnu-
233 KSRC:= /usr/src/Mstar_kernel/2.6.28.9/
236 ifeq ($(CONFIG_PLATFORM_ANDROID_X86), y)
237 SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
239 CROSS_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-
240 KSRC := /media/DATA-2/android-x86/ics-x86_20120130/out/target/product/generic_x86/obj/kernel
244 ifeq ($(CONFIG_PLATFORM_ARM_PXA2XX), y)
246 CROSS_COMPILE := arm-none-linux-gnueabi-
248 KSRC ?= /usr/src/linux-2.6.34.1
251 ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
253 CROSS_COMPILE := arm-linux-
254 KVER := 2.6.24.7_$(ARCH)
255 KSRC := /usr/src/kernels/linux-$(KVER)
258 ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
260 CROSS_COMPILE := arm-none-linux-gnueabi-
262 KSRC ?= /usr/src/linux-2.6.34.1
265 ifeq ($(CONFIG_PLATFORM_RTD2880B), y)
266 EXTRA_CFLAGS += -DCONFIG_PLATFORM_RTD2880B
273 ifeq ($(CONFIG_PLATFORM_MIPS_RMI), y)
275 CROSS_COMPILE:=mipsisa32r2-uclibc-
277 KSRC:= /root/work/kernel_realtek
280 ifeq ($(CONFIG_PLATFORM_MIPS_PLM), y)
282 CROSS_COMPILE:=mipsisa32r2-uclibc-
284 KSRC:= /root/work/kernel_realtek
287 ifeq ($(CONFIG_PLATFORM_MSTAR389), y)
288 EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR389
290 CROSS_COMPILE:= mips-linux-gnu-
292 KSRC:= /home/mstar/mstar_linux/2.6.28.9/
295 ifeq ($(CONFIG_PLATFORM_MIPS_AR9132), y)
297 CROSS_COMPILE := mips-openwrt-linux-
298 KSRC := /home/alex/test_openwrt/tmp/linux-2.6.30.9
301 ifeq ($(CONFIG_PLATFORM_DMP_PHILIPS), y)
302 EXTRA_CFLAGS += -DRTK_DMP_PLATFORM
304 #CROSS_COMPILE:=/usr/local/msdk-4.3.6-mips-EL-2.6.12.6-0.9.30.3/bin/mipsel-linux-
305 CROSS_COMPILE:=/usr/local/toolchain_mipsel/bin/mipsel-linux-
306 KSRC ?=/usr/local/Jupiter/linux-2.6.12
309 ifeq ($(CONFIG_PLATFORM_RTK_DMP), y)
310 EXTRA_CFLAGS += -DRTK_DMP_PLATFORM
312 CROSS_COMPILE:=mipsel-linux-
314 KSRC ?= /usr/src/DMP_Kernel/jupiter/linux-2.6.12
317 ifeq ($(CONFIG_PLATFORM_MT53XX), y)
318 EXTRA_CFLAGS += -DCONFIG_PLATFORM_MT53XX
320 CROSS_COMPILE:= arm11_mtk_le-
322 KSRC?= /proj/mtk00802/BD_Compare/BDP/Dev/BDP_V301/BDP_Linux/linux-2.6.27
325 ifeq ($(CONFIG_PLATFORM_ARM_MX51_241H), y)
326 EXTRA_CFLAGS += -DCONFIG_WISTRON_PLATFORM
328 CROSS_COMPILE := /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
330 KSRC ?= /lib/modules/2.6.31-770-g0e46b52/source
333 ifeq ($(CONFIG_PLATFORM_ACTIONS_ATJ227X), y)
334 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ACTIONS_ATJ227X
336 CROSS_COMPILE := /home/cnsd4/project/actions/tools-2.6.27/bin/mipsel-linux-gnu-
338 KSRC := /home/cnsd4/project/actions/linux-2.6.27.28
341 ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
342 EXTRA_CFLAGS += -DCONFIG_PLATFORM_TI_DM365
344 CROSS_COMPILE := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-
346 KSRC := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci/linux-dm365
349 ifeq ($(CONFIG_PLATFORM_TEGRA3_CARDHU), y)
350 # default setting for Android 4.1, 4.2
351 EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
352 EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
353 EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
354 EXTRA_CFLAGS += -DDCONFIG_P2P_IPS
356 CROSS_COMPILE := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
357 KSRC := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/out/target/product/cardhu/obj/KERNEL
361 ifeq ($(CONFIG_PLATFORM_TEGRA4_DALMORE), y)
362 # default setting for Android 4.1, 4.2
363 EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
364 EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
365 EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
366 EXTRA_CFLAGS += -DDCONFIG_P2P_IPS
368 CROSS_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-
369 KSRC := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/out/target/product/dalmore/obj/KERNEL
373 ifeq ($(CONFIG_PLATFORM_ARM_TCC8900), y)
375 CROSS_COMPILE := /home/android_sdk/Telechips/SDK_2304_20110613/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
376 KSRC := /home/android_sdk/Telechips/SDK_2304_20110613/kernel
380 ifeq ($(CONFIG_PLATFORM_ARM_TCC8920), y)
382 CROSS_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-
383 KSRC := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/kernel
387 ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
388 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS -DCONFIG_MINIMAL_MEMORY_USAGE
390 CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
391 KSRC := /usr/src/release_fae_version/kernel25_A7_281x
395 ifeq ($(CONFIG_PLATFORM_ARM_URBETTER), y)
397 CROSS_COMPILE := /media/DATA-1/urbetter/arm-2009q3/bin/arm-none-linux-gnueabi-
398 KSRC := /media/DATA-1/urbetter/ics-urbetter/kernel
402 ifeq ($(CONFIG_PLATFORM_ARM_TI_PANDA), y)
404 #CROSS_COMPILE := /media/DATA-1/aosp/ics-aosp_20111227/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
405 #KSRC := /media/DATA-1/aosp/android-omap-panda-3.0_20120104
406 CROSS_COMPILE := /media/DATA-1/android-4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
407 KSRC := /media/DATA-1/android-4.0/panda_kernel/omap
411 ifeq ($(CONFIG_PLATFORM_MIPS_JZ4760), y)
412 EXTRA_CFLAGS += -DCONFIG_MINIMAL_MEMORY_USAGE
414 CROSS_COMPILE ?= /mnt/sdb5/Ingenic/Umido/mips-4.3/bin/mips-linux-gnu-
415 KSRC ?= /mnt/sdb5/Ingenic/Umido/kernel
418 ifeq ($(CONFIG_PLATFORM_SZEBOOK), y)
420 CROSS_COMPILE:=/opt/crosstool2/bin/armeb-unknown-linux-gnueabi-
422 KSRC:= ../code/linux-2.6.31.6-2020/
425 #Add setting for MN10300
426 ifeq ($(CONFIG_PLATFORM_MN10300), y)
427 EXTRA_CFLAGS += -DCONFIG_PLATFORM_MN10300
429 CROSS_COMPILE := mn10300-linux-
431 KSRC := /home/winuser/work/Plat_sLD2T_V3010/usr/src/linux-2.6.32.2
436 ifeq ($(CONFIG_PLATFORM_ARM_SUNxI), y)
437 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUNxI
439 CROSS_COMPILE := arm-none-linux-gnueabi-
441 #KSRC:= ../lichee/linux-3.0/
444 ifeq ($(CONFIG_PLATFORM_ARM_SUN6I), y)
445 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN6I
446 EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
447 # default setting for Android 4.1, 4.2
448 EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
449 EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
450 EXTRA_CFLAGS += -DDCONFIG_P2P_IPS
452 CROSS_COMPILE := arm-none-linux-gnueabi-
454 #KSRC:= ../lichee/linux-3.3/
457 ifeq ($(CONFIG_PLATFORM_ACTIONS_ATV5201), y)
458 EXTRA_CFLAGS += -DCONFIG_PLATFORM_ACTIONS_ATV5201
460 CROSS_COMPILE := mipsel-linux-gnu-
461 KVER := $(KERNEL_VER)
462 KSRC:= $(CFGDIR)/../../kernel/linux-$(KERNEL_VER)
465 ifneq ($(USER_MODULE_NAME),)
466 MODULE_NAME := $(USER_MODULE_NAME)
469 ifneq ($(KERNELRELEASE),)
471 rtk_core := core/rtw_cmd.o \
472 core/rtw_security.o \
475 core/rtw_ioctl_set.o \
476 core/rtw_ieee80211.o \
478 core/rtw_mlme_ext.o \
479 core/rtw_wlan_util.o \
493 $(MODULE_NAME)-y += $(rtk_core)
495 $(MODULE_NAME)-$(CONFIG_INTEL_WIDI) += core/rtw_intel_widi.o
497 $(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o \
500 $(MODULE_NAME)-y += core/rtw_efuse.o
502 $(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
504 $(MODULE_NAME)-y += $(_OS_INTFS_FILES)
506 CONFIG_RTL8723AS-VAU := m
507 obj-$(CONFIG_RTL8723AS-VAU) := $(MODULE_NAME).o
511 export CONFIG_RTL8723AS-VAU = m
516 $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules
519 $(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
522 install -p -m 644 $(MODULE_NAME).ko $(MODDESTDIR)
523 /sbin/depmod -a ${KVER}
526 rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
527 /sbin/depmod -a ${KVER}
531 /bin/bash script/Configure script/config.in
533 .PHONY: modules clean clean_odm-8192c
537 rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
539 rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
540 cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
541 cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
542 cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko