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