a89c70c55d7204c88cafa0cbce3852d32e763eb6
[GitHub/exynos8895/android_kernel_samsung_universal8895.git] / drivers / net / wireless / bcmdhd4361 / Makefile
1 #
2 # Copyright (C) 1999-2019, Broadcom.
3 #
4 # Unless you and Broadcom execute a separate written software license
5 # agreement governing use of this software, this software is licensed to you
6 # under the terms of the GNU General Public License version 2 (the "GPL"),
7 # available at http://www.broadcom.com/licenses/GPLv2.php, with the
8 # following added to such license:
9 #
10 # As a special exception, the copyright holders of this software give you
11 # permission to link this software with independent modules, and to copy and
12 # distribute the resulting executable under terms of your choice, provided that
13 # you also meet, for each linked independent module, the terms and conditions of
14 # the license of that module. An independent module is a module which is not
15 # derived from this software. The special exception does not apply to any
16 # modifications of the software.
17 #
18 # Notwithstanding the above, under no circumstances may you combine this
19 # software in any way with any other Broadcom software provided under a license
20 # other than the GPL, without Broadcom's express prior written consent.
21 #
22 #
23 # <<Broadcom-WL-IPTag/Open:>>
24 #
25 # bcmdhd
26 #####################
27 # Basic feature
28 #####################
29
30 DHDCFLAGS += -Wall -Wstrict-prototypes -Dlinux -DLINUX -DBCMDRIVER \
31 -DBCMDONGLEHOST -DUNRELEASEDCHIP -DBCMDMA32 -DBCMFILEIMAGE \
32 -DDHDTHREAD -DDHD_BCMEVENTS -DSHOW_EVENTS -DBCMDBG -DWLP2P \
33 -DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT -DKEEP_ALIVE -DCSCAN \
34 -DPKT_FILTER_SUPPORT -DEMBEDDED_PLATFORM -DPNO_SUPPORT \
35 -DSEC_ENHANCEMENT
36
37 #####################
38 # Bus Interface Type
39 #####################
40 ifneq ($(CONFIG_BCMDHD_PCIE),)
41 BUS_IFACE_PCIE=y
42 else
43 BUS_IFACE_SDIO=y
44 endif
45
46 #####################
47 # SDIO I/F
48 #####################
49 ifeq ($(BUS_IFACE_SDIO),y)
50 DHDCFLAGS += -DBDC -DDHD_BCMEVENTS -DMMC_SDIO_ABORT
51 DHDCFLAGS += -DBCMSDIO -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR
52 DHDCFLAGS += -U__ARM_ARCH_7A__
53 ifeq ($(CONFIG_BCMDHD_OOB_HOST_WAKE),y)
54 DHDCFLAGS += -DOOB_INTR_ONLY
55 endif
56 # DPC priority
57 DHDCFLAGS += -DCUSTOM_DPC_PRIO_SETTING=98
58 # idle count
59 DHDCFLAGS += -DDHD_USE_IDLECOUNT
60 # SKB TAILPAD to avoid out of boundary memory access
61 DHDCFLAGS += -DDHDENABLE_TAILPAD
62 # Enable PROP_TXSTATUS
63 DHDCFLAGS += -DPROP_TXSTATUS -DLIMIT_BORROW
64 DHDCFLAGS += -DSUPPORT_P2P_GO_PS
65 # Debug for DPC Thread watchdog bark
66 DHDCFLAGS += -DDEBUG_DPC_THREAD_WATCHDOG
67 # KSO Attempts count
68 DHDCFLAGS += -DCUSTOM_MAX_KSO_ATTEMPTS=64
69 endif
70
71 #####################
72 # PCIE I/F
73 #####################
74 ifeq ($(BUS_IFACE_PCIE),y)
75 DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE
76 # Use the external WLAN_HOST_WAKE pin to wake up host
77 ifeq ($(CONFIG_BCMDHD_OOB_HOST_WAKE),y)
78 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
79 endif
80 # DPC priority
81 DHDCFLAGS += -DCUSTOM_DPC_PRIO_SETTING=-1
82 # Disable watchdog thread
83 DHDCFLAGS += -DCUSTOM_DHD_WATCHDOG_MS=0
84 # Set D3_ACK response timeout value
85 DHDCFLAGS += -DD3_ACK_RESP_TIMEOUT=4000
86 # Use Coherent memory for ring
87 DHDCFLAGS += -DDHD_USE_COHERENT_MEM_FOR_RING
88 # Alloc Coherent memory from DMA coherent pool
89 DHDCFLAGS += -DDHD_ALLOC_COHERENT_MEM_FROM_ATOMIC_POOL
90 # Enable Link down recovery
91 DHDCFLAGS += -DSUPPORT_LINKDOWN_RECOVERY
92 # Enable Dongle Isolation
93 DHDCFLAGS += -DDONGLE_ENABLE_ISOLATION
94 # Enable Firmware Coredump
95 DHDCFLAGS += -DDHD_FW_COREDUMP
96 # Enable PKTID AUDIT
97 DHDCFLAGS += -DDHD_PKTID_AUDIT_ENABLED
98 # Enable Load Balancing support by default.
99 # DHD_LB_RXP - Perform RX Packet processing in parallel
100 # DHD_LB_STATS - To display the Load Blancing statistics
101 DHDCFLAGS += -DDHD_LB -DDHD_LB_RXP -DDHD_LB_TXP -DDHD_LB_STATS
102 ifeq ($(filter y,$(CONFIG_ARCH_SM8150) $(CONFIG_SOC_EXYNOS8890)),y)
103 DHDCFLAGS += -DWAKEUP_KSOFTIRQD_POST_NAPI_SCHEDULE
104 endif
105 # Extended HANG event with reason codes
106 DHDCFLAGS += -DDHD_USE_EXTENDED_HANG_REASON
107 # DHDCFLAGS += -DDHD_RECOVER_TIMEOUT
108 # HEAP ASLR
109 DHDCFLAGS += -DBCM_ASLR_HEAP
110 ifeq ($(filter y,$(CONFIG_SOC_EXYNOS8895) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
111 # Default Tx LB Enable
112 DHDCFLAGS += -DDHD_LB_TXP_DEFAULT_ENAB
113 endif
114 # PCIe interrupt affinity control interface
115 DHDCFLAGS += -DSET_PCIE_IRQ_CPU_CORE
116 # ROT and Scan timeout debugging due to Kernel scheduling problem
117 DHDCFLAGS += -DDHD_KERNEL_SCHED_DEBUG
118 endif
119
120 #################
121 # Common feature
122 #################
123
124 DHDCFLAGS += -DCUSTOMER_HW4 -DCUSTOMER_HW4_DEBUG -DCUSTOMER_HW4_PRIVATE_CMD
125 DHDCFLAGS += -DWL_CFG80211
126 #DHDCFLAGS += -DDHD_INIT_DEFAULT_MEMDUMP
127
128 # DMA64 suppports on 64bit Architecture
129 ifeq ($(CONFIG_64BIT),y)
130 DHDCFLAGS := $(filter-out -DBCMDMA32,$(DHDCFLAGS))
131 DHDCFLAGS += -DBCMDMA64OSL
132 endif
133
134 # Debug
135 DHDCFLAGS += -DSIMPLE_MAC_PRINT
136 DHDCFLAGS += -DDEBUGFS_CFG80211
137 # Enable wakelock for legacy scan
138 DHDCFLAGS += -DDHD_USE_SCAN_WAKELOCK
139 # Enable wakelock debug function
140 DHDCFLAGS += -DDHD_TRACE_WAKE_LOCK
141 # Print out kernel panic point of file and line info when assertion happened
142 DHDCFLAGS += -DBCMASSERT_LOG
143 # Collect Current Assoc/Reject Status for Big Data logging
144 DHDCFLAGS += -DDHD_ENABLE_BIGDATA_LOGGING
145 # Enable SI utility error log
146 DHDCFLAGS += -DSI_ERROR_ENFORCE
147
148 # Print 8021X
149 DHDCFLAGS += -DDHD_8021X_DUMP
150
151 # Print DHCP
152 DHDCFLAGS += -DDHD_DHCP_DUMP
153
154 # Print ICMP
155 DHDCFLAGS += -DDHD_ICMP_DUMP
156
157 # VSDB
158 DHDCFLAGS += -DVSDB
159
160 # Wi-Fi Direct
161 DHDCFLAGS += -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
162 # For p2p connection issue
163 DHDCFLAGS += -DWL_SCB_TIMEOUT=10
164 # For TDLS tear down inactive time 10 sec
165 DHDCFLAGS += -DCUSTOM_TDLS_IDLE_MODE_SETTING=10000
166 # for TDLS RSSI HIGH for establishing TDLS link
167 DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_HIGH=-80
168 # for TDLS RSSI HIGH for tearing down TDLS link
169 DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_LOW=-85
170
171 # Roaming
172 DHDCFLAGS += -DROAM_AP_ENV_DETECTION
173 DHDCFLAGS += -DROAM_ENABLE -DROAM_CHANNEL_CACHE -DROAM_API
174 DHDCFLAGS += -DENABLE_FW_ROAM_SUSPEND
175 DHDCFLAGS += -DDHD_LOSSLESS_ROAMING
176 DHDCFLAGS += -DSKIP_ROAM_TRIGGER_RESET
177
178 # Enable Roam time thresh
179 DHDCFLAGS += -DENABLE_MAX_DTIM_IN_SUSPEND
180 DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT_IN_SUSPEND=10
181 DHDCFLAGS += -DCUSTOM_ROAM_TIME_THRESH_IN_SUSPEND=6000
182 DHDCFLAGS += -DMAX_DTIM_ALLOWED_INTERVAL=925
183
184 # CCX
185 ifeq ($(CONFIG_BRCM_CCX),y)
186 DHDCFLAGS += -DBCMCCX
187 endif
188
189 # SoftAP
190 DHDCFLAGS += -DWL_SUPPORT_AUTO_CHANNEL -DSUPPORT_HIDDEN_AP
191 DHDCFLAGS += -DSUPPORT_SOFTAP_SINGL_DISASSOC
192 DHDCFLAGS += -DDISABLE_11H_SOFTAP
193 # For support WPA and WPA2 mixed mode
194 DHDCFLAGS += -DSUPPORT_SOFTAP_WPAWPA2_MIXED
195
196 # HW4 specific features
197 DHDCFLAGS += -DSUPPORT_PM2_ONLY
198 DHDCFLAGS += -DSUPPORT_DEEP_SLEEP
199 DHDCFLAGS += -DSUPPORT_AMPDU_MPDU_CMD
200 DHDCFLAGS += -DSOFTAP_SEND_HANGEVT
201 DHDCFLAGS += -DNUM_SCB_MAX_PROBE=3
202 DHDCFLAGS += -DDHD_USE_ATOMIC_PKTGET
203 DHDCFLAGS += -DTDLS_MSG_ONLY_WFD
204 DHDCFLAGS += -DCUSTOM_KEEP_ALIVE_SETTING=30000
205 DHDCFLAGS += -DCUSTOM_EVENT_PM_WAKE=30
206 DHDCFLAGS += -DENABLE_TDLS_AUTO_MODE
207 DHDCFLAGS += -DP2P_SKIP_DFS
208 DHDCFLAGS += -DKEEP_WIFION_OPTION
209 DHDCFLAGS += -DPREVENT_REOPEN_DURING_HANG
210 DHDCFLAGS += -DEXPLICIT_DISCIF_CLEANUP
211 DHDCFLAGS += -DSKIP_WLFC_ON_CONCURRENT
212 DHDCFLAGS += -DP2P_LISTEN_OFFLOADING
213 DHDCFLAGS += -DUNSET_FW_ROAM_WIPHY_FLAG
214 DHDCFLAGS += -DCUSTOM_LONG_RETRY_LIMIT=12
215 DHDCFLAGS += -DDISABLE_ANDROID_PNO
216 DHDCFLAGS += -DSUPPORT_SET_TID
217
218 # For special PNO Event keep wake lock for 10sec
219 DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10
220
221 # For IPV6 Neighbor Discovery Offload Support
222 DHDCFLAGS += -DIPV6_NDO_SUPPORT
223
224 # Early suspend
225 DHDCFLAGS += -DDHD_USE_EARLYSUSPEND
226
227 # WiFi turn off delay
228 DHDCFLAGS += -DWIFI_TURNOFF_DELAY=100
229
230 # For Scan result patch
231 DHDCFLAGS += -DESCAN_RESULT_PATCH
232 DHDCFLAGS += -DDUAL_ESCAN_RESULT_BUFFER
233 DHDCFLAGS += -DESCAN_BUF_OVERFLOW_MGMT
234
235 # For Static Buffer
236 ifeq ($(CONFIG_BROADCOM_WIFI_RESERVED_MEM),y)
237 DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF
238 DHDCFLAGS += -DENHANCED_STATIC_BUF
239 DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT
240 ifeq ($(BUS_IFACE_PCIE),y)
241 # Use preallocated IOCTL, EVENT and INFO buffer
242 DHDCFLAGS += -DDHD_USE_STATIC_CTRLBUF
243 ifeq ($(CONFIG_BCMDHD_PREALLOC_MEMDUMP),y)
244 DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP
245 endif
246 endif # BUS_IFACE_PCIE
247 endif # CONFIG_BROADCOM_WIFI_RESERVED_MEM
248
249 # Ioctl timeout 5000ms
250 DHDCFLAGS += -DIOCTL_RESP_TIMEOUT=5000
251
252 # Priority mismatch fix with kernel stack
253 DHDCFLAGS += -DPKTPRIO_OVERRIDE
254
255 # Prevent rx thread monopolize
256 DHDCFLAGS += -DWAIT_DEQUEUE
257
258 # Control PM related value for MFG process(Read from file)
259 DHDCFLAGS += -DDHD_PM_CONTROL_FROM_FILE
260
261 # Use Android wake lock mechanism
262 DHDCFLAGS += -DCONFIG_HAS_WAKELOCK
263
264 # Used short dwell time during initial scan
265 DHDCFLAGS += -DUSE_INITIAL_SHORT_DWELL_TIME
266
267 # Korea and Japan ccode revision will be fixed by nvram's value
268 DHDCFLAGS += -DKEEP_KR_REGREV
269 DHDCFLAGS += -DKEEP_JP_REGREV
270
271 # NAN feature
272 #Until SDK update, uncoditionally enabling NAN for now
273 #ifeq ($(CONFIG_WL_NAN),y)
274 DHDCFLAGS += -DWL_NAN -DWL_NAN_DISC_CACHE
275 #endif // endif
276
277 # FCC power limit control on ch12/13.
278 DHDCFLAGS += -DFCC_PWR_LIMIT_2G
279
280 # WFA Certification feature
281 DHDCFLAGS += -DUSE_WFA_CERT_CONF
282
283 # Change the WL_SCAN_TIMER_INTERVAL_MS of DHD
284 DHDCFLAGS += -DCUSTOMER_SCAN_TIMEOUT_SETTING
285
286 # Enable HANG event test private command
287 DHDCFLAGS += -DSUPPORT_TRIGGER_HANG_EVENT
288
289 # Enable Checking Blob existence
290 DHDCFLAGS += -DDHD_BLOB_EXISTENCE_CHECK
291
292 # Random mac scan
293 #DHDCFLAGS += -DSUPPORT_RANDOM_MAC_SCAN
294
295 # WLC_E_SET_SSID fail
296 DHDCFLAGS += -DSET_SSID_FAIL_CUSTOM_RC=100
297
298 # Enable to block Band A(5G), Only support Band B(2G)
299 ifeq ($(CONFIG_WLAN_5GDISABLE),y)
300 DHDCFLAGS += -DDHD_2G_ONLY_SUPPORT
301 endif
302
303 # Disable VHT(5G HT80) mode
304 ifeq ($(CONFIG_WLAN_VHTDISABLE),y)
305 DHDCFLAGS += -DDHD_DISABLE_VHTMODE
306 endif
307
308 # Use legacy random mac
309 # Disable the legacy randmac and enable scanmac
310 #DHDCFLAGS += -DLEGACY_RANDOM_MAC
311
312 DHDCFLAGS += -DBCMCRYPTO_COMPONENT
313
314 # Android Version Check from Platform source
315 DHDCFLAGS += -DANDROID_PLATFORM_VERSION=9
316
317 # TCP SYNC flood attack block
318 DHDCFLAGS += -DDHDTCPSYNC_FLOOD_BLK -DTCP_SYNC_FLOOD_LIMIT=50
319
320 ##############################
321 # Android Platform Definition
322 ##############################
323
324 # bcmdhd
325 #######################
326 # Android N features
327 #######################
328
329 # Definitions are filtered by Kernel version
330 DHDCFLAGS += -DWL_ENABLE_P2P_IF
331 DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES
332
333 # Default definitions for KitKat, Lollipop
334 DHDCFLAGS += -DWL_CFG80211_STA_EVENT
335 DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
336
337 # To support p2p private command on kernel 3.8 or above
338 DHDCFLAGS += -DWL_NEWCFG_PRIVCMD_SUPPORT
339
340 # Link Statistics feature
341 DHDCFLAGS += -DLINKSTAT_SUPPORT
342
343 # To support WL_VENDOR_EXT_SUPPORT
344 DHDCFLAGS += -DWL_VENDOR_EXT_SUPPORT
345
346 # Extra file list for Lollipop
347 DHD_ANDROID_OFILES := wl_cfgvendor.o bcmxtlv.o bcm_app_utils.o
348
349 #PNO Scan Result Version
350 DHDCFLAGS += -DPFN_SCANRESULT_2
351
352 #RSSI Monitor
353 DHDCFLAGS += -DRSSI_MONITOR_SUPPORT
354
355 #APF
356 DHDCFLAGS += -DAPF
357
358 #Get valid channels on SoftAP
359 DHDCFLAGS += -DDHD_GET_VALID_CHANNELS
360
361 #Debugaility
362 DHDCFLAGS += -DDNGL_EVENT_SUPPORT
363
364 # GN4 platform still disabled Lollipop features
365 ifeq ($(filter y,$(CONFIG_MACH_UNIVERSAL5433) $(CONFIG_ARCH_APQ8084)),y)
366 DHD_ANDROID_OFILES :=$(filter-out wl_cfgvendor.o,$(DHD_ANDROID_OFILES))
367 DHDCFLAGS :=$(filter-out -DLINKSTAT_SUPPORT,$(DHDCFLAGS))
368 DHDCFLAGS :=$(filter-out -DWL_VENDOR_EXT_SUPPORT,$(DHDCFLAGS))
369 endif
370
371 ##########################
372 # driver type
373 # m: module type driver
374 # y: built-in type driver
375 ##########################
376 DRIVER_TYPE ?= m
377
378 #########################
379 # Chip dependent feature
380 #########################
381 # Chipsets supported both SDIO and PCIE
382 ifneq ($(CONFIG_BCM4375),)
383 DHDCFLAGS += -DBCM4375_CHIP -DSUPPORT_MULTIPLE_REVISION
384 DHDCFLAGS += -DSUPPORT_BCM4375_MIXED_MODULES -DSUPPORT_MULTIPLE_BOARDTYPE
385 DHDCFLAGS += -DMIMO_ANT_SETTING
386 DHDCFLAGS += -DUSE_CID_CHECK
387 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
388 DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT=6
389 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
390 DHDCFLAGS += -DDHD_SSSR_DUMP
391 # tput enhancement for common
392 DHDCFLAGS += -DUSE_WL_TXBF
393 DHDCFLAGS += -DUSE_WL_FRAMEBURST
394 DHDCFLAGS += -DDISABLE_FRAMEBURST_VSDB
395 DHDCFLAGS += -DDISABLE_WL_FRAMEBURST_SOFTAP
396 DHDCFLAGS += -DDISABLE_PM_BCNRX
397 # Debugability
398 DHDCFLAGS += -DDEBUGABILITY_ECNTRS_LOGGING
399 DHDCFLAGS += -DDEBUGABILITY_ETD_PRSRV_LOGS
400 # Customer ant select and set PM
401 DHDCFLAGS += -DCUSTOM_SET_ANTNPM
402 DHDCFLAGS += -DCUSTOM_BLOCK_DEAUTH_AT_EAP_FAILURE
403 # Customer ocl disabe
404 DHDCFLAGS += -DCUSTOM_SET_OCLOFF
405
406 DHDCFLAGS += -DWL_STATIC_IF
407 DHDCFLAGS += -DWL_STATIC_IFNAME_PREFIX="\"swlan0\""
408
409 #Iface force dev close
410 DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
411
412 # tput enhancement for PCIE
413 ifeq ($(BUS_IFACE_PCIE),y)
414 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
415 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
416 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
417 endif
418
419 ifeq ($(CONFIG_ARCH_QCOM),y)
420 DHDCFLAGS += -DCONFIG_ARCH_MSM
421 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
422 endif
423
424 ifeq ($(CONFIG_ARCH_MSM),y)
425 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
426 endif
427
428 ifeq ($(CONFIG_SOC_EXYNOS9810),y)
429 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
430 DHDCFLAGS += -DUSE_DMA_LOCK
431 DHDCFLAGS += -DDHD_MAP_LOGGING
432 DHDCFLAGS += -DDHD_MAP_PKTID_LOGGING
433 endif
434
435 # New Features
436 DHDCFLAGS += -DWL11U -DMFP
437 DHDCFLAGS += -DBCMCCX
438 DHDCFLAGS += -DWES_SUPPORT
439 DHDCFLAGS += -DOKC_SUPPORT
440 DHDCFLAGS += -DWLTDLS
441 DHDCFLAGS += -DWLFBT
442 DHDCFLAGS += -DDHD_ENABLE_LPC
443 DHDCFLAGS += -DWLAIBSS -DWLAIBSS_PS
444 # DHDCFLAGS += -DWLADPS
445 # DHDCFLAGS += -DWLADPS_SEAK_AP_WAR
446 DHDCFLAGS += -DWLADPS_PRIVATE_CMD
447 DHDCFLAGS += -DWL_BAM
448 DHDCFLAGS += -DWL_BAM_FILE_PATH="\"/data/misc/conn/\""
449 DHDCFLAGS += -DWL_RELMCAST
450 DHDCFLAGS += -DSUPPORT_LTECX
451 DHDCFLAGS += -DSUPPORT_2G_VHT -DSUPPORT_5G_1024QAM_VHT
452 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
453 DHDCFLAGS += -DENABLE_IPMCAST_FILTER
454 # virtual interface for RSDB
455 DHDCFLAGS += -DWL_VIRTUAL_APSTA
456 # disable pruned scan
457 DHDCFLAGS += -DDISABLE_PRUNED_SCAN
458 # Remove common feature for BCM4375
459 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
460 # Block ARP during DHCP on STA/SoftAP concurrent mode
461 DHDCFLAGS += -DAPSTA_BLOCK_ARP_DURING_DHCP
462 # Use restricted channels on STA/SoftAP concurrent mode
463 DHDCFLAGS += -DAPSTA_RESTRICTED_CHANNEL
464 DHDCFLAGS += -DDHD_LOG_DUMP
465 ifneq ($(CUSTOM_LOG_DUMP_BUFSIZE_MB),)
466 DHDCFLAGS += -DCUSTOM_LOG_DUMP_BUFSIZE_MB=$(CUSTOM_LOG_DUMP_BUFSIZE_MB)
467 endif
468
469 DHDCFLAGS += -DWL_SUPP_EVENT
470 DHDCFLAGS += -DFILTER_IE
471 DHDCFLAGS += -DNDO_CONFIG_SUPPORT
472 # WBTEXT (11kv) feature
473 DHDCFLAGS += -DWBTEXT
474 DHDCFLAGS += -DWBTEXT_BTMDELTA=0
475 # LOGTRACE_EVENT
476 DHDCFLAGS += -DSHOW_LOGTRACE
477 DHDCFLAGS += -DLOGTRACE_FROM_FILE
478 # LAST ROAM EVENT LOG
479 DHDCFLAGS += -DWL_LASTEVT
480 # Higher rate beacon transmission at softAP
481 DHDCFLAGS += -DSUPPORT_AP_HIGHER_BEACONRATE
482 # Enhanced radio power save with NOA at softAP
483 DHDCFLAGS += -DSUPPORT_AP_RADIO_PWRSAVE
484 # Expand TCP tx queue to 10 times of default size
485 DHDCFLAGS += -DTSQ_MULTIPLIER=10
486 # HANG simulation
487 DHDCFLAGS += -DDHD_HANG_SEND_UP_TEST
488 # Support Monitor Mode
489 DHDCFLAGS += -DWL_MONITOR
490 # Enable health check event handling
491 DHDCFLAGS += -DDNGL_EVENT_SUPPORT
492 DHDCFLAGS += -DHCHK_COMMON_SW_EVENT
493 # Generate .softap.info
494 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
495 # Use SMMU for IOMEM
496 ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_ARCH_SDM845)),y)
497 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
498 endif
499
500 ifeq ($(filter y,$(CONFIG_ARCH_MSM8996) $(CONFIG_ARCH_MSM8998) $(CONFIG_SOC_EXYNOS8890) $(CONFIG_SOC_EXYNOS8895) $(CONFIG_ARCH_TEGRA) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
501 # IRQSET in DHD
502 DHDCFLAGS += -DDHD_LB_IRQSET
503 # Runtime PM
504 DHDCFLAGS += -DDHD_PCIE_RUNTIMEPM -DMAX_IDLE_COUNT=11 -DCUSTOM_DHD_RUNTIME_MS=100
505 # Disable SOFTAP_SEND_HANGEVT
506 DHDCFLAGS := $(filter-out -DSOFTAP_SEND_HANGEVT,$(DHDCFLAGS))
507 # Enable LQCM
508 DHDCFLAGS += -DSUPPORT_LQCM
509 endif
510
511 ifeq ($(filter y,$(CONFIG_WLAN_GREAT) $(CONFIG_SEC_GREATQLTE_PROJECT) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
512 # Debugaility
513 DHDCFLAGS += -DDHD_EVENT_LOG_FILTER
514 DHDCFLAGS += -DDHD_PKT_LOGGING
515 # Debug Wakeup pkt reason
516 DHDCFLAGS += -DDHD_WAKE_STATUS -DDHD_WAKE_RX_STATUS -DDHD_WAKE_EVENT_STATUS
517 DHDCFLAGS += -DDHD_WAKEPKT_DUMP
518 # To support CAC
519 DHDCFLAGS += -DSUPPORT_SET_CAC
520 # Use single nvram file
521 DHDCFLAGS += -DDHD_USE_SINGLE_NVRAM_FILE
522 # RSSI Logging
523 DHDCFLAGS += -DSUPPORT_RSSI_SUM_REPORT
524 # To send hang evnet for Samsung phone platform
525 DHDCFLAGS += -DWL_CFGVENDOR_SEND_HANG_EVENT
526 # Enable BIGDATA_SOFTAP
527 DHDCFLAGS += -DBIGDATA_SOFTAP
528 # Enable DHD_DUMP_MNGR
529 DHDCFLAGS += -DDHD_DUMP_MNGR
530 endif
531
532 # Use Legacy dump path
533 ifneq ($(USE_LEGACY_DUMP_PATH),)
534 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
535 else
536 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
537 endif
538
539 # For Samsung factory mode only
540 ifeq ($(CONFIG_SEC_FACTORY),y)
541 # Detect NON DMA M2M corruption
542 DHDCFLAGS += -DDHD_NON_DMA_M2M_CORRUPTION
543 # Detect FW Memory Corruption
544 DHDCFLAGS += -DDHD_FW_MEM_CORRUPTION
545 endif # CONFIG_SEC_FACTORY
546
547 ifeq ($(CONFIG_BCM4375),y)
548 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
549 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
550 DRIVER_TYPE = y
551 endif
552 endif
553
554 # Chipsets supported both SDIO and PCIE
555 ifneq ($(CONFIG_BCM4361),)
556 DHDCFLAGS += -DBCM4361_CHIP -DSUPPORT_MULTIPLE_REVISION
557 DHDCFLAGS += -DSUPPORT_BCM4361_MIXED_MODULES -DSUPPORT_MULTIPLE_BOARDTYPE
558 DHDCFLAGS += -DMIMO_ANT_SETTING
559 DHDCFLAGS += -DUSE_CID_CHECK
560 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
561 DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT=6
562 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
563 DHDCFLAGS += -DDHD_SSSR_DUMP
564 # tput enhancement for common
565 DHDCFLAGS += -DUSE_WL_TXBF
566 DHDCFLAGS += -DUSE_WL_FRAMEBURST
567 DHDCFLAGS += -DDISABLE_FRAMEBURST_VSDB
568 ifeq ($(filter y,$(CONFIG_ARCH_SDM845) $(CONFIG_SOC_EXYNOS9810)),y)
569 DHDCFLAGS += -DDISABLE_WL_FRAMEBURST_SOFTAP
570 endif
571 DHDCFLAGS += -DDISABLE_PM_BCNRX
572 # Debugability
573 DHDCFLAGS += -DDEBUGABILITY_ECNTRS_LOGGING
574 DHDCFLAGS += -DDEBUGABILITY_ETD_PRSRV_LOGS
575 # Customer ant select and set PM
576 DHDCFLAGS += -DCUSTOM_SET_ANTNPM
577 DHDCFLAGS += -DCUSTOM_BLOCK_DEAUTH_AT_EAP_FAILURE
578 # Customer ocl disabe
579 DHDCFLAGS += -DCUSTOM_SET_OCLOFF
580 DHDCFLAGS += -DWL_STATIC_IF
581 DHDCFLAGS += -DWL_STATIC_IFNAME_PREFIX="\"swlan0\""
582
583 #Iface force dev close
584 DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
585
586 # tput enhancement for PCIE
587 ifeq ($(BUS_IFACE_PCIE),y)
588 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
589 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
590 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
591 ifeq ($(filter y,$(CONFIG_SOC_EXYNOS8895) $(CONFIG_ARCH_MSM8998)),y)
592 DHDCFLAGS += -DDHD_RECOVER_TIMEOUT
593 endif
594 endif
595
596 ifeq ($(CONFIG_ARCH_QCOM),y)
597 DHDCFLAGS += -DCONFIG_ARCH_MSM
598 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
599 endif
600
601 ifeq ($(CONFIG_ARCH_MSM),y)
602 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
603 endif
604
605 ifeq ($(CONFIG_SOC_EXYNOS9810),y)
606 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
607 DHDCFLAGS += -DUSE_DMA_LOCK
608 DHDCFLAGS += -DDHD_MAP_LOGGING
609 DHDCFLAGS += -DDHD_MAP_PKTID_LOGGING
610 endif
611
612 # New Features
613 ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_SOC_EXYNOS8895)),y)
614 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
615 endif
616 DHDCFLAGS += -DWL11U -DMFP
617 DHDCFLAGS += -DBCMCCX
618 DHDCFLAGS += -DWES_SUPPORT
619 DHDCFLAGS += -DOKC_SUPPORT
620 DHDCFLAGS += -DWLTDLS
621 DHDCFLAGS += -DWLFBT
622 DHDCFLAGS += -DDHD_ENABLE_LPC
623 DHDCFLAGS += -DWLAIBSS -DWLAIBSS_PS
624 # DHDCFLAGS += -DWLADPS
625 # DHDCFLAGS += -DADPS_MODE_FROM_FILE
626 # DHDCFLAGS += -DWLADPS_SEAK_AP_WAR
627 DHDCFLAGS += -DWLADPS_PRIVATE_CMD
628 DHDCFLAGS += -DWL_BAM
629 DHDCFLAGS += -DWL_BAM_FILE_PATH="\"/data/misc/wifi/\""
630 DHDCFLAGS += -DWL_RELMCAST
631 DHDCFLAGS += -DSUPPORT_LTECX
632 DHDCFLAGS += -DSUPPORT_2G_VHT -DSUPPORT_5G_1024QAM_VHT
633 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
634 DHDCFLAGS += -DENABLE_IPMCAST_FILTER
635 # virtual interface for RSDB
636 DHDCFLAGS += -DWL_VIRTUAL_APSTA
637 # disable pruned scan
638 DHDCFLAGS += -DDISABLE_PRUNED_SCAN
639 # Remove common feature for BCM4361
640 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
641 DHDCFLAGS += -DDHD_LOG_DUMP
642 ifneq ($(CUSTOM_LOG_DUMP_BUFSIZE_MB),)
643 DHDCFLAGS += -DCUSTOM_LOG_DUMP_BUFSIZE_MB=$(CUSTOM_LOG_DUMP_BUFSIZE_MB)
644 endif
645
646 DHDCFLAGS += -DWL_SUPP_EVENT
647 DHDCFLAGS += -DFILTER_IE
648 DHDCFLAGS += -DNDO_CONFIG_SUPPORT
649 # WBTEXT (11kv) feature
650 DHDCFLAGS += -DWBTEXT
651 DHDCFLAGS += -DWBTEXT_BTMDELTA=0
652 # LOGTRACE_EVENT
653 DHDCFLAGS += -DSHOW_LOGTRACE
654 DHDCFLAGS += -DLOGTRACE_FROM_FILE
655 # LAST ROAM EVENT LOG
656 DHDCFLAGS += -DWL_LASTEVT
657 # Higher rate beacon transmission at softAP
658 DHDCFLAGS += -DSUPPORT_AP_HIGHER_BEACONRATE
659 # Enhanced radio power save with NOA at softAP
660 DHDCFLAGS += -DSUPPORT_AP_RADIO_PWRSAVE
661 # Expand TCP tx queue to 10 times of default size
662 ifeq ($(CONFIG_WLAN_TSQ_MULTIPLIER),y)
663 DHDCFLAGS += -DTSQ_MULTIPLIER=10
664 endif
665 # HANG simulation
666 DHDCFLAGS += -DDHD_HANG_SEND_UP_TEST
667 # Support Monitor Mode
668 DHDCFLAGS += -DWL_MONITOR
669 # Enable health check event handling
670 DHDCFLAGS += -DDNGL_EVENT_SUPPORT
671 DHDCFLAGS += -DHCHK_COMMON_SW_EVENT
672 # Generate .softap.info
673 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
674 # Use SMMU for IOMEM
675 ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_ARCH_SDM845)),y)
676 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
677 endif
678
679 ifeq ($(filter y,$(CONFIG_ARCH_MSM8996) $(CONFIG_ARCH_MSM8998) $(CONFIG_SOC_EXYNOS8890) $(CONFIG_SOC_EXYNOS8895) $(CONFIG_ARCH_TEGRA) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
680 # IRQSET in DHD
681 DHDCFLAGS += -DDHD_LB_IRQSET
682 # Runtime PM
683 DHDCFLAGS += -DDHD_PCIE_RUNTIMEPM -DMAX_IDLE_COUNT=11 -DCUSTOM_DHD_RUNTIME_MS=100
684 # Disable SOFTAP_SEND_HANGEVT
685 DHDCFLAGS := $(filter-out -DSOFTAP_SEND_HANGEVT,$(DHDCFLAGS))
686 # Enable LQCM
687 DHDCFLAGS += -DSUPPORT_LQCM
688 endif
689
690 ifeq ($(filter y,$(CONFIG_WLAN_GREAT) $(CONFIG_SEC_GREATQLTE_PROJECT) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
691 # Debugaility
692 DHDCFLAGS += -DDHD_EVENT_LOG_FILTER
693 DHDCFLAGS += -DDHD_PKT_LOGGING
694 # Debug Wakeup pkt reason
695 DHDCFLAGS += -DDHD_WAKE_STATUS -DDHD_WAKE_RX_STATUS -DDHD_WAKE_EVENT_STATUS
696 DHDCFLAGS += -DDHD_WAKEPKT_DUMP
697 # To support CAC
698 DHDCFLAGS += -DSUPPORT_SET_CAC
699 # Use single nvram file
700 DHDCFLAGS += -DDHD_USE_SINGLE_NVRAM_FILE
701 # RSSI Logging
702 DHDCFLAGS += -DSUPPORT_RSSI_SUM_REPORT
703 # To send hang evnet for Samsung phone platform
704 DHDCFLAGS += -DWL_CFGVENDOR_SEND_HANG_EVENT
705 # Enable BIGDATA_SOFTAP
706 DHDCFLAGS += -DBIGDATA_SOFTAP
707 # Enable DHD_DUMP_MNGR
708 DHDCFLAGS += -DDHD_DUMP_MNGR
709 endif
710
711 # Use Legacy dump path
712 ifneq ($(USE_LEGACY_DUMP_PATH),)
713 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
714 else
715 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
716 endif
717
718 ifeq ($(CONFIG_ARCH_SDM845),y)
719 # Disable Dongle Isolation
720 DHDCFLAGS := $(filter-out -DDONGLE_ENABLE_ISOLATION,$(DHDCFLAGS))
721 # Enable BP Reset while Wi-Fi power off
722 DHDCFLAGS += -DDHD_USE_BP_RESET
723 endif
724
725 # For Samsung factory mode only
726 ifeq ($(CONFIG_SEC_FACTORY),y)
727 # Detect NON DMA M2M corruption
728 DHDCFLAGS += -DDHD_NON_DMA_M2M_CORRUPTION
729 # Detect FW Memory Corruption
730 DHDCFLAGS += -DDHD_FW_MEM_CORRUPTION
731 endif # CONFIG_SEC_FACTORY
732
733 ifeq ($(CONFIG_BCM4361),y)
734 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
735 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
736 DRIVER_TYPE = y
737 endif
738 endif
739
740 ifneq ($(CONFIG_BCM4359),)
741 DHDCFLAGS += -DBCM4359_CHIP -DSUPPORT_MULTIPLE_REVISION
742 DHDCFLAGS += -DMIMO_ANT_SETTING
743 DHDCFLAGS += -DUSE_CID_CHECK
744 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
745 DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT=6
746 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
747 DHDCFLAGS += -DDHD_SSSR_DUMP
748 # tput enhancement for common
749 DHDCFLAGS += -DUSE_WL_TXBF
750 DHDCFLAGS += -DUSE_WL_FRAMEBURST
751 DHDCFLAGS += -DDISABLE_FRAMEBURST_VSDB
752 DHDCFLAGS += -DDISABLE_PM_BCNRX
753 DHDCFLAGS += -DWL_STATIC_IF
754 DHDCFLAGS += -DWL_STATIC_IFNAME_PREFIX="\"swlan0\""
755 #Iface force dev close
756 DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
757
758 # Use Legacy dump path
759 ifneq ($(USE_LEGACY_DUMP_PATH),)
760 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
761 else
762 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
763 endif
764
765 # tput enhancement for PCIE
766 ifeq ($(BUS_IFACE_PCIE),y)
767 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
768 DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=48
769 DHDCFLAGS += -DCUSTOM_AMPDU_RELEASE=32
770 DHDCFLAGS += -DCUSTOM_AMSDU_AGGSF=2
771 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
772 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
773 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
774 DHDCFLAGS += -DDHD_RECOVER_TIMEOUT
775 ifeq ($(CONFIG_ARCH_MSM8998),y)
776 # Use SMMU for IOMEM
777 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
778 endif
779
780 ifeq ($(CONFIG_ARCH_QCOM),y)
781 DHDCFLAGS += -DCONFIG_ARCH_MSM
782 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
783 endif
784
785 ifeq ($(CONFIG_ARCH_MSM),y)
786 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
787 endif
788 endif
789
790 # New Features
791 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
792 DHDCFLAGS += -DWL11U -DMFP
793 DHDCFLAGS += -DBCMCCX
794 DHDCFLAGS += -DWES_SUPPORT
795 DHDCFLAGS += -DOKC_SUPPORT
796 DHDCFLAGS += -DWLTDLS
797 DHDCFLAGS += -DWLFBT
798 DHDCFLAGS += -DDHD_ENABLE_LPC
799 DHDCFLAGS += -DWLAIBSS -DWLAIBSS_PS
800 DHDCFLAGS += -DWL_RELMCAST
801 DHDCFLAGS += -DSUPPORT_LTECX
802 DHDCFLAGS += -DSUPPORT_2G_VHT
803 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
804 #DHDCFLAGS += -DSUPPORT_SENSORHUB
805 # virtual interface for RSDB
806 DHDCFLAGS += -DWL_VIRTUAL_APSTA
807 # virtual interface support for BCM4359 only
808 DHDCFLAGS += -DDHD_USE_CHECK_DONGLE_IDLE
809 DHDCFLAGS += -DDHD_ABORT_SCAN_CREATE_INTERFACE
810 # disable pruned scan
811 DHDCFLAGS += -DDISABLE_PRUNED_SCAN
812 # Remove common feature for BCM4359
813 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
814 # Temperature Throttling control
815 DHDCFLAGS += -DENABLE_TEMP_THROTTLING
816 # Block ARP during DHCP on STA/SoftAP concurrent mode
817 DHDCFLAGS += -DAPSTA_BLOCK_ARP_DURING_DHCP
818 # Use restricted channels on STA/SoftAP concurrent mode
819 DHDCFLAGS += -DAPSTA_RESTRICTED_CHANNEL
820 DHDCFLAGS += -DDHD_LOG_DUMP
821 # To support CAC
822 DHDCFLAGS += -DSUPPORT_SET_CAC
823 DHDCFLAGS += -DSUPPORT_CUSTOM_SET_CAC
824 # To support Enable EVENT SDB Transition log.
825 DHDCFLAGS += -DSUPPORT_EVT_SDB_LOG
826 ifeq ($(filter y,$(CONFIG_ARCH_MSM8996) $(CONFIG_SOC_EXYNOS8890) $(CONFIG_ARCH_SDM845)),y)
827 # Runtime PM
828 DHDCFLAGS += -DDHD_PCIE_RUNTIMEPM -DMAX_IDLE_COUNT=11 -DCUSTOM_DHD_RUNTIME_MS=100
829 # IRQ affinity setting for RX Load Balance
830 DHDCFLAGS += -DDHD_LB_IRQSET
831 # Disable SOFTAP_SEND_HANGEVT
832 DHDCFLAGS := $(filter-out -DSOFTAP_SEND_HANGEVT,$(DHDCFLAGS))
833 # CLM
834 DHDCFLAGS += -DDHD_SUPPORT_GB_999
835 ifeq ($(CONFIG_SOC_EXYNOS8890),y)
836 # Configure MU-MIMO capability
837 DHDCFLAGS += -DDYNAMIC_MUMIMO_CONTROL
838 # Disable IRQ affinity setting
839 DHDCFLAGS := $(filter-out -DDHD_LB_IRQSET,$(DHDCFLAGS))
840 endif
841 endif
842
843 ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_ARCH_SDM845)),y)
844 # Use SMMU for IOMEM
845 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
846 DHDCFLAGS += -DSET_DMA_MASK_64BIT
847 endif
848
849 ifeq ($(filter y,$(CONFIG_WLAN_HERO) $(CONFIG_SEC_HEROQLTE_PROJECT)),y)
850 DHDCFLAGS += -DDHD_SUPPORT_US_949
851 DHDCFLAGS += -DDHD_SUPPORT_QA_6
852 endif
853
854 ifeq ($(filter y,$(CONFIG_WLAN_HERO2) $(CONFIG_SEC_HERO2QLTE_PROJECT)),y)
855 DHDCFLAGS += -DDHD_SUPPORT_US_945
856 DHDCFLAGS += -DDHD_SUPPORT_QA_6
857 endif
858 # HANG simulation
859 DHDCFLAGS += -DDHD_HANG_SEND_UP_TEST
860
861 ifneq ($(CONFIG_WLAN_GRACE),)
862 DHDCFLAGS += -DWBTEXT
863 DHDCFLAGS += -DDHD_USE_CLMINFO_PARSER
864 endif
865
866 # LOGTRACE_EVENT
867 DHDCFLAGS += -DSHOW_LOGTRACE
868 DHDCFLAGS += -DLOGTRACE_FROM_FILE
869
870 # Enable concate blob path
871 DHDCFLAGS += -DCONCATE_BLOB
872
873 # For Samsung factory mode only
874 ifeq ($(CONFIG_SEC_FACTORY),y)
875 # Detect NON DMA M2M corruption
876 DHDCFLAGS += -DDHD_NON_DMA_M2M_CORRUPTION
877 # Detect FW Memory Corruption
878 DHDCFLAGS += -DDHD_FW_MEM_CORRUPTION
879 endif # CONFIG_SEC_FACTORY
880
881 ifeq ($(CONFIG_BCM4359),y)
882 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
883 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
884 DRIVER_TYPE = y
885 endif
886 endif
887
888 ifneq ($(CONFIG_BCM4358),)
889 DHDCFLAGS += -DBCM4358_CHIP -DSUPPORT_MULTIPLE_REVISION
890 DHDCFLAGS += -DMIMO_ANT_SETTING
891 DHDCFLAGS += -DUSE_CID_CHECK
892 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
893 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
894 # tput enhancement for common
895 DHDCFLAGS += -DUSE_WL_TXBF
896 DHDCFLAGS += -DUSE_WL_FRAMEBURST
897 DHDCFLAGS += -DDISABLE_FRAMEBURST_VSDB
898
899 # tput enhancement for SDIO
900 ifeq ($(BUS_IFACE_SDIO),y)
901 DHDCFLAGS += -DHW_OOB
902 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
903 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
904 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
905 DHDCFLAGS += -DRXFRAME_THREAD
906 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
907 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
908 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=40 -DDHD_TXBOUND=40
909 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
910 DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=40
911 DHDCFLAGS += -DMAX_HDR_READ=128
912 DHDCFLAGS += -DDHD_FIRSTREAD=128
913 DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=16
914 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
915 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
916 endif
917 # tput enhancement for PCIE
918 ifeq ($(BUS_IFACE_PCIE),y)
919 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
920 DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=32
921 DHDCFLAGS += -DCUSTOM_AMPDU_RELEASE=16
922 DHDCFLAGS += -DCUSTOM_AMSDU_AGGSF=4
923 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
924 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
925 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
926 endif
927
928 # Disabled DHDTCPACK_SUPPRESS for T Project / Enabled for Zero Project
929 ifeq ($(filter y,$(CONFIG_MACH_UNIVERSAL5433) $(CONFIG_ARCH_APQ8084)),y)
930 DHDCFLAGS :=$(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
931 endif
932
933 ifeq ($(CONFIG_ARCH_MSM),y)
934 DHDCFLAGS += -DSET_RPS_CPUS
935 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
936 endif
937
938 # New Features
939 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
940 DHDCFLAGS += -DWL11U -DMFP
941 DHDCFLAGS += -DBCMCCX
942 DHDCFLAGS += -DWES_SUPPORT
943 DHDCFLAGS += -DOKC_SUPPORT
944 DHDCFLAGS += -DWLTDLS
945 DHDCFLAGS += -DWLFBT
946 DHDCFLAGS += -DDHD_ENABLE_LPC
947 DHDCFLAGS += -DWLAIBSS -DWLAIBSS_PS
948 DHDCFLAGS += -DWL_RELMCAST
949 DHDCFLAGS += -DSUPPORT_LTECX
950 DHDCFLAGS += -DSUPPORT_2G_VHT
951 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
952 ifeq ($(CONFIG_BCM4358),y)
953 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
954 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
955 DRIVER_TYPE = y
956 endif
957 endif
958
959 ifneq ($(CONFIG_BCM4354),)
960 DHDCFLAGS += -DBCM4354_CHIP -DSUPPORT_MULTIPLE_REVISION
961 DHDCFLAGS += -DMIMO_ANT_SETTING
962 DHDCFLAGS += -DUSE_CID_CHECK
963 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
964 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
965 DHDCFLAGS += -DFORCE_DISABLE_SINGLECORE_SCAN
966 # tput enhancement for common
967 DHDCFLAGS += -DUSE_WL_TXBF
968 DHDCFLAGS += -DUSE_WL_FRAMEBURST
969
970 # tput enhancement for SDIO
971 ifeq ($(BUS_IFACE_SDIO),y)
972 DHDCFLAGS += -DHW_OOB
973 DHDCFLAGS += -DCUSTOM_FRAMEBURST_SET=1
974 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
975 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
976 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
977 DHDCFLAGS += -DRXFRAME_THREAD
978 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
979 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
980 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=40 -DDHD_TXBOUND=40
981 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
982 DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=40
983 DHDCFLAGS += -DMAX_HDR_READ=128
984 DHDCFLAGS += -DDHD_FIRSTREAD=128
985 DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=16
986 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
987 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
988 endif
989
990 # tput enhancement for PCIE
991 ifeq ($(BUS_IFACE_PCIE),y)
992 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
993 DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=32
994 DHDCFLAGS += -DCUSTOM_AMPDU_RELEASE=16
995 endif
996
997 # New Features
998 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
999 DHDCFLAGS += -DWL11U -DMFP
1000 DHDCFLAGS += -DBCMCCX
1001 DHDCFLAGS += -DWES_SUPPORT
1002 DHDCFLAGS += -DOKC_SUPPORT
1003 DHDCFLAGS += -DWLTDLS
1004 DHDCFLAGS += -DWLFBT
1005 DHDCFLAGS += -DDHD_ENABLE_LPC
1006 DHDCFLAGS += -DWLAIBSS
1007 DHDCFLAGS += -DWL_RELMCAST
1008 DHDCFLAGS += -DSUPPORT_LTECX
1009 DHDCFLAGS += -DSUPPORT_2G_VHT
1010 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
1011 ifeq ($(CONFIG_BCM4354),y)
1012 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1013 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1014 DRIVER_TYPE = y
1015 endif
1016 endif
1017
1018 # Chipsets supported SDIO only
1019 ifeq ($(BUS_IFACE_SDIO),y)
1020 ifneq ($(CONFIG_BCM4339),)
1021 DHDCFLAGS += -DBCM4339_CHIP -DHW_OOB
1022 DHDCFLAGS += -DUSE_CID_CHECK
1023 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1024 DHDCFLAGS += -DUSE_SDIOFIFO_IOVAR
1025
1026 # tput enhancement
1027 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
1028 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1029 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
1030 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
1031 DHDCFLAGS += -DUSE_WL_TXBF
1032 DHDCFLAGS += -DUSE_WL_FRAMEBURST
1033 DHDCFLAGS += -DCUSTOM_FRAMEBURST_SET=1
1034 DHDCFLAGS += -DRXFRAME_THREAD
1035 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
1036 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
1037 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
1038 ifeq ($(CONFIG_ARCH_MSM),y)
1039 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1040 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
1041 endif
1042 DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=32
1043
1044 # New Features
1045 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1046 DHDCFLAGS += -DWL11U -DMFP
1047 DHDCFLAGS += -DBCMCCX
1048 DHDCFLAGS += -DWES_SUPPORT
1049 DHDCFLAGS += -DOKC_SUPPORT
1050 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1051 DHDCFLAGS += -DWLFBT
1052 DHDCFLAGS += -DDHD_ENABLE_LPC
1053 DHDCFLAGS += -DWLAIBSS
1054 DHDCFLAGS += -DWL_RELMCAST
1055 DHDCFLAGS += -DSUPPORT_LTECX
1056 DHDCFLAGS += -DSUPPORT_2G_VHT
1057 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
1058 DHDCFLAGS += -DBCMCCX_S69
1059 ifeq ($(CONFIG_BCM4339),y)
1060 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1061 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1062 DRIVER_TYPE = y
1063 endif
1064 endif
1065
1066 ifneq ($(CONFIG_BCM43456),)
1067 DHDCFLAGS += -DBCM43456_CHIP
1068 DHDCFLAGS += -DWLADPS_PRIVATE_CMD
1069 endif
1070 ifneq ($(CONFIG_BCM43455),)
1071 DHDCFLAGS += -DBCM43455_CHIP
1072 endif
1073 ifneq ($(CONFIG_BCM43454),)
1074 DHDCFLAGS += -DBCM43454_CHIP
1075 endif
1076
1077 # BCM43454/43455/43456 common difine.
1078 ifneq ($(filter y,$(CONFIG_BCM43454) $(CONFIG_BCM43455) $(CONFIG_BCM43456)),$(filter m,$(CONFIG_BCM43454) $(CONFIG_BCM43455) $(CONFIG_BCM43456)))
1079 DHDCFLAGS += -DHW_OOB
1080 DHDCFLAGS += -DSUPPORT_MULTIPLE_REVISION
1081 DHDCFLAGS += -DUSE_CID_CHECK
1082 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1083 DHDCFLAGS += -DUSE_SDIOFIFO_IOVAR
1084
1085 # tput enhancement
1086 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
1087 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1088 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
1089 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
1090 DHDCFLAGS += -DUSE_WL_TXBF
1091 DHDCFLAGS += -DUSE_WL_FRAMEBURST
1092 DHDCFLAGS += -DCUSTOM_FRAMEBURST_SET=1
1093 DHDCFLAGS += -DRXFRAME_THREAD
1094 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
1095 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
1096 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
1097
1098 # New Features
1099 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1100 DHDCFLAGS += -DWL11U -DMFP
1101 DHDCFLAGS += -DBCMCCX
1102 DHDCFLAGS += -DWES_SUPPORT
1103 DHDCFLAGS += -DOKC_SUPPORT
1104 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1105 DHDCFLAGS += -DWLFBT
1106 DHDCFLAGS += -DDHD_ENABLE_LPC
1107 DHDCFLAGS += -DWLAIBSS
1108 DHDCFLAGS += -DSUPPORT_LTECX
1109 DHDCFLAGS += -DSUPPORT_2G_VHT
1110 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
1111 DHDCFLAGS += -DBCMCCX_S69
1112 ifeq ($(filter y,$(CONFIG_BCM43454) $(CONFIG_BCM43455) $(CONFIG_BCM43456)),y)
1113 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1114 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1115 DRIVER_TYPE = y
1116 endif
1117 DHDCFLAGS += -DDHD_LOG_DUMP
1118
1119 # FCC power limit control on ch12/13.
1120 # DHDCFLAGS += -DFCC_PWR_LIMIT_2G
1121 #
1122 # Enable Roam time thresh
1123 DHDCFLAGS += -DENABLE_MAX_DTIM_IN_SUSPEND
1124 DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT_IN_SUSPEND=10
1125 DHDCFLAGS += -DCUSTOM_ROAM_TIME_THRESH_IN_SUSPEND=6000
1126 DHDCFLAGS += -DMAX_DTIM_ALLOWED_INTERVAL=925
1127
1128 ifeq ($(filter y,$(CONFIG_BCM43454) $(CONFIG_BCM43455)), y)
1129 #Support Qatar 5G band 36-64, 100-144, 149-165 channels
1130 DHDCFLAGS += -DDHD_SUPPORT_QA_6
1131 endif
1132
1133 ifneq ($(PLATFORM_VERSION),)
1134 # Android O OS use below features
1135 ifeq ($(shell expr $(PLATFORM_VERSION) \>= 8.0),1)
1136 # Use single nvram file
1137 DHDCFLAGS += -DDHD_USE_SINGLE_NVRAM_FILE
1138 endif
1139 endif
1140
1141 ifneq ($(filter y,$(CONFIG_BCM43455) $(CONFIG_BCM43456)),$(filter m,$(CONFIG_BCM43455) $(CONFIG_BCM43456)))
1142 # Enable Firmware Coredump
1143 DHDCFLAGS += -DDHD_FW_COREDUMP
1144 ifeq ($(CONFIG_BCMDHD_PREALLOC_MEMDUMP),y)
1145 DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP
1146 endif
1147
1148 # Enable concate blob path
1149 DHDCFLAGS += -DCONCATE_BLOB
1150 # Generate .softap.info
1151 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
1152
1153 ifneq ($(CONFIG_BCM43456),)
1154 # STA/SoftAP Concurrent Mode Support for legacy chip
1155 DHDCFLAGS += -DWL_VIRTUAL_APSTA
1156 DHDCFLAGS += -DWL_RESTRICTED_APSTA_SCC
1157 DHDCFLAGS += -DSOFTAP_UAPSD_OFF
1158 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
1159 # Use restricted channels on STA/SoftAP concurrent mode
1160 DHDCFLAGS += -DAPSTA_RESTRICTED_CHANNEL
1161 # Block ARP during DHCP on STA/SoftAP concurrent mode
1162 DHDCFLAGS += -DAPSTA_BLOCK_ARP_DURING_DHCP
1163 endif
1164 endif
1165 endif
1166
1167 ifneq ($(CONFIG_BCM43454),)
1168 DHDCFLAGS += -DBCM43454_CHIP -DHW_OOB
1169 DHDCFLAGS += -DSUPPORT_MULTIPLE_REVISION -DSUPPORT_MULTIPLE_BOARD_REV_FROM_DT
1170 DHDCFLAGS += -DUSE_CID_CHECK
1171 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1172 DHDCFLAGS += -DUSE_SDIOFIFO_IOVAR
1173
1174 # tput enhancement
1175 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
1176 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1177 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
1178 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
1179 DHDCFLAGS += -DUSE_WL_TXBF
1180 DHDCFLAGS += -DUSE_WL_FRAMEBURST
1181 DHDCFLAGS += -DCUSTOM_FRAMEBURST_SET=1
1182 DHDCFLAGS += -DRXFRAME_THREAD
1183 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
1184 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
1185 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
1186 DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=32
1187
1188 # New Features
1189 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1190 DHDCFLAGS += -DWL11U
1191 DHDCFLAGS += -DBCMCCX
1192 DHDCFLAGS += -DWES_SUPPORT
1193 DHDCFLAGS += -DOKC_SUPPORT
1194 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1195 DHDCFLAGS += -DWLFBT
1196 DHDCFLAGS += -DDHD_ENABLE_LPC
1197 DHDCFLAGS += -DWLAIBSS
1198 DHDCFLAGS += -DSUPPORT_LTECX
1199 DHDCFLAGS += -DSUPPORT_2G_VHT
1200 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
1201 DHDCFLAGS += -DBCMCCX_S69
1202 ifeq ($(CONFIG_BCM43454),y)
1203 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1204 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1205 DRIVER_TYPE = y
1206 endif
1207 DHDCFLAGS += -DCUSTOM_PSPRETEND_THR=30
1208 endif
1209
1210 ifneq ($(CONFIG_BCM4335),)
1211 DHDCFLAGS += -DBCM4335_CHIP -DHW_OOB -DSUPPORT_MULTIPLE_REVISION
1212 DHDCFLAGS += -DUSE_CID_CHECK
1213 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1214 DHDCFLAGS += -DUSE_SDIOFIFO_IOVAR
1215
1216 # tput enhancement
1217 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
1218 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1219 DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
1220 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
1221 # DHDCFLAGS += -DDHD_SET_FW_HIGHSPEED
1222 DHDCFLAGS += -DUSE_WL_TXBF
1223 DHDCFLAGS += -DUSE_WL_FRAMEBURST
1224 DHDCFLAGS += -DCUSTOM_FRAMEBURST_SET=1
1225 DHDCFLAGS += -DRXFRAME_THREAD
1226 DHDCFLAGS += -DREPEAT_READFRAME
1227 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64
1228 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
1229 DHDCFLAGS += -DPROP_TXSTATUS_VSDB
1230 # DHDCFLAGS += -DTPUT_DEBUG
1231 ifeq ($(CONFIG_MACH_JF),y)
1232 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1233 endif
1234 ifeq ($(CONFIG_ARCH_MSM),y)
1235 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1236 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
1237 endif
1238 DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=32
1239
1240 # New Features
1241 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1242 DHDCFLAGS += -DWL11U -DMFP
1243 DHDCFLAGS += -DBCMCCX
1244 DHDCFLAGS += -DWES_SUPPORT
1245 DHDCFLAGS += -DOKC_SUPPORT
1246 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1247 DHDCFLAGS += -DWLFBT
1248 DHDCFLAGS += -DDHD_ENABLE_LPC
1249 DHDCFLAGS += -DWLAIBSS
1250 DHDCFLAGS += -DWL_RELMCAST
1251 DHDCFLAGS += -DSUPPORT_LTECX
1252 DHDCFLAGS += -DSUPPORT_2G_VHT
1253 DHDCFLAGS += -DSUPPORT_WL_TXPOWER
1254 # For BT LOCK
1255 ifeq ($(CONFIG_BCM4335BT),y)
1256 DHDCFLAGS += -DENABLE_4335BT_WAR
1257 endif
1258 ifeq ($(CONFIG_BCM4335),y)
1259 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1260 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1261 DRIVER_TYPE = y
1262 endif
1263 endif
1264
1265 ifneq ($(CONFIG_BCM4343),)
1266 DHDCFLAGS += -DBCM43430_CHIP -DSUPPORT_MULTIPLE_REVISION -DHW_OOB
1267 DHDCFLAGS += -DUSE_CID_CHECK
1268 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=0
1269 DHDCFLAGS += -DCUSTOM_ASSOC_RETRY_MAX=7
1270 # tput enhancement
1271 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1272 DHDCFLAGS += -DRXFRAME_THREAD -DRXTHREAD_ONLYSTA
1273 DHDCFLAGS += -DMAX_HDR_READ=128
1274 DHDCFLAGS += -DDHD_FIRSTREAD=128
1275 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
1276 # New Features
1277 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1278 DHDCFLAGS += -DWL11U
1279 DHDCFLAGS += -DBCMCCX
1280 DHDCFLAGS += -DWES_SUPPORT
1281 DHDCFLAGS += -DOKC_SUPPORT
1282 DHDCFLAGS += -DWLFBT
1283 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1284 ifeq ($(CONFIG_BCM4343),y)
1285 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1286 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1287 DRIVER_TYPE = y
1288 endif
1289 # Remove common feature for BCM4343
1290 DHDCFLAGS :=$(filter-out -DROAM_AP_ENV_DETECTION,$(DHDCFLAGS))
1291 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
1292 # Generate .softap.info
1293 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
1294 endif
1295
1296 ifneq ($(CONFIG_BCM43012),)
1297 DHDCFLAGS += -DBCM43012_CHIP_ -DHW_OOB
1298 DHDCFLAGS += -DUSE_CID_CHECK
1299 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=0
1300 DHDCFLAGS += -DCUSTOM_ASSOC_RETRY_MAX=7
1301 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1302 # tput enhancement
1303 DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
1304 DHDCFLAGS += -DRXFRAME_THREAD -DRXTHREAD_ONLYSTA
1305 DHDCFLAGS += -DMAX_HDR_READ=128
1306 DHDCFLAGS += -DDHD_FIRSTREAD=128
1307 DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16
1308 # New Features
1309 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
1310 DHDCFLAGS += -DWL11U
1311 DHDCFLAGS += -DWES_SUPPORT
1312 DHDCFLAGS += -DOKC_SUPPORT
1313 DHDCFLAGS += -DWLFBT
1314 DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
1315 ifneq ($(CONFIG_BT_OVER_SDIO),)
1316 DHDCFLAGS += -DBT_OVER_SDIO
1317 endif
1318 ifeq ($(CONFIG_BCM43012),y)
1319 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1320 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1321 DRIVER_TYPE = y
1322 endif
1323 ifeq ($(CONFIG_SOLIS),y)
1324 DHDCFLAGS += -USUPPORT_P2P_GO_PS
1325 DHDCFLAGS += -UP2P_LISTEN_OFFLOADING
1326 DHDCFLAGS += -DUSE_INITIAL_2G_SCAN
1327 DHDCFLAGS += -DPLATFORM_SLP
1328 DHDCFLAGS += -UCONFIG_HAS_WAKELOCK
1329 DHDCFLAGS += -UDHD_TRACE_WAKE_LOCK
1330 DHDCFLAGS += -DDHD_USE_CLMINFO_PARSER
1331 endif
1332 # Remove common feature for 43012
1333 DHDCFLAGS :=$(filter-out -DROAM_AP_ENV_DETECTION,$(DHDCFLAGS))
1334 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
1335 endif
1336 endif # chipset supported SDIO only
1337
1338 #############################
1339 # Platform dependent feature
1340 #############################
1341
1342 ifeq ($(CONFIG_SPI_SC8810),y)
1343 DHDCFLAGS += -DREAD_MACADDR -DBCMSPI -DBCMSPI_ANDROID -DSPI_PIO_32BIT_RW -DSPI_PIO_RW_BIGENDIAN
1344 DHDCFLAGS += -UCUSTOM_DPC_PRIO_SETTING
1345 DHDCFLAGS += -DCHANGE_SPI_INTR_POLARITY_ACTIVE_HIGH
1346
1347 #Remove defines for SDMMC
1348 DHDCFLAGS :=$(filter-out -DOOB_INTR_ONLY,$(DHDCFLAGS))
1349 DHDCFLAGS :=$(filter-out -DBCMLXSDMMC,$(DHDCFLAGS))
1350
1351 #Remove defines for JB
1352 DHDCFLAGS :=$(filter-out -DWL_ENABLE_P2P_IF,$(DHDCFLAGS))
1353 DHDCFLAGS :=$(filter-out -DMULTIPLE_SUPPLICANT,$(DHDCFLAGS))
1354 DHDCFLAGS :=$(filter-out -DWL_CFG80211_STA_EVENT,$(DHDCFLAGS))
1355 endif
1356
1357 # For SLP feature
1358 ifeq ($(CONFIG_SLP),y)
1359 DHDCFLAGS += -DUSE_INITIAL_2G_SCAN
1360 DHDCFLAGS += -DPLATFORM_SLP -DWRITE_MACADDR
1361 DHDCFLAGS += -DSUPPORT_MULTIPLE_CHIP
1362 DHDCFLAGS += -USUPPORT_MULTIPLE_REVISION -UCONFIG_HAS_WAKELOCK
1363 endif
1364
1365 # GGSM_WIFI_5GHz_CHANNELS feature is define for only GGSM model
1366 ifeq ($(GGSM_WIFI_5GHz_CHANNELS),true)
1367 DHDCFLAGS += -DCUSTOMER_SET_COUNTRY
1368 endif
1369
1370 # Compiler option for specific platform
1371 ifeq ($(CONFIG_SOC_EXYNOS8890),y)
1372 DHDCFLAGS += -Wno-date-time
1373 endif
1374 ifeq ($(CONFIG_SOC_EXYNOS7570),y)
1375 DHDCFLAGS += -Wno-date-time
1376 endif
1377 ifeq ($(CONFIG_SOC_EXYNOS8890),y)
1378 DHDCFLAGS += -Wno-date-time
1379 endif
1380 ifeq ($(CONFIG_SOC_EXYNOS8895),y)
1381 DHDCFLAGS += -Wno-date-time
1382 endif
1383 ifeq ($(CONFIG_ARCH_MSM8996),y)
1384 DHDCFLAGS += -Wno-date-time
1385 endif
1386 ifeq ($(CONFIG_ARCH_MSM8998),y)
1387 DHDCFLAGS += -Wno-date-time
1388 endif
1389 ifeq ($(CONFIG_SOC_EXYNOS9810),y)
1390 DHDCFLAGS += -Wno-date-time
1391 endif
1392 ifeq ($(CONFIG_ARCH_SDM845),y)
1393 DHDCFLAGS += -Wno-date-time
1394 endif
1395
1396 # DTS Support
1397 ifeq ($(CONFIG_OF),y)
1398 ifneq ($(CONFIG_MACH_UNIVERSAL5433),)
1399 DHDCFLAGS += -DDHD_OF_SUPPORT
1400 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1401 endif
1402 ifneq ($(CONFIG_MACH_UNIVERSAL7420),)
1403 DHDCFLAGS += -DDHD_OF_SUPPORT
1404 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1405 endif
1406 ifneq ($(CONFIG_SOC_EXYNOS8890),)
1407 DHDCFLAGS += -DDHD_OF_SUPPORT
1408 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1409 endif
1410 ifneq ($(CONFIG_SOC_EXYNOS8895),)
1411 DHDCFLAGS += -DDHD_OF_SUPPORT
1412 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1413 endif
1414 ifneq ($(CONFIG_MACH_EXSOM7420),)
1415 DHDCFLAGS += -DDHD_OF_SUPPORT
1416 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1417 DHDCFLAGS += -DEXYNOS_PCIE_MODULE_PATCH
1418 obj-$(CONFIG_MACH_EXSOM7420) += dhd_custom_exynos.o dhd_custom_memprealloc.o
1419 endif
1420 ifneq ($(CONFIG_SOC_EXYNOS9810),)
1421 DHDCFLAGS += -DDHD_OF_SUPPORT
1422 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1423 endif
1424 ifneq ($(CONFIG_MACH_UNIVERSAL5430),)
1425 DHDCFLAGS += -DDHD_OF_SUPPORT
1426 endif
1427 ifneq ($(CONFIG_MACH_UNIVERSAL5422),)
1428 DHDCFLAGS += -DDHD_OF_SUPPORT
1429 endif
1430 ifneq ($(CONFIG_ARCH_MSM8994),)
1431 DHDCFLAGS += -DDHD_OF_SUPPORT
1432 endif
1433 ifneq ($(CONFIG_ARCH_MSM8996),)
1434 DHDCFLAGS += -DDHD_OF_SUPPORT
1435 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1436 endif
1437 ifneq ($(CONFIG_ARCH_MSM8998),)
1438 DHDCFLAGS += -DDHD_OF_SUPPORT
1439 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1440 endif
1441 ifeq ($(CONFIG_ARCH_SDM845),y)
1442 DHDCFLAGS += -DDHD_OF_SUPPORT
1443 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1444 endif
1445 ifneq ($(CONFIG_MACH_UNIVERSAL3475),)
1446 DHDCFLAGS += -DDHD_OF_SUPPORT
1447 endif
1448 ifneq ($(CONFIG_ARCH_SWA100),)
1449 DHDCFLAGS += -DDHD_OF_SUPPORT
1450 endif
1451 ifneq ($(CONFIG_SOC_EXYNOS7870),)
1452 DHDCFLAGS += -DDHD_OF_SUPPORT
1453 DHDCFLAGS += -Wno-date-time
1454 endif
1455 ifneq ($(CONFIG_SOC_EXYNOS7570),)
1456 DHDCFLAGS += -DDHD_OF_SUPPORT
1457 endif
1458 endif #CONFIG_OF
1459
1460 ifneq ($(CONFIG_ARCH_TEGRA),)
1461 DHDCFLAGS := $(filter-out -DDHD_ALLOC_COHERENT_MEM_FROM_ATOMIC_POOL,$(DHDCFLAGS))
1462 DHDCFLAGS := $(filter-out -DWL_VENDOR_EXT_SUPPORT,$(DHDCFLAGS))
1463 DHDCFLAGS := $(filter-out -DGSCAN_SUPPORT,$(DHDCFLAGS))
1464 DHDCFLAGS := $(filter-out -DRTT_SUPPORT,$(DHDCFLAGS))
1465 DHDCFLAGS := $(filter-out -DDHD_LB_IRQSET,$(DHDCFLAGS))
1466 DHDCFLAGS := $(filter-out -DSET_PCIE_IRQ_CPU_CORE,$(DHDCFLAGS))
1467 DHD_ANDROID_OFILES := $(filter-out wl_cfgvendor.o,$(DHD_ANDROID_OFILES))
1468 DHD_ANDROID_OFILES := $(filter-out dhd_rtt.o,$(DHD_ANDROID_OFILES))
1469 endif
1470
1471 ##############################################################
1472 # dhd_sec_feature.h
1473 DHDCFLAGS += -include "dhd_sec_feature.h"
1474 ##############################################################
1475
1476 #########
1477 # Others
1478 #########
1479
1480 #EXTRA_LDFLAGS += --strip-debug
1481
1482 EXTRA_CFLAGS += $(DHDCFLAGS) -DDHD_DEBUG
1483 EXTRA_CFLAGS += -DSRCBASE=\"$(src)\"
1484 EXTRA_CFLAGS += -I$(src)/include/ -I$(src)/
1485 EXTRA_CFLAGS += $(call cc-option, -Wunused-but-set-variable)
1486 EXTRA_CFLAGS += $(call cc-option, -Wmaybe-uninitialized)
1487 KBUILD_CFLAGS += -I$(LINUXDIR)/include -I$(CURDIR)
1488
1489 DHDOFILES := dhd_pno.o dhd_common.o dhd_ip.o dhd_custom_gpio.o dhd_custom_sec.o \
1490 dhd_linux.o dhd_linux_sched.o dhd_cfg80211.o dhd_linux_wq.o aiutils.o bcmevent.o \
1491 bcmutils.o bcmwifi_channels.o hndpmu.o linux_osl.o linux_pkt.o sbutils.o siutils.o \
1492 wl_android.o wl_cfg80211.o wl_cfgp2p.o wl_cfg_btcoex.o wldev_common.o \
1493 wl_linux_mon.o wl_roam.o dhd_linux_platdev.o dhd_linux_wq.o wl_cfg_btcoex.o \
1494 hnd_pktq.o hnd_pktpool.o dhd_custom_cis.o dhd_debug.o dhd_debug_linux.o dhd_mschdbg.o \
1495 dhd_dbg_ring.o dhd_linux_exportfs.o
1496
1497 ifeq ($(BUS_IFACE_SDIO),y)
1498 DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o
1499 DHDOFILES += dhd_cdc.o dhd_sdio.o
1500 DHDOFILES += dhd_wlfc.o
1501 endif
1502
1503 ifeq ($(BUS_IFACE_PCIE),y)
1504 DHDOFILES += dhd_pcie.o dhd_pcie_linux.o pcie_core.o dhd_flowring.o dhd_msgbuf.o
1505 endif
1506
1507 DHDOFILES += $(DHD_ANDROID_OFILES)
1508
1509 # For SPI projects
1510 ifeq ($(CONFIG_SPI_SC8810),y)
1511 DHDOFILES += bcmsdspi_linux.o bcmspibrcm.o
1512 DHDOFILES :=$(filter-out bcmsdh_sdmmc.o,$(DHDOFILES))
1513 DHDOFILES :=$(filter-out bcmsdh_sdmmc_linux.o,$(DHDOFILES))
1514 endif
1515
1516 # NAN feature
1517 #Until SDK update, uncoditionally enabling NAN for now
1518 #ifeq ($(CONFIG_WL_NAN),y)
1519 DHDOFILES += wl_cfgnan.o bcmxtlv.o bcmbloom.o
1520 #endif // endif
1521
1522 ifneq ($(filter -DDHD_PKT_LOGGING,$(DHDCFLAGS)),)
1523 DHDOFILES += dhd_pktlog.o
1524 endif
1525
1526 ifneq ($(filter -DDHD_EVENT_LOG_FILTER, $(DHDCFLAGS)),)
1527 DHDOFILES += dhd_event_log_filter.o
1528 endif
1529
1530 ifneq ($(filter -DBIGDATA_SOFTAP,$(DHDCFLAGS)),)
1531 DHDOFILES += wl_bigdata.o
1532 endif
1533
1534 ifneq ($(filter -DWL_BAM,$(DHDCFLAGS)),)
1535 DHDOFILES += wl_bam.o
1536 endif
1537
1538 dhd-y := $(DHDOFILES)
1539 obj-$(DRIVER_TYPE) += dhd.o
1540
1541 all:
1542 @echo "$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules"
1543 @$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules
1544
1545 clean:
1546 rm -rf *.o *.ko *.mod.c *~ .*.cmd *.o.cmd .*.o.cmd \
1547 Module.symvers modules.order .tmp_versions modules.builtin
1548
1549 install:
1550 @$(MAKE) --no-print-directory -C $(KDIR) \
1551 SUBDIRS=$(CURDIR) modules_install