source: G950FXXS5DSI1
[GitHub/exynos8895/android_kernel_samsung_universal8895.git] / drivers / net / wireless / bcmdhd4361 / Makefile.kk
CommitLineData
1cac41cb
MB
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
30DHDCFLAGS += -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#####################
40ifneq ($(CONFIG_BCMDHD_PCIE),)
41 BUS_IFACE_PCIE=y
42else
43 BUS_IFACE_SDIO=y
44endif
45
46#####################
47# SDIO I/F
48#####################
49ifeq ($(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__
53ifeq ($(CONFIG_BCMDHD_OOB_HOST_WAKE),y)
54 DHDCFLAGS += -DOOB_INTR_ONLY
55endif
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
69endif
70
71#####################
72# PCIE I/F
73#####################
74ifeq ($(BUS_IFACE_PCIE),y)
75 DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE
76 # Use the external WLAN_HOST_WAKE pin to wake up host
77ifeq ($(CONFIG_BCMDHD_OOB_HOST_WAKE),y)
78 DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
79endif
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
102ifeq ($(filter y,$(CONFIG_ARCH_SM8150) $(CONFIG_SOC_EXYNOS8890)),y)
103 DHDCFLAGS += -DWAKEUP_KSOFTIRQD_POST_NAPI_SCHEDULE
104endif
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
5a068558 110ifeq ($(filter y,$(CONFIG_SOC_EXYNOS8895) $(CONFIG_ARCH_MSM8998) $(CONFIG_SOC_EXYNOS9810) $(CONFIG_ARCH_SDM845)),y)
1cac41cb
MB
111 # Default Tx LB Enable
112 DHDCFLAGS += -DDHD_LB_TXP_DEFAULT_ENAB
113endif
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
118endif
119
120#################
121# Common feature
122#################
123
124DHDCFLAGS += -DCUSTOMER_HW4 -DCUSTOMER_HW4_DEBUG -DCUSTOMER_HW4_PRIVATE_CMD
125DHDCFLAGS += -DWL_CFG80211
126#DHDCFLAGS += -DDHD_INIT_DEFAULT_MEMDUMP
127
128# DMA64 suppports on 64bit Architecture
129ifeq ($(CONFIG_64BIT),y)
130DHDCFLAGS := $(filter-out -DBCMDMA32,$(DHDCFLAGS))
131DHDCFLAGS += -DBCMDMA64OSL
132endif
133
134# Debug
135DHDCFLAGS += -DSIMPLE_MAC_PRINT
136DHDCFLAGS += -DDEBUGFS_CFG80211
137# Enable wakelock for legacy scan
138DHDCFLAGS += -DDHD_USE_SCAN_WAKELOCK
139# Enable wakelock debug function
140DHDCFLAGS += -DDHD_TRACE_WAKE_LOCK
141# Print out kernel panic point of file and line info when assertion happened
142DHDCFLAGS += -DBCMASSERT_LOG
143# Collect Current Assoc/Reject Status for Big Data logging
144DHDCFLAGS += -DDHD_ENABLE_BIGDATA_LOGGING
145# Enable SI utility error log
146DHDCFLAGS += -DSI_ERROR_ENFORCE
147
148# Print 8021X
149DHDCFLAGS += -DDHD_8021X_DUMP
150
151# Print DHCP
152DHDCFLAGS += -DDHD_DHCP_DUMP
153
154# Print ICMP
155DHDCFLAGS += -DDHD_ICMP_DUMP
156
157# VSDB
158DHDCFLAGS += -DVSDB
159
160# Wi-Fi Direct
161DHDCFLAGS += -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
162# For p2p connection issue
163DHDCFLAGS += -DWL_SCB_TIMEOUT=10
164# For TDLS tear down inactive time 10 sec
165DHDCFLAGS += -DCUSTOM_TDLS_IDLE_MODE_SETTING=10000
166# for TDLS RSSI HIGH for establishing TDLS link
167DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_HIGH=-80
168# for TDLS RSSI HIGH for tearing down TDLS link
169DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_LOW=-85
170
171# Roaming
172DHDCFLAGS += -DROAM_AP_ENV_DETECTION
173DHDCFLAGS += -DROAM_ENABLE -DROAM_CHANNEL_CACHE -DROAM_API
174DHDCFLAGS += -DENABLE_FW_ROAM_SUSPEND
175DHDCFLAGS += -DDHD_LOSSLESS_ROAMING
176DHDCFLAGS += -DSKIP_ROAM_TRIGGER_RESET
5a068558 177DHDCFLAGS += -DROAM_EVT_DISABLE
1cac41cb
MB
178
179# Enable Roam time thresh
180DHDCFLAGS += -DENABLE_MAX_DTIM_IN_SUSPEND
181DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT_IN_SUSPEND=10
182DHDCFLAGS += -DCUSTOM_ROAM_TIME_THRESH_IN_SUSPEND=6000
183DHDCFLAGS += -DMAX_DTIM_ALLOWED_INTERVAL=925
184
185# CCX
186ifeq ($(CONFIG_BRCM_CCX),y)
187 DHDCFLAGS += -DBCMCCX
188endif
189
190# SoftAP
191DHDCFLAGS += -DWL_SUPPORT_AUTO_CHANNEL -DSUPPORT_HIDDEN_AP
192DHDCFLAGS += -DSUPPORT_SOFTAP_SINGL_DISASSOC
193DHDCFLAGS += -DDISABLE_11H_SOFTAP
194# For support WPA and WPA2 mixed mode
195DHDCFLAGS += -DSUPPORT_SOFTAP_WPAWPA2_MIXED
196
197# HW4 specific features
198DHDCFLAGS += -DSUPPORT_PM2_ONLY
199DHDCFLAGS += -DSUPPORT_DEEP_SLEEP
200DHDCFLAGS += -DSUPPORT_AMPDU_MPDU_CMD
201DHDCFLAGS += -DSOFTAP_SEND_HANGEVT
202DHDCFLAGS += -DNUM_SCB_MAX_PROBE=3
203DHDCFLAGS += -DDHD_USE_ATOMIC_PKTGET
204DHDCFLAGS += -DTDLS_MSG_ONLY_WFD
205DHDCFLAGS += -DCUSTOM_KEEP_ALIVE_SETTING=30000
206DHDCFLAGS += -DCUSTOM_EVENT_PM_WAKE=30
207DHDCFLAGS += -DENABLE_TDLS_AUTO_MODE
208DHDCFLAGS += -DP2P_SKIP_DFS
209DHDCFLAGS += -DKEEP_WIFION_OPTION
210DHDCFLAGS += -DPREVENT_REOPEN_DURING_HANG
211DHDCFLAGS += -DEXPLICIT_DISCIF_CLEANUP
212DHDCFLAGS += -DSKIP_WLFC_ON_CONCURRENT
213DHDCFLAGS += -DP2P_LISTEN_OFFLOADING
214DHDCFLAGS += -DUNSET_FW_ROAM_WIPHY_FLAG
215DHDCFLAGS += -DCUSTOM_LONG_RETRY_LIMIT=12
216DHDCFLAGS += -DDISABLE_ANDROID_PNO
217DHDCFLAGS += -DSUPPORT_SET_TID
218
219# For special PNO Event keep wake lock for 10sec
220DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10
221
222# For IPV6 Neighbor Discovery Offload Support
223DHDCFLAGS += -DIPV6_NDO_SUPPORT
224
225# Early suspend
226DHDCFLAGS += -DDHD_USE_EARLYSUSPEND
227
228# WiFi turn off delay
229DHDCFLAGS += -DWIFI_TURNOFF_DELAY=100
230
231# For Scan result patch
232DHDCFLAGS += -DESCAN_RESULT_PATCH
233DHDCFLAGS += -DDUAL_ESCAN_RESULT_BUFFER
234DHDCFLAGS += -DESCAN_BUF_OVERFLOW_MGMT
235
236# For Static Buffer
237ifeq ($(CONFIG_BROADCOM_WIFI_RESERVED_MEM),y)
238 DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF
239 DHDCFLAGS += -DENHANCED_STATIC_BUF
240 DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT
241ifeq ($(BUS_IFACE_PCIE),y)
242 # Use preallocated IOCTL, EVENT and INFO buffer
243 DHDCFLAGS += -DDHD_USE_STATIC_CTRLBUF
244ifeq ($(CONFIG_BCMDHD_PREALLOC_MEMDUMP),y)
245 DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP
246endif
247endif # BUS_IFACE_PCIE
248endif # CONFIG_BROADCOM_WIFI_RESERVED_MEM
249
250# Ioctl timeout 5000ms
251DHDCFLAGS += -DIOCTL_RESP_TIMEOUT=5000
252
253# Priority mismatch fix with kernel stack
254DHDCFLAGS += -DPKTPRIO_OVERRIDE
255
256# Prevent rx thread monopolize
257DHDCFLAGS += -DWAIT_DEQUEUE
258
259# Control PM related value for MFG process(Read from file)
260DHDCFLAGS += -DDHD_PM_CONTROL_FROM_FILE
261
262# Use Android wake lock mechanism
263DHDCFLAGS += -DCONFIG_HAS_WAKELOCK
264
265# Used short dwell time during initial scan
266DHDCFLAGS += -DUSE_INITIAL_SHORT_DWELL_TIME
267
268# Korea and Japan ccode revision will be fixed by nvram's value
269DHDCFLAGS += -DKEEP_KR_REGREV
270DHDCFLAGS += -DKEEP_JP_REGREV
271
272# NAN feature
273#Until SDK update, uncoditionally enabling NAN for now
274#ifeq ($(CONFIG_WL_NAN),y)
275DHDCFLAGS += -DWL_NAN -DWL_NAN_DISC_CACHE
276#endif // endif
277
278# FCC power limit control on ch12/13.
279DHDCFLAGS += -DFCC_PWR_LIMIT_2G
280
281# WFA Certification feature
282DHDCFLAGS += -DUSE_WFA_CERT_CONF
283
284# Change the WL_SCAN_TIMER_INTERVAL_MS of DHD
285DHDCFLAGS += -DCUSTOMER_SCAN_TIMEOUT_SETTING
286
287# Enable HANG event test private command
288DHDCFLAGS += -DSUPPORT_TRIGGER_HANG_EVENT
289
290# Enable Checking Blob existence
291DHDCFLAGS += -DDHD_BLOB_EXISTENCE_CHECK
292
293# Random mac scan
294#DHDCFLAGS += -DSUPPORT_RANDOM_MAC_SCAN
295
296# WLC_E_SET_SSID fail
297DHDCFLAGS += -DSET_SSID_FAIL_CUSTOM_RC=100
298
299# Enable to block Band A(5G), Only support Band B(2G)
300ifeq ($(CONFIG_WLAN_5GDISABLE),y)
301DHDCFLAGS += -DDHD_2G_ONLY_SUPPORT
302endif
303
304# Disable VHT(5G HT80) mode
305ifeq ($(CONFIG_WLAN_VHTDISABLE),y)
306DHDCFLAGS += -DDHD_DISABLE_VHTMODE
307endif
308
309# Use legacy random mac
310# Disable the legacy randmac and enable scanmac
311#DHDCFLAGS += -DLEGACY_RANDOM_MAC
312
313DHDCFLAGS += -DBCMCRYPTO_COMPONENT
314
315# Android Version Check from Platform source
316ifneq ($(ANDROID_VERSION),)
317MAJOR_VERSION := $(shell echo $(ANDROID_VERSION) | rev | cut -c 5- | rev)
318DHDCFLAGS += -DANDROID_PLATFORM_VERSION=$(MAJOR_VERSION)
319else
320ifneq ($(PLATFORM_VERSION),)
321MAJOR_VERSION := $(shell echo $(PLATFORM_VERSION) | cut -d "." -f 1)
322DHDCFLAGS += -DANDROID_PLATFORM_VERSION=$(MAJOR_VERSION)
323endif
324endif
325
326# TCP SYNC flood attack block
327DHDCFLAGS += -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
337DHDCFLAGS += -DWL_ENABLE_P2P_IF
338DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES
339# Default definitions for KitKat
340DHDCFLAGS += -DWL_CFG80211_STA_EVENT
341DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
342# To support p2p private command on kernel 3.8 or above
343DHDCFLAGS += -DWL_NEWCFG_PRIVCMD_SUPPORT
344
345##########################
346# driver type
347# m: module type driver
348# y: built-in type driver
349##########################
350DRIVER_TYPE ?= m
351
352#########################
353# Chip dependent feature
354#########################
355# Chipsets supported both SDIO and PCIE
356ifneq ($(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
384DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
385
386# tput enhancement for PCIE
387ifeq ($(BUS_IFACE_PCIE),y)
388 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
389 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
390 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
391endif
392
393ifeq ($(CONFIG_ARCH_QCOM),y)
394 DHDCFLAGS += -DCONFIG_ARCH_MSM
395 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
396endif
397
398ifeq ($(CONFIG_ARCH_MSM),y)
399 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
400endif
401
402ifeq ($(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
407endif
408
409# New Features
410 DHDCFLAGS += -DWL11U -DMFP
411 DHDCFLAGS += -DBCMCCX
412 DHDCFLAGS += -DWES_SUPPORT
5a068558 413 DHDCFLAGS += -DSUPPORT_RESTORE_SCAN_PARAMS
1cac41cb
MB
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
440ifneq ($(CUSTOM_LOG_DUMP_BUFSIZE_MB),)
441 DHDCFLAGS += -DCUSTOM_LOG_DUMP_BUFSIZE_MB=$(CUSTOM_LOG_DUMP_BUFSIZE_MB)
442endif
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
471ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_ARCH_SDM845)),y)
472 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
473endif
474
475ifeq ($(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
484endif
485
486ifeq ($(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
505endif
506
507# Use Legacy dump path
508ifneq ($(USE_LEGACY_DUMP_PATH),)
509 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
510else
511 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
512endif
513
514# For Samsung factory mode only
515ifeq ($(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
5a068558
MB
520# Detect turn on failure
521 DHDCFLAGS += -DBCM_DETECT_TURN_ON_FAILURE
1cac41cb
MB
522endif # CONFIG_SEC_FACTORY
523
524ifeq ($(CONFIG_BCM4375),y)
525 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
526 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
527 DRIVER_TYPE = y
528endif
529endif
530
531# Chipsets supported both SDIO and PCIE
532ifneq ($(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
1cac41cb 545 DHDCFLAGS += -DDISABLE_WL_FRAMEBURST_SOFTAP
1cac41cb
MB
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
5a068558
MB
555#FAKEAP
556 DHDCFLAGS += -DWL_BCNRECV
1cac41cb
MB
557 DHDCFLAGS += -DWL_STATIC_IF
558 DHDCFLAGS += -DWL_STATIC_IFNAME_PREFIX="\"swlan0\""
559
560#Iface force dev close
561DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
562
563# tput enhancement for PCIE
564ifeq ($(BUS_IFACE_PCIE),y)
565 DHDCFLAGS += -DCUSTOM_TCPACK_SUPP_RATIO=15
566 DHDCFLAGS += -DCUSTOM_TCPACK_DELAY_TIME=10
567 DHDCFLAGS += -DDHDTCPACK_SUPPRESS
568ifeq ($(filter y,$(CONFIG_SOC_EXYNOS8895) $(CONFIG_ARCH_MSM8998)),y)
569 DHDCFLAGS += -DDHD_RECOVER_TIMEOUT
570endif
571endif
572
573ifeq ($(CONFIG_ARCH_QCOM),y)
574 DHDCFLAGS += -DCONFIG_ARCH_MSM
575 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
576endif
577
578ifeq ($(CONFIG_ARCH_MSM),y)
579 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
580endif
581
582ifeq ($(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
587endif
588
589# New Features
590ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_SOC_EXYNOS8895)),y)
591 DHDCFLAGS += -DDHD_RANDOM_MAC_SCAN
592endif
593 DHDCFLAGS += -DWL11U -DMFP
594 DHDCFLAGS += -DBCMCCX
595 DHDCFLAGS += -DWES_SUPPORT
5a068558 596 DHDCFLAGS += -DSUPPORT_RESTORE_SCAN_PARAMS
1cac41cb
MB
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
620ifneq ($(CUSTOM_LOG_DUMP_BUFSIZE_MB),)
621 DHDCFLAGS += -DCUSTOM_LOG_DUMP_BUFSIZE_MB=$(CUSTOM_LOG_DUMP_BUFSIZE_MB)
622endif
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
640ifeq ($(CONFIG_WLAN_TSQ_MULTIPLIER),y)
641 DHDCFLAGS += -DTSQ_MULTIPLIER=10
642endif
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
653ifeq ($(filter y,$(CONFIG_ARCH_MSM8998) $(CONFIG_ARCH_SDM845)),y)
654 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
655endif
656
657ifeq ($(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
666endif
667
668ifeq ($(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
687endif
688
689# Use Legacy dump path
690ifneq ($(USE_LEGACY_DUMP_PATH),)
691 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
692else
693 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
694endif
695
696ifeq ($(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
701endif
702
703# For Samsung factory mode only
704ifeq ($(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
5a068558
MB
709# Detect turn on failure
710 DHDCFLAGS += -DBCM_DETECT_TURN_ON_FAILURE
1cac41cb
MB
711endif # CONFIG_SEC_FACTORY
712
713ifeq ($(CONFIG_BCM4361),y)
714 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
715 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
716 DRIVER_TYPE = y
717endif
718endif
719
720ifneq ($(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
739ifneq ($(USE_LEGACY_DUMP_PATH),)
740 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/media/wifi/log/\""
741else
742 DHDCFLAGS += -DDHD_COMMON_DUMP_PATH="\"/data/log/wifi/\""
743endif
744
745# tput enhancement for PCIE
746ifeq ($(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
755ifeq ($(CONFIG_ARCH_MSM8998),y)
756# Use SMMU for IOMEM
757 DHDCFLAGS += -DUSE_SMMU_ARCH_MSM
758endif
759
760ifeq ($(CONFIG_ARCH_QCOM),y)
761 DHDCFLAGS += -DCONFIG_ARCH_MSM
762 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
763endif
764
765ifeq ($(CONFIG_ARCH_MSM),y)
766 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
767endif
768endif
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
806ifeq ($(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
815ifeq ($(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))
820endif
821endif
822
823ifeq ($(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
827endif
828
829ifeq ($(filter y,$(CONFIG_WLAN_HERO) $(CONFIG_SEC_HEROQLTE_PROJECT)),y)
830 DHDCFLAGS += -DDHD_SUPPORT_US_949
831 DHDCFLAGS += -DDHD_SUPPORT_QA_6
832endif
833
834ifeq ($(filter y,$(CONFIG_WLAN_HERO2) $(CONFIG_SEC_HERO2QLTE_PROJECT)),y)
835 DHDCFLAGS += -DDHD_SUPPORT_US_945
836 DHDCFLAGS += -DDHD_SUPPORT_QA_6
837endif
838# HANG simulation
839 DHDCFLAGS += -DDHD_HANG_SEND_UP_TEST
840
5a068558 841ifeq ($(filter y,$(CONFIG_WLAN_GRACE) $(CONFIG_SEC_KELLYLTE_PROJECT)),y)
1cac41cb
MB
842 DHDCFLAGS += -DWBTEXT
843 DHDCFLAGS += -DDHD_USE_CLMINFO_PARSER
844endif
845
846# LOGTRACE_EVENT
847 DHDCFLAGS += -DSHOW_LOGTRACE
848 DHDCFLAGS += -DLOGTRACE_FROM_FILE
849
850# Enable concate blob path
851 DHDCFLAGS += -DCONCATE_BLOB
5a068558
MB
852# Generate .softap.info
853 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
1cac41cb
MB
854
855# For Samsung factory mode only
856ifeq ($(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
861endif # CONFIG_SEC_FACTORY
862
863ifeq ($(CONFIG_BCM4359),y)
864 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
865 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
866 DRIVER_TYPE = y
867endif
868endif
869
870ifneq ($(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
882ifeq ($(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
898endif
899# tput enhancement for PCIE
900ifeq ($(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
908endif
909
910# Disabled DHDTCPACK_SUPPRESS for T Project / Enabled for Zero Project
911ifeq ($(filter y,$(CONFIG_MACH_UNIVERSAL5433) $(CONFIG_ARCH_APQ8084)),y)
912 DHDCFLAGS :=$(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
913endif
914
915ifeq ($(CONFIG_ARCH_MSM),y)
916 DHDCFLAGS += -DSET_RPS_CPUS
917 DHDCFLAGS := $(filter-out -DDHDTCPACK_SUPPRESS,$(DHDCFLAGS))
918endif
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
934ifeq ($(CONFIG_BCM4358),y)
935 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
936 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
937 DRIVER_TYPE = y
938endif
939endif
940
941ifneq ($(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
953ifeq ($(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
970endif
971
972# tput enhancement for PCIE
973ifeq ($(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
977endif
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
993ifeq ($(CONFIG_BCM4354),y)
994 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
995 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
996 DRIVER_TYPE = y
997endif
998endif
999
1000# Chipsets supported SDIO only
1001ifeq ($(BUS_IFACE_SDIO),y)
1002ifneq ($(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
1020ifeq ($(CONFIG_ARCH_MSM),y)
1021 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1022 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
1023endif
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
1041ifeq ($(CONFIG_BCM4339),y)
1042 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1043 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1044 DRIVER_TYPE = y
1045endif
1046endif
1047
1048ifneq ($(CONFIG_BCM43456),)
1049 DHDCFLAGS += -DBCM43456_CHIP
1050 DHDCFLAGS += -DWLADPS_PRIVATE_CMD
1051endif
1052ifneq ($(CONFIG_BCM43455),)
1053 DHDCFLAGS += -DBCM43455_CHIP
1054endif
1055ifneq ($(CONFIG_BCM43454),)
1056 DHDCFLAGS += -DBCM43454_CHIP
1057endif
1058
1059# BCM43454/43455/43456 common difine.
1060ifneq ($(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
1094ifeq ($(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
1098endif
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
1110ifeq ($(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
1113endif
1114
1115ifneq ($(PLATFORM_VERSION),)
1116# Android O OS use below features
1117ifeq ($(shell expr $(PLATFORM_VERSION) \>= 8.0),1)
1118# Use single nvram file
1119 DHDCFLAGS += -DDHD_USE_SINGLE_NVRAM_FILE
1120endif
1121endif
1122
1123ifneq ($(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
1135ifneq ($(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
5a068558
MB
1145 DHDCFLAGS += -DWL_STATIC_IF
1146 DHDCFLAGS += -DWL_STATIC_IFNAME_PREFIX="\"swlan0\""
1147# Iface force dev close
1148 DHDCFLAGS += -DIFACE_HANG_FORCE_DEV_CLOSE
1cac41cb
MB
1149endif
1150endif
1151endif
1152
1153ifneq ($(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
1188ifeq ($(CONFIG_BCM43454),y)
1189 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1190 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1191 DRIVER_TYPE = y
1192endif
1193 DHDCFLAGS += -DCUSTOM_PSPRETEND_THR=30
1194endif
1195
1196ifneq ($(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
1217ifeq ($(CONFIG_MACH_JF),y)
1218 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1219endif
1220ifeq ($(CONFIG_ARCH_MSM),y)
1221 DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32
1222 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000
1223endif
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
1241ifeq ($(CONFIG_BCM4335BT),y)
1242 DHDCFLAGS += -DENABLE_4335BT_WAR
1243endif
1244ifeq ($(CONFIG_BCM4335),y)
1245 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1246 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1247 DRIVER_TYPE = y
1248endif
1249endif
1250
1251ifneq ($(CONFIG_BCM4343),)
1252 DHDCFLAGS += -DBCM43430_CHIP -DSUPPORT_MULTIPLE_REVISION -DHW_OOB
1253 DHDCFLAGS += -DUSE_CID_CHECK
1cac41cb 1254 DHDCFLAGS += -DCUSTOM_ASSOC_RETRY_MAX=7
5a068558 1255 DHDCFLAGS += -DENABLE_BCN_LI_BCN_WAKEUP
1cac41cb
MB
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
5a068558
MB
1262ifeq ($(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
1268ifeq ($(CONFIG_BCMDHD_PREALLOC_MEMDUMP),y)
1269 DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP
1270endif
1271else
1272 DHDCFLAGS += -DCUSTOM_GLOM_SETTING=0
1273endif
1cac41cb
MB
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
1282ifeq ($(CONFIG_BCM4343),y)
1283 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1284 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1285 DRIVER_TYPE = y
1286endif
5a068558
MB
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
1cac41cb
MB
1295 DHDCFLAGS :=$(filter-out -DROAM_AP_ENV_DETECTION,$(DHDCFLAGS))
1296 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
5a068558 1297 DHDCFLAGS :=$(filter-out -DSUPPORT_P2P_GO_PS,$(DHDCFLAGS))
1cac41cb
MB
1298# Generate .softap.info
1299 DHDCFLAGS += -DGEN_SOFTAP_INFO_FILE
5a068558
MB
1300ifneq ($(PLATFORM_VERSION),)
1301# Android O OS use below features
1302ifeq ($(shell expr $(PLATFORM_VERSION) \>= 8.0),1)
1303# Use single nvram file
1304 DHDCFLAGS += -DDHD_USE_SINGLE_NVRAM_FILE
1305endif
1306endif
1cac41cb
MB
1307endif
1308
1309ifneq ($(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
1328ifneq ($(CONFIG_BT_OVER_SDIO),)
1329 DHDCFLAGS += -DBT_OVER_SDIO
1330endif
1331ifeq ($(CONFIG_BCM43012),y)
1332 DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
1333 DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
1334 DRIVER_TYPE = y
1335endif
1336ifeq ($(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
1344endif
1345 # Remove common feature for 43012
1346 DHDCFLAGS :=$(filter-out -DROAM_AP_ENV_DETECTION,$(DHDCFLAGS))
1347 DHDCFLAGS :=$(filter-out -DDISABLE_11H_SOFTAP,$(DHDCFLAGS))
1348endif
1349endif # chipset supported SDIO only
1350
1351#############################
1352# Platform dependent feature
1353#############################
1354
1355ifeq ($(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))
1368endif
1369
1370# For SLP feature
1371ifeq ($(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
1376endif
1377
1378# GGSM_WIFI_5GHz_CHANNELS feature is define for only GGSM model
1379ifeq ($(GGSM_WIFI_5GHz_CHANNELS),true)
1380 DHDCFLAGS += -DCUSTOMER_SET_COUNTRY
1381endif
1382
1383# Compiler option for specific platform
1384ifeq ($(CONFIG_SOC_EXYNOS8890),y)
1385 DHDCFLAGS += -Wno-date-time
1386endif
1387ifeq ($(CONFIG_SOC_EXYNOS7570),y)
1388 DHDCFLAGS += -Wno-date-time
1389endif
1390ifeq ($(CONFIG_SOC_EXYNOS8890),y)
1391 DHDCFLAGS += -Wno-date-time
1392endif
1393ifeq ($(CONFIG_SOC_EXYNOS8895),y)
1394 DHDCFLAGS += -Wno-date-time
1395endif
1396ifeq ($(CONFIG_ARCH_MSM8996),y)
1397 DHDCFLAGS += -Wno-date-time
1398endif
1399ifeq ($(CONFIG_ARCH_MSM8998),y)
1400 DHDCFLAGS += -Wno-date-time
1401endif
1402ifeq ($(CONFIG_SOC_EXYNOS9810),y)
1403 DHDCFLAGS += -Wno-date-time
1404endif
1405ifeq ($(CONFIG_ARCH_SDM845),y)
1406 DHDCFLAGS += -Wno-date-time
1407endif
1408
1409# DTS Support
1410ifeq ($(CONFIG_OF),y)
1411ifneq ($(CONFIG_MACH_UNIVERSAL5433),)
1412DHDCFLAGS += -DDHD_OF_SUPPORT
1413DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1414endif
1415ifneq ($(CONFIG_MACH_UNIVERSAL7420),)
1416DHDCFLAGS += -DDHD_OF_SUPPORT
1417DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1418endif
1419ifneq ($(CONFIG_SOC_EXYNOS8890),)
1420DHDCFLAGS += -DDHD_OF_SUPPORT
1421DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1422endif
1423ifneq ($(CONFIG_SOC_EXYNOS8895),)
1424DHDCFLAGS += -DDHD_OF_SUPPORT
1425DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1426endif
1427ifneq ($(CONFIG_MACH_EXSOM7420),)
1428DHDCFLAGS += -DDHD_OF_SUPPORT
1429DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1430DHDCFLAGS += -DEXYNOS_PCIE_MODULE_PATCH
1431obj-$(CONFIG_MACH_EXSOM7420) += dhd_custom_exynos.o dhd_custom_memprealloc.o
1432endif
1433ifneq ($(CONFIG_SOC_EXYNOS9810),)
1434DHDCFLAGS += -DDHD_OF_SUPPORT
1435DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1436endif
1437ifneq ($(CONFIG_MACH_UNIVERSAL5430),)
1438DHDCFLAGS += -DDHD_OF_SUPPORT
1439endif
1440ifneq ($(CONFIG_MACH_UNIVERSAL5422),)
1441DHDCFLAGS += -DDHD_OF_SUPPORT
1442endif
1443ifneq ($(CONFIG_ARCH_MSM8994),)
1444DHDCFLAGS += -DDHD_OF_SUPPORT
1445endif
1446ifneq ($(CONFIG_ARCH_MSM8996),)
1447DHDCFLAGS += -DDHD_OF_SUPPORT
1448DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1449endif
1450ifneq ($(CONFIG_ARCH_MSM8998),)
1451DHDCFLAGS += -DDHD_OF_SUPPORT
1452DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1453endif
1454ifeq ($(CONFIG_ARCH_SDM845),y)
1455DHDCFLAGS += -DDHD_OF_SUPPORT
1456DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
1457endif
1458ifneq ($(CONFIG_MACH_UNIVERSAL3475),)
1459DHDCFLAGS += -DDHD_OF_SUPPORT
1460endif
1461ifneq ($(CONFIG_ARCH_SWA100),)
1462DHDCFLAGS += -DDHD_OF_SUPPORT
1463endif
1464ifneq ($(CONFIG_SOC_EXYNOS7870),)
1465DHDCFLAGS += -DDHD_OF_SUPPORT
1466DHDCFLAGS += -Wno-date-time
1467endif
1468ifneq ($(CONFIG_SOC_EXYNOS7570),)
1469DHDCFLAGS += -DDHD_OF_SUPPORT
1470endif
1471endif #CONFIG_OF
1472
1473ifneq ($(CONFIG_ARCH_TEGRA),)
1474DHDCFLAGS := $(filter-out -DDHD_ALLOC_COHERENT_MEM_FROM_ATOMIC_POOL,$(DHDCFLAGS))
1475DHDCFLAGS := $(filter-out -DWL_VENDOR_EXT_SUPPORT,$(DHDCFLAGS))
1476DHDCFLAGS := $(filter-out -DGSCAN_SUPPORT,$(DHDCFLAGS))
1477DHDCFLAGS := $(filter-out -DRTT_SUPPORT,$(DHDCFLAGS))
1478DHDCFLAGS := $(filter-out -DDHD_LB_IRQSET,$(DHDCFLAGS))
1479DHDCFLAGS := $(filter-out -DSET_PCIE_IRQ_CPU_CORE,$(DHDCFLAGS))
5a068558 1480DHDCFLAGS := $(filter-out -DWL_BCNRECV,$(DHDCFLAGS))
1cac41cb
MB
1481DHD_ANDROID_OFILES := $(filter-out wl_cfgvendor.o,$(DHD_ANDROID_OFILES))
1482DHD_ANDROID_OFILES := $(filter-out dhd_rtt.o,$(DHD_ANDROID_OFILES))
1483endif
1484
1485##############################################################
1486# dhd_sec_feature.h
1487DHDCFLAGS += -include "dhd_sec_feature.h"
1488##############################################################
1489
1490#########
1491# Others
1492#########
1493
1494#EXTRA_LDFLAGS += --strip-debug
1495
1496EXTRA_CFLAGS += $(DHDCFLAGS) -DDHD_DEBUG
1497EXTRA_CFLAGS += -DSRCBASE=\"$(src)\"
1498EXTRA_CFLAGS += -I$(src)/include/ -I$(src)/
1499EXTRA_CFLAGS += $(call cc-option, -Wunused-but-set-variable)
1500EXTRA_CFLAGS += $(call cc-option, -Wmaybe-uninitialized)
1501KBUILD_CFLAGS += -I$(LINUXDIR)/include -I$(CURDIR)
1502
1503DHDOFILES := 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
1511ifeq ($(BUS_IFACE_SDIO),y)
1512DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o
1513DHDOFILES += dhd_cdc.o dhd_sdio.o
1514DHDOFILES += dhd_wlfc.o
1515endif
1516
1517ifeq ($(BUS_IFACE_PCIE),y)
1518DHDOFILES += dhd_pcie.o dhd_pcie_linux.o pcie_core.o dhd_flowring.o dhd_msgbuf.o
1519endif
1520
1521DHDOFILES += $(DHD_ANDROID_OFILES)
1522
1523# For SPI projects
1524ifeq ($(CONFIG_SPI_SC8810),y)
1525DHDOFILES += bcmsdspi_linux.o bcmspibrcm.o
1526DHDOFILES :=$(filter-out bcmsdh_sdmmc.o,$(DHDOFILES))
1527DHDOFILES :=$(filter-out bcmsdh_sdmmc_linux.o,$(DHDOFILES))
1528endif
1529
1530# NAN feature
1531#Until SDK update, uncoditionally enabling NAN for now
1532#ifeq ($(CONFIG_WL_NAN),y)
1533DHDOFILES += wl_cfgnan.o bcmxtlv.o bcmbloom.o
1534#endif // endif
1535
1536ifneq ($(filter -DDHD_PKT_LOGGING,$(DHDCFLAGS)),)
1537DHDOFILES += dhd_pktlog.o
1538endif
1539
1540ifneq ($(filter -DDHD_EVENT_LOG_FILTER, $(DHDCFLAGS)),)
1541DHDOFILES += dhd_event_log_filter.o
1542endif
1543
1544ifneq ($(filter -DBIGDATA_SOFTAP,$(DHDCFLAGS)),)
1545DHDOFILES += wl_bigdata.o
1546endif
1547
1548ifneq ($(filter -DWL_BAM,$(DHDCFLAGS)),)
1549DHDOFILES += wl_bam.o
1550endif
1551
1552dhd-y := $(DHDOFILES)
1553obj-$(DRIVER_TYPE) += dhd.o
1554
1555all:
1556 @echo "$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules"
1557 @$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules
1558
1559clean:
1560 rm -rf *.o *.ko *.mod.c *~ .*.cmd *.o.cmd .*.o.cmd \
1561 Module.symvers modules.order .tmp_versions modules.builtin
1562
1563install:
1564 @$(MAKE) --no-print-directory -C $(KDIR) \
1565 SUBDIRS=$(CURDIR) modules_install