]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/blob - drivers/net/wireless/bcmdhd/Makefile
net: wireless: bcmdhd: boost wifi performance
[sojka/nv-tegra/linux-3.10.git] / drivers / net / wireless / bcmdhd / Makefile
1 # bcmdhd
2 #####################
3 # SDIO Basic feature
4 #####################
5
6 DHDCFLAGS += -Wall -Wstrict-prototypes -Dlinux -DLINUX -DBCMDRIVER            \
7         -DBCMDONGLEHOST -DUNRELEASEDCHIP -DBCMDMA32 -DBCMFILEIMAGE            \
8         -DDHDTHREAD -DSHOW_EVENTS -DBCMDBG -DWLP2P                            \
9         -DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT                                \
10         -DKEEP_ALIVE -DCSCAN -DPKT_FILTER_SUPPORT                             \
11         -DEMBEDDED_PLATFORM -DPNO_SUPPORT                                     \
12         -DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT                           \
13         -DCUSTOMER_HW2 -DGET_CUSTOM_MAC_ENABLE -DENABLE_INSMOD_NO_FW_LOAD     \
14         -DCUSTOM_COUNTRY_LOCALE -DNV_COUNTRY_CODE
15
16 #################
17 # Common feature
18 #################
19 DHDCFLAGS += -DWL_CFG80211
20 # Print out kernel panic point of file and line info when assertion happened
21 DHDCFLAGS += -DBCMASSERT_LOG
22
23 # keepalive
24 DHDCFLAGS += -DCUSTOM_KEEP_ALIVE_SETTING=28000
25
26 DHDCFLAGS += -DVSDB
27
28 # For p2p connection issue
29 DHDCFLAGS += -DWL_SCB_TIMEOUT=10
30
31 # TDLS enable
32 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
33 # For TDLS tear down inactive time 40 sec
34 DHDCFLAGS += -DCUSTOM_TDLS_IDLE_MODE_SETTING=40000
35 # for TDLS RSSI HIGH for establishing TDLS link
36 DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_HIGH=-60
37 # for TDLS RSSI HIGH for tearing down TDLS link
38 DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_LOW=-70
39
40 # Roaming
41 DHDCFLAGS += -DROAM_AP_ENV_DETECTION
42 DHDCFLAGS += -DROAM_ENABLE -DROAM_CHANNEL_CACHE -DROAM_API
43 DHDCFLAGS += -DENABLE_FW_ROAM_SUSPEND
44 # Roaming trigger
45 DHDCFLAGS += -DCUSTOM_ROAM_TRIGGER_SETTING=-75
46 DHDCFLAGS += -DCUSTOM_ROAM_DELTA_SETTING=10
47 # Set PM 2 always regardless suspend/resume
48 DHDCFLAGS += -DSUPPORT_PM2_ONLY
49
50 # For special PNO Event keep wake lock for 10sec
51 DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10
52 DHDCFLAGS += -DMIRACAST_AMPDU_SIZE=8
53
54 # Early suspend
55 DHDCFLAGS += -DDHD_USE_EARLYSUSPEND
56
57 # For Scan result patch
58 DHDCFLAGS += -DESCAN_RESULT_PATCH
59
60 # For Static Buffer
61 ifeq ($(CONFIG_BROADCOM_WIFI_RESERVED_MEM),y)
62   DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF
63   DHDCFLAGS += -DENHANCED_STATIC_BUF
64   DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT
65 endif
66 ifneq ($(CONFIG_DHD_USE_SCHED_SCAN),)
67 DHDCFLAGS += -DWL_SCHED_SCAN
68 endif
69
70 # Ioctl timeout 5000ms
71 DHDCFLAGS += -DIOCTL_RESP_TIMEOUT=5000
72
73 # Prevent rx thread monopolize
74 DHDCFLAGS += -DWAIT_DEQUEUE
75
76 # Config PM Control
77 DHDCFLAGS += -DCONFIG_CONTROL_PM
78
79 # idle count
80 DHDCFLAGS += -DDHD_USE_IDLECOUNT
81
82 # SKB TAILPAD to avoid out of boundary memory access
83 DHDCFLAGS += -DDHDENABLE_TAILPAD
84
85 # Wi-Fi Direct
86 DHDCFLAGS += -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
87 DHDCFLAGS += -DWL_CFG80211_STA_EVENT
88 DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
89 DHDCFLAGS += -DWL_ENABLE_P2P_IF
90
91 ##########################
92 # driver type
93 # m: module type driver
94 # y: built-in type driver
95 ##########################
96 DRIVER_TYPE ?= $(CONFIG_BCMDHD)
97
98 #########################
99 # Chip dependent feature
100 #########################
101 ifneq ($(CONFIG_BCMDYNAMIC),)
102 # Common options
103   DHDCFLAGS += -DCUSTOM_SDIO_F2_BLKSIZE=256
104   DHDCFLAGS += -DRXFRAME_THREAD
105   DHDCFLAGS += -DDHDTCPACK_SUPPRESS
106   DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
107
108 # It's safe to make this bigger on any chip
109   DHDCFLAGS += -DMAX_HDR_READ=128
110
111 # Dynamic
112   DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=bcmdhd_custom_ampdu_ba_wsize
113   DHDCFLAGS += -DCUSTOM_GLOM_SETTING=bcmdhd_custom_glom_setting
114   DHDCFLAGS += -DCUSTOM_RXCHAIN=bcmdhd_custom_rxchain
115   DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=bcmdhd_custom_ampdu_mpdu
116   DHDCFLAGS += -DCUSTOM_PSPRETEND_THR=bcmdhd_custom_pspretend_thr
117   DHDCFLAGS += -DRXCB=bcmdhd_custom_rxcb
118
119 # Define on/off delay
120   DHDCFLAGS += -DWIFI_TURNON_DELAY=bcmdhd_wifi_turnon_delay
121   DHDCFLAGS += -DWIFI_TURNOFF_DELAY=bcmdhd_wifi_turnoff_delay
122
123 # These are protected by runtime checks now
124   DHDCFLAGS += -DPROP_TXSTATUS_VSDB
125   DHDCFLAGS += -DVSDB_BW_ALLOCATE_ENABLE
126   DHDCFLAGS += -DBCMSDIOH_TXGLOM
127   DHDCFLAGS += -DUSE_WL_TXBF
128   DHDCFLAGS += -DUSE_WL_FRAMEBURST
129   DHDCFLAGS += -DSUPPORT_P2P_GO_PS
130   DHDCFLAGS += -DWL11U
131   DHDCFLAGS += -DDHD_ENABLE_LPC
132 endif
133
134 ifneq ($(CONFIG_BCM43241),)
135   DHDCFLAGS += -DBCM43241_CHIP
136   DHDCFLAGS += -DCUSTOM_SDIO_F2_BLKSIZE=256
137   DHDCFLAGS += -DAMPDU_HOSTREORDER
138   DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=32
139   DHDCFLAGS += -DPROP_TXSTATUS_VSDB
140   DHDCFLAGS += -DCUSTOM_DPC_PRIO_SETTING=MAX_USER_RT_PRIO/2
141   DHDCFLAGS += -DRXFRAME_THREAD
142   DHDCFLAGS += -DDHDTCPACK_SUPPRESS
143   DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
144   DHDCFLAGS += -DVSDB_BW_ALLOCATE_ENABLE
145   DHDCFLAGS += -DSDIO_CRC_ERROR_FIX
146   DHDCFLAGS += -DP2P_DISCOVERY_WAR
147
148 # Define on/off delay
149   DHDCFLAGS += -DWIFI_TURNON_DELAY=400
150   DHDCFLAGS += -DWIFI_TURNOFF_DELAY=400
151 endif
152
153 ifneq ($(CONFIG_BCM4354),)
154   DHDCFLAGS += -DBCM4354_CHIP
155
156 # tput enhancement
157   DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1 -DRXCB
158   DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1
159   DHDCFLAGS += -DDHDTCPACK_SUPPRESS
160   DHDCFLAGS += -DUSE_WL_TXBF
161   DHDCFLAGS += -DUSE_WL_FRAMEBURST
162   DHDCFLAGS += -DRXFRAME_THREAD
163   DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64
164   DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
165 # DHDCFLAGS += -DPROP_TXSTATUS_VSDB
166   DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=40
167   DHDCFLAGS += -DMAX_HDR_READ=128
168   DHDCFLAGS += -DDHD_FIRSTREAD=128
169   DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=16
170   DHDCFLAGS += -DDISABLE_ROAM_EVENT
171
172 # New Features
173   DHDCFLAGS += -DSUPPORT_P2P_GO_PS
174   DHDCFLAGS += -DWL11U
175   DHDCFLAGS += -DMFP
176   DHDCFLAGS += -DDHD_ENABLE_LPC
177   DHDCFLAGS += -DCUSTOM_PSPRETEND_THR=30
178   DHDCFLAGS += -DCUSTOM_SDIO_F2_BLKSIZE=256
179
180 # Make same as proven good value from other platform
181   DHDCFLAGS += -DCUSTOM_DPC_PRIO_SETTING=45
182
183 # Define on/off delay
184   DHDCFLAGS += -DWIFI_TURNON_DELAY=200
185   DHDCFLAGS += -DWIFI_TURNOFF_DELAY=200
186   DHDCFLAGS += -DBCMDMA64OSL=1
187
188 endif
189
190 ifneq ($(CONFIG_BCM4339),)
191   DHDCFLAGS += -DBCM4339_CHIP
192
193 # tput enhancement
194   DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
195   DHDCFLAGS += -DBCMSDIOH_TXGLOM -DBCMSDIOH_TXGLOM_HIGHSPEED
196   DHDCFLAGS += -DDHDTCPACK_SUPPRESS
197   DHDCFLAGS += -DUSE_WL_TXBF
198   DHDCFLAGS += -DUSE_WL_FRAMEBURST
199   DHDCFLAGS += -DRXFRAME_THREAD
200   DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64
201   DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
202 # DHDCFLAGS += -DPROP_TXSTATUS_VSDB
203   DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=32
204
205 # New Features
206   DHDCFLAGS += -DWL11U
207   DHDCFLAGS += -DDHD_ENABLE_LPC
208   DHDCFLAGS += -DCUSTOM_PSPRETEND_THR=30
209 endif
210
211 ifneq ($(CONFIG_BCMDHD_SDIO),)
212   DHDCFLAGS += -DBDC -DDHD_BCMEVENTS -DMMC_SDIO_ABORT
213   DHDCFLAGS += -DBCMSDIO -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR
214   DHDCFLAGS += -DPROP_TXSTATUS
215   DHDCFLAGS += -DQMONITOR
216 endif
217
218 ifeq ($(CONFIG_BCMDHD_HW_OOB),y)
219   DHDCFLAGS += -DHW_OOB -DOOB_INTR_ONLY
220 else
221   DHDCFLAGS += -DSDIO_ISR_THREAD
222 endif
223
224 ifneq ($(CONFIG_BCMDHD_PCIE),)
225   DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=-1
226 endif
227
228 #EXTRA_LDFLAGS += --strip-debug
229
230 EXTRA_CFLAGS += $(DHDCFLAGS) -DDHD_DEBUG
231 EXTRA_CFLAGS += -DSRCBASE=\"$(src)\"
232 EXTRA_CFLAGS += -I$(src)/include/ -I$(src)/
233 KBUILD_CFLAGS += -I$(LINUXDIR)/include -I$(shell pwd)
234
235 DHDOFILES := dhd_pno.o dhd_common.o dhd_ip.o dhd_custom_gpio.o \
236         dhd_linux.o dhd_linux_sched.o dhd_cfg80211.o dhd_linux_wq.o aiutils.o bcmevent.o \
237         bcmutils.o bcmwifi_channels.o hndpmu.o linux_osl.o sbutils.o siutils.o \
238         wl_android.o wl_cfg80211.o wl_cfgp2p.o wl_cfg_btcoex.o wldev_common.o wl_linux_mon.o  \
239         dhd_linux_platdev.o dhd_pno.o dhd_linux_wq.o wl_cfg_btcoex.o \
240         hnd_pktq.o hnd_pktpool.o
241
242 ifneq ($(CONFIG_BCMDHD_SDIO),)
243   DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o
244   DHDOFILES += dhd_cdc.o dhd_wlfc.o dhd_sdio.o dhd_qmon.o
245 endif
246
247 ifneq ($(CONFIG_BCMDHD_PCIE),)
248   DHDOFILES += dhd_pcie.o dhd_pcie_linux.o dhd_msgbuf.o dhd_flowring.o
249   DHDOFILES += pcie_core.o
250 endif
251
252 ifneq ($(CONFIG_BCMDHD_CUSTOM_SYSFS_TEGRA),)
253   DHDOFILES += dhd_custom_sysfs_tegra.o
254   DHDOFILES += dhd_custom_sysfs_tegra_ping.o
255   DHDOFILES += dhd_custom_sysfs_tegra_rssi.o
256   DHDOFILES += dhd_custom_sysfs_tegra_scan.o
257   DHDOFILES += dhd_custom_sysfs_tegra_stat.o
258   DHDOFILES += dhd_custom_sysfs_tegra_tcpdump.o
259 endif
260
261 ifneq ($(CONFIG_BCMDHD_CUSTOM_NET_PERF_TEGRA),)
262   DHDOFILES += dhd_custom_net_perf_tegra.o
263 endif
264
265 bcmdhd-objs := $(DHDOFILES)
266 obj-$(DRIVER_TYPE)   += bcmdhd.o
267
268 all:
269         @echo "$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules"
270         @$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules
271
272 clean:
273         rm -rf *.o *.ko *.mod.c *~ .*.cmd *.o.cmd .*.o.cmd \
274         Module.symvers modules.order .tmp_versions modules.builtin
275
276 install:
277         @$(MAKE) --no-print-directory -C $(KDIR) \
278                 SUBDIRS=$(CURDIR) modules_install