OSDN Git Service

c365539bbe037d9ec95b6cd35779bc65a1262213
[android-x86/kernel.git] / drivers / staging / rtl8723bs / Makefile
1 EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
2 EXTRA_CFLAGS += -O1
3 #EXTRA_CFLAGS += -O3
4 EXTRA_CFLAGS += -Wall
5 #EXTRA_CFLAGS += -Wextra
6 #EXTRA_CFLAGS += -Werror
7 #EXTRA_CFLAGS += -pedantic
8 #EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
9
10 EXTRA_CFLAGS += -I$(src)/include -I$(src)/hal -g
11
12 ccflags-y += -D__CHECK_ENDIAN__
13
14 #EXTRA_LDFLAGS += --strip-debug
15
16 ########################## Features ###########################
17 CONFIG_HW_PWRP_DETECTION = n
18 CONFIG_INTEL_WIDI = n
19 CONFIG_EXT_CLK = n
20 CONFIG_TRAFFIC_PROTECT = y
21 CONFIG_LOAD_PHY_PARA_FROM_FILE = y
22 CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY = n
23 CONFIG_CALIBRATE_TX_POWER_TO_MAX = n
24 CONFIG_ODM_ADAPTIVITY = n
25 CONFIG_SKIP_SIGNAL_SCALE_MAPPING = n
26 ######################## Wake On Lan ##########################
27 CONFIG_WOWLAN = n
28 CONFIG_GPIO_WAKEUP = n
29 CONFIG_PNO_SUPPORT = n
30 CONFIG_PNO_SET_DEBUG = n
31 CONFIG_AP_WOWLAN = n
32 ######### Notify SDIO Host Keep Power During Syspend ##########
33 CONFIG_RTW_SDIO_PM_KEEP_POWER = y
34 ###################### Platform Related #######################
35 CONFIG_PLATFORM_I386_PC = y
36 ###############################################################
37
38 ########### COMMON  #################################
39
40 _OS_INTFS_FILES :=      os_dep/osdep_service.o \
41                         os_dep/os_intfs.o \
42                         os_dep/sdio_intf.o \
43                         os_dep/sdio_ops_linux.o \
44                         os_dep/ioctl_linux.o \
45                         os_dep/xmit_linux.o \
46                         os_dep/mlme_linux.o \
47                         os_dep/recv_linux.o \
48                         os_dep/ioctl_cfg80211.o \
49                         os_dep/wifi_regd.o \
50                         os_dep/rtw_proc.o \
51                         os_dep/sdio_ops_linux.o
52
53 _HAL_INTFS_FILES :=     hal/hal_intf.o \
54                         hal/hal_com.o \
55                         hal/hal_com_phycfg.o \
56                         hal/hal_btcoex.o \
57                         hal/hal_sdio.o
58
59 _OUTSRC_FILES := hal/odm_debug.o        \
60                 hal/odm_HWConfig.o\
61                 hal/odm.o\
62                 hal/HalPhyRf.o\
63                 hal/odm_EdcaTurboCheck.o\
64                 hal/odm_DIG.o\
65                 hal/odm_PathDiv.o\
66                 hal/odm_DynamicBBPowerSaving.o\
67                 hal/odm_DynamicTxPower.o\
68                 hal/odm_CfoTracking.o\
69                 hal/odm_NoiseMonitor.o
70
71 EXTRA_CFLAGS += -I$(src)/hal/OUTSRC-BTCoexist
72 _OUTSRC_FILES += \
73                                 hal/HalBtc8723b1Ant.o \
74                                 hal/HalBtc8723b2Ant.o
75
76 ########### HAL_RTL8723B #################################
77 MODULE_NAME = r8723bs
78
79 _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
80                                         hal/Hal8723BPwrSeq.o
81
82 _HAL_INTFS_FILES +=     hal/rtl8723b_hal_init.o \
83                         hal/rtl8723b_phycfg.o \
84                         hal/rtl8723b_rf6052.o \
85                         hal/rtl8723b_dm.o \
86                         hal/rtl8723b_rxdesc.o \
87                         hal/rtl8723b_cmd.o \
88
89 _HAL_INTFS_FILES +=     \
90                         hal/sdio_halinit.o \
91                         hal/rtl8723bs_xmit.o \
92                         hal/rtl8723bs_recv.o
93
94 _HAL_INTFS_FILES += hal/sdio_ops.o
95
96 _OUTSRC_FILES += hal/HalHWImg8723B_BB.o\
97                         hal/HalHWImg8723B_MAC.o\
98                         hal/HalHWImg8723B_RF.o\
99                         hal/odm_RegConfig8723B.o\
100                         hal/HalPhyRf_8723B.o\
101                         hal/odm_RTL8723B.o
102
103 ########### END OF PATH  #################################
104
105
106 ifeq ($(CONFIG_HW_PWRP_DETECTION), y)
107 EXTRA_CFLAGS += -DCONFIG_HW_PWRP_DETECTION
108 endif
109
110 ifeq ($(CONFIG_INTEL_WIDI), y)
111 EXTRA_CFLAGS += -DCONFIG_INTEL_WIDI
112 endif
113
114 ifeq ($(CONFIG_EXT_CLK), y)
115 EXTRA_CFLAGS += -DCONFIG_EXT_CLK
116 endif
117
118 ifeq ($(CONFIG_TRAFFIC_PROTECT), y)
119 EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
120 endif
121
122 ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y)
123 EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE
124 endif
125
126 ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y)
127 EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_BY_REGULATORY
128 endif
129
130 ifeq ($(CONFIG_CALIBRATE_TX_POWER_TO_MAX), y)
131 EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_TO_MAX
132 endif
133
134 ifeq ($(CONFIG_ODM_ADAPTIVITY), y)
135 EXTRA_CFLAGS += -DCONFIG_ODM_ADAPTIVITY
136 endif
137
138 ifeq ($(CONFIG_SKIP_SIGNAL_SCALE_MAPPING), y)
139 EXTRA_CFLAGS += -DCONFIG_SKIP_SIGNAL_SCALE_MAPPING
140 endif
141
142 ifeq ($(CONFIG_WOWLAN), y)
143 EXTRA_CFLAGS += -DCONFIG_WOWLAN
144 EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
145 endif
146
147 ifeq ($(CONFIG_AP_WOWLAN), y)
148 EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN
149 EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
150 endif
151
152 ifeq ($(CONFIG_PNO_SUPPORT), y)
153 EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT
154 ifeq ($(CONFIG_PNO_SET_DEBUG), y)
155 EXTRA_CFLAGS += -DCONFIG_PNO_SET_DEBUG
156 endif
157 endif
158
159 ifeq ($(CONFIG_GPIO_WAKEUP), y)
160 EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP
161 endif
162
163 ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y)
164 EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
165 endif
166
167 ifeq ($(CONFIG_PLATFORM_I386_PC), y)
168 SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
169 ARCH ?= $(SUBARCH)
170 CROSS_COMPILE ?=
171 KVER  := $(shell uname -r)
172 KSRC := /lib/modules/$(KVER)/build
173 MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
174 INSTALL_PREFIX :=
175 endif
176
177 ifneq ($(KERNELRELEASE),)
178
179 rtk_core :=     core/rtw_cmd.o \
180                 core/rtw_security.o \
181                 core/rtw_debug.o \
182                 core/rtw_io.o \
183                 core/rtw_ioctl_set.o \
184                 core/rtw_ieee80211.o \
185                 core/rtw_mlme.o \
186                 core/rtw_mlme_ext.o \
187                 core/rtw_wlan_util.o \
188                 core/rtw_pwrctrl.o \
189                 core/rtw_rf.o \
190                 core/rtw_recv.o \
191                 core/rtw_sta_mgt.o \
192                 core/rtw_ap.o \
193                 core/rtw_xmit.o \
194                 core/rtw_btcoex.o \
195                 core/rtw_odm.o \
196                 core/rtw_efuse.o
197
198 $(MODULE_NAME)-y += $(rtk_core)
199
200 $(MODULE_NAME)-$(CONFIG_INTEL_WIDI) += core/rtw_intel_widi.o
201
202 $(MODULE_NAME)-y += $(_OS_INTFS_FILES)
203 $(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
204 $(MODULE_NAME)-y += $(_OUTSRC_FILES)
205 $(MODULE_NAME)-y += $(_PLATFORM_FILES)
206
207 obj-$(CONFIG_RTL8723BS) := $(MODULE_NAME).o
208
209 endif
210
211 export CONFIG_RTL8723BS = m
212
213 all: modules
214
215 modules:
216         $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd)  modules
217
218 strip:
219         $(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
220
221 install:
222         install -p -m 644 $(MODULE_NAME).ko  $(MODDESTDIR)
223         @cp -n rtl8723bs_nic.bin /lib/firmware/rtlwifi/rtl8723bs_nic.bin
224         @cp -n rtl8723bs_wowlan.bin /lib/firmware/rtlwifi/rtl8723bs_wowlan.bin
225         /sbin/depmod -a ${KVER}
226
227 uninstall:
228         rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
229         /sbin/depmod -a ${KVER}
230
231 config_r:
232         @echo "make config"
233         /bin/bash script/Configure script/config.in
234
235 cppcheck: cppcheck.log
236
237 cppcheck.log:
238         @echo "Creating cppcheck.log"
239         cppcheck -f --enable=all -Iinclude -Ihal -Ios_dep  . 2> cppcheck.log
240
241 .PHONY: modules clean
242
243 clean:
244         @rm -fr hal/*/*.mod.c hal/*/*.mod hal/*/*.o hal/*/.*.cmd hal/*/*.ko \
245                 hal/*.mod.c hal/*.mod hal/*.o hal/.*.cmd hal/*.ko \
246                 core/*.mod.c core/*.mod *.o core/.*.cmd core/*.ko \
247                 os_dep/*.mod.c os_dep/*.mod os_dep/*.o os_dep/.*.cmd *.ko \
248                 platform/*.mod.c platform/*.mod platform/*.o platform/.*.cmd platform/*.ko \
249                 Module.symvers Module.markers modules.order *.mod.c *.mod *.o .*.cmd *.ko *~ .tmp_versions \
250                 cppcheck.log