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