# bcmdhd
#####################
# SDIO Basic feature
#####################
#PRODUCT_CHINAMOBILE := y
DHDCFLAGS += -Wall -Wstrict-prototypes -Dlinux -DLINUX -DBCMDRIVER            \
	-DBCMDONGLEHOST -DUNRELEASEDCHIP -DBCMDMA32 -DBCMFILEIMAGE            \
	-DDHDTHREAD -DSHOW_EVENTS -DBCMDBG -DWLP2P                            \
	-DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT                                \
	-DKEEP_ALIVE -DCSCAN -DPKT_FILTER_SUPPORT                             \
	-DEMBEDDED_PLATFORM -DPNO_SUPPORT                                     \
	-DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT                           \
	-DCUSTOMER_HW2 -DGET_CUSTOM_MAC_ENABLE

#################
# Common feature
#################
DHDCFLAGS += -DWLFBT
DHDCFLAGS += -DWL_CFG80211
DHDCFLAGS += -DDEBUGFS_CFG80211
DHDCFLAGS += -DWL_TEM_CTRL

DHDCFLAGS += -DCONFIG_HAS_WAKELOCK
#Support abort scan
DHDCFLAGS += -DBCM_PATCH_ABORT_SCAN
# Print out kernel panic point of file and line info when assertion happened
DHDCFLAGS += -DBCMASSERT_LOG
# Print simple MAC
DHDCFLAGS += -DSIMPLE_MAC_PRINT
# keepalive
DHDCFLAGS += -DCUSTOM_KEEP_ALIVE_SETTING=28000

DHDCFLAGS += -DVSDB

# For p2p connection issue
DHDCFLAGS += -DWL_SCB_TIMEOUT=10

# Support random MAC scan
DHDCFLAGS += -DBCM_SUPPORT_RAND_MAC

DHDCFLAGS += -DSOFTAP
DHDCFLAGS += -DBCM_APF
#ifneq ($(CONFIG_WIRELESS_EXT),)
#DHDCFLAGS += -DSOFTAP -DWL_WIRELESS_EXT -DUSE_IW
#endif

# TDLS enable
DHDCFLAGS += -DWLTDLS -DWLTDLS_AUTO_ENABLE
# For TDLS tear down inactive time 40 sec
DHDCFLAGS += -DCUSTOM_TDLS_IDLE_MODE_SETTING=40000
# for TDLS RSSI HIGH for establishing TDLS link
DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_HIGH=-60
# for TDLS RSSI HIGH for tearing down TDLS link
DHDCFLAGS += -DCUSTOM_TDLS_RSSI_THRESHOLD_LOW=-70

# Roaming
#DHDCFLAGS += -DROAM_AP_ENV_DETECTION
DHDCFLAGS += -DROAM_ENABLE -DROAM_CHANNEL_CACHE -DROAM_API
DHDCFLAGS += -DENABLE_FW_ROAM_SUSPEND
# Roaming trigger
DHDCFLAGS += -DCUSTOM_ROAM_TRIGGER_SETTING=-75
DHDCFLAGS += -DCUSTOM_ROAM_DELTA_SETTING=8
# Full roam scan period
DHDCFLAGS += -DFULL_ROAMING_SCAN_PERIOD_60_SEC
# BSSID blacklist
DHDCFLAGS += -DBCM_BSSID_BLACKLIST
# Set PM 2 always regardless suspend/resume
DHDCFLAGS += -DSUPPORT_PM2_ONLY

# For special PNO Event keep wake lock for 10sec
DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10
DHDCFLAGS += -DMIRACAST_AMPDU_SIZE=8

#PNO trigger
#DHDCFLAGS += -DPNO_MIN_RSSI_TRIGGER=-75

#Gscan
DHDCFLAGS += -DGSCAN_SUPPORT
DHDCFLAGS += -DWL_VENDOR_EXT_SUPPORT
#Link Statistics
DHDCFLAGS += -DLINKSTAT_SUPPORT


# Early suspend
DHDCFLAGS += -DDHD_USE_EARLYSUSPEND

# For Scan result patch
DHDCFLAGS += -DESCAN_RESULT_PATCH

# For Static Buffer
ifeq ($(CONFIG_DHD_USE_STATIC_BUF),y)
  #DHDCFLAGS += -DENHANCED_STATIC_BUF
  #DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT
endif

ifneq ($(CONFIG_DHD_USE_SCHED_SCAN),)
DHDCFLAGS += -DWL_SCHED_SCAN
endif

ifeq ($(CONFIG_DHD_OF_SUPPORT),y)
  DHDCFLAGS += -DDHD_OF_SUPPORT
endif

# Ioctl timeout 3000ms
DHDCFLAGS += -DIOCTL_RESP_TIMEOUT=3000

# Prevent rx thread monopolize
DHDCFLAGS += -DWAIT_DEQUEUE

# Config PM Control
DHDCFLAGS += -DCONFIG_CONTROL_PM

# idle count
DHDCFLAGS += -DDHD_USE_IDLECOUNT

# SKB TAILPAD to avoid out of boundary memory access
DHDCFLAGS += -DDHDENABLE_TAILPAD

# DTIM skip interval
DHDCFLAGS += -DCUSTOM_SUSPEND_BCN_LI_DTIM=2 -DMAX_DTIM_ALLOWED_INTERVAL=600

# Wi-Fi Direct
DHDCFLAGS += -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
DHDCFLAGS += -DWL_CFG80211_STA_EVENT
DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
DHDCFLAGS += -DWL_ENABLE_P2P_IF

DHDCFLAGS += -DWL_CFG80211_ACL
DHDCFLAGS += -DDISABLE_11H_SOFTAP
#DHDCFLAGS += -DSET_RANDOM_MAC_SOFTAP
DHDCFLAGS += -DCUSTOM_FORCE_NODFS_FLAG
DHDCFLAGS += -DCUSTOM_SET_SHORT_DWELL_TIME

##########################
# driver type
# m: module type driver
# y: built-in type driver
##########################
ifeq ($(CONFIG_DHD_STATIC_KO),y)
  DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
  DRIVER_TYPE :=m
else
  DRIVER_TYPE ?= y
endif

#define custom macro for all chip
#bcm bug and feature macro
DHDCFLAGS += -DHW_FIX_OOB_FLAG_BUG
DHDCFLAGS += -DBCMWAPI_WPI -DBCMWAPI_WAI
DHDCFLAGS += -DHW_WAPI_AUTH_TYPE_BUG
DHDCFLAGS += -DSCAN_TIMEOUT_FIX
DHDCFLAGS += -DKSO_ERROR_FIX
DHDCFLAGS += -DHW_SUPPORT_SHORT_GI
DHDCFLAGS += -DHW_WIFI_OOB_INT_SET
DHDCFLAGS += -DHW_WIFI_DRV_DEBUG
DHDCFLAGS += -DHW_SOFTAP_CANNOT_BE_CONNECTTED
DHDCFLAGS += -DHW_WIFI_WAKEUP_SOC_BUG
DHDCFLAGS += -DHW_WIFI_SUSPEND_ISSUE
DHDCFLAGS += -DHW_SOFTAP_NOT_SUSPEND_BUG
DHDCFLAGS += -DHW_WIFI_POWER_OPTIMIZE
DHDCFLAGS += -DHW_WIFI_WDEV_CLEANUP_WORK_PANIC
DHDCFLAGS += -DHW_P2P_SPINLOCK_PATCH
DHDCFLAGS += -DHW_SOFTAP_MANAGEMENT
DHDCFLAGS += -DHW_SOFTAP_ENABLE_BW_80
DHDCFLAGS += -DHW_WIFI_POLL_ENABLE
DHDCFLAGS += -DHW_WIFI_WAKELOCK_BUGFIX
DHDCFLAGS += -DHW_WIFI_ALLOC_IF_PANIC
DHDCFLAGS += -DHW_SET_PM
DHDCFLAGS += -DHW_WIFI_P2P_BUFF_NONULL
DHDCFLAGS += -DHW_SHARE_WIFI_FILTER_MANAGE
DHDCFLAGS += -DBCM_PATCH_GSCAN
DHDCFLAGS += -DBCM_BLOCK_DATA_FRAME
DHDCFLAGS += -DBCM_PATCH_FOR_ROAM_EVENT
DHDCFLAGS += -DBCM_PATCH_FOR_DHCP_BASIC_RATE
DHDCFLAGS += -DBCM_PATCH_FOR_AMPDU_TEAR_DOWN
DHDCFLAGS += -DBCM_PATCH_HIDDEN_DIRECT_SCAN
#DHDCFLAGS += -DHUAWEI_DNS_PRIO
DHDCFLAGS += -DHW_RRM_DISABLE
DHDCFLAGS += -DHW_PATCH_FOR_HANG

# Print 802.1X packets
DHDCFLAGS += -DDHD_8021X_DUMP
# Print DHCP packets
DHDCFLAGS += -DDHD_DHCP_DUMP
# prioritize 802.1x packet
DHDCFLAGS += -DEAPOL_PKT_PRIO

#security patch macro begin
DHDCFLAGS += -DHW_WIFI_SECURITY_PATCH
DHDCFLAGS += -DBCM_PATCH_FOR_ETHERTYPE_SECURITY
DHDCFLAGS += -DBCM_PATCH_CVE_2016_0801
DHDCFLAGS += -DBCM_PATCH_CVE_2016_2475
DHDCFLAGS += -DBCM_PATCH_CVE_2016_2493
DHDCFLAGS += -DBCM_PATCH_CVE_2016_3869
DHDCFLAGS += -DBCM_PATCH_CVE_2016_8455
DHDCFLAGS += -DBCM_PATCH_CVE_2017_13213
DHDCFLAGS += -DBCM_PATCH_CVE_2017_13292_13303
DHDCFLAGS += -DBCM_PATCH_2016_12_2017_01
DHDCFLAGS += -DBCM_PATCH_SECURITY_2017_02
DHDCFLAGS += -DBCM_PATCH_SECURITY_2017_04
DHDCFLAGS += -DBCM_PATCH_SECURITY_2017_07
DHDCFLAGS += -DBCM_PATCH_SECURITY_2017_12
#security patch macro end

#huawei feature macro
DHDCFLAGS += -DHW_WIFI_FIRST_SCAN_OPTIMIZE
DHDCFLAGS += -DHW_WIFI_SHUTDOWN
DHDCFLAGS += -DHW_WIFI_OPEN_STOP
DHDCFLAGS += -DNARAM_FROM_DTS
DHDCFLAGS += -DHW_SDIO_RW_RETRY
DHDCFLAGS += -DHW_WIFI_DRIVER_NORMALIZE
DHDCFLAGS += -DHW_WIFI_RTT_DISABLE
ifneq ($(CONFIG_HUAWEI_DSM),)
  DHDCFLAGS += -DHW_WIFI_DMD_LOG
endif
DHDCFLAGS += -DHW_WIFI_GET_DRIVER_BUS_STATUS
DHDCFLAGS += -DHW_CUST_COUNTRY_CODE
ccflags-$(CONFIG_BCMDHD_SDIO) += -DHW_WIFI_SDIO_LOWPOWER
DHDCFLAGS += -DHW_HANG_EVENT
DHDCFLAGS += -DHW_P2P_CANNOT_CONNECT
DHDCFLAGS += -DBCM_PATCH_GO_DETECT_GC_TIMEOUT
DHDCFLAGS += -DBCM_PATCH_ESCAN_ABORTED_WLINFORMBSS
#DHDCFLAGS += -DHW_PATCH_DISABLE_TCP_TIMESTAMPS
DHDCFLAGS += -DHW_SDIO_DPC_SUSPEND
DHDCFLAGS += -DHW_WIFI_WAKEUP_SRC_PARSE
DHDCFLAGS += -DWRONG_ACTION_PATCH
DHDCFLAGS += -DSDIO_CRC_ERROR_FIX
DHDCFLAGS += -DSUPPORT_2G_VHT
DHDCFLAGS += -DNVRAM_FROM_DTS
DHDCFLAGS += -DHW_SKIP_ATTACH_GET_MAC
DHDCFLAGS += -DHW_SKIP_CMD52_TIMEOUT_LOG
DHDCFLAGS += -DHW_DEADLOCK_ERROR_FIX
DHDCFLAGS += -DHW_NVRAM_VARS_CALIBRATE
DHDCFLAGS += -DHW_RING_BUF_BUGFIX
DHDCFLAGS += -DHW_MUTEX_ROAM_CACHE
DHDCFLAGS += -DHW_KSO_EXCEPTION_PANIC_FIX
DHDCFLAGS += -DHW_KERNEL_4_0_ADAPTATION
DHDCFLAGS += -DHW_COVERITY_CHECK
DHDCFLAGS += -DHW_MEM_OVERFLOW_BUGFIX
DHDCFLAGS += -DHW_DEFERRED_WORK_BUGFIX
DHDCFLAGS += -DHW_WL_COUNTERS_STATISTIC
DHDCFLAGS += -DHW_WIFI_ASSOC_STATUS
#DHDCFLAGS += -DHW_NETDEVICE_PANIC
DHDCFLAGS += -DHW_ESCAN_ERROR_PATCH
DHDCFLAGS += -DHW_DFX_TXFAIL_EVENT
DHDCFLAGS += -DHW_SOFTAP_REASON_CODE
DHDCFLAGS += -DHW_WIFI_CHECK_BUS_SIH
DHDCFLAGS += -DHW_CHECK_WIPHY_NULL
DHDCFLAGS += -DHW_DHCP_BTCOEX_RESTORE_FAIL
DHDCFLAGS += -DHW_FILTER_MDNS
DHDCFLAGS += -DHW_DOZE_PKT_FILTER
DHDCFLAGS += -DHW_DISCONNECT_TRACE
DHDCFLAGS += -DHW_SCAN_TRACE
DHDCFLAGS += -DHW_SOFTAP_BUGFIX
# bcn_timeout
DHDCFLAGS += -DCUSTOM_BCN_TIMEOUT_SETTING=10
DHDCFLAGS += -DHW_CUSTOM_BCN_TIMEOUT
#end define custom macro for all chip


# ifneq ($(filter y, $(CONFIG_BCM4358) $(CONFIG_BCM43455) $(CONFIG_BCM4359)),)
  DHDCFLAGS += -DUSE_WL_TXBF
  DHDCFLAGS += -DUSE_WL_FRAMEBURST
  DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0
  DHDCFLAGS += -DMAX_AP_CLIENT_CNT=8
  DHDCFLAGS += -DMAX_GO_CLIENT_CNT=4
  DHDCFLAGS += -DHW_PATCH_FOR_43455
# New Features
  DHDCFLAGS += -DWL11U
  DHDCFLAGS += -DMFP
  DHDCFLAGS += -DSUPPORT_WT_WIFI_MIMO_CALIBRATE
  #DHDCFLAGS += -DDHD_ENABLE_LPC
  DHDCFLAGS += -DCUSTOM_COUNTRY_CODE
  DHDCFLAGS += -DRTT_SUPPORT -DRTT_DEBUG
  DHDCFLAGS += -DHW_DNS_DHCP_PARSE
# DHDCFLAGS += -DHW_SCAN_PARAMS_TIME
  DHDCFLAGS += -DHW_SCAN_DEFAULT_TIME
  DHDCFLAGS += -DHW_SIGNAL_LOG_PRINT
  DHDCFLAGS += -DHW_LINK_COUNTERS
  DHDCFLAGS += -DHW_HTCLK_AVL_TIMEOUT_PATCH
  DHDCFLAGS += -DHW_FW_HALT_PATCH
  DHDCFLAGS += -DHW_PATCH_SCAN_RETRY_WLC_UP
  DHDCFLAGS += -DHW_WIFI_SDIO_MORE_SCHEDULE
  DHDCFLAGS += -DHW_PATCH_SET_NMODE_RETRY_WLC_UP
  DHDCFLAGS += -DHW_PATCH_DISABLE_VOICE_AMPDU -DPKTPRIO_OVERRIDE
  DHDCFLAGS += -DCUSTOM_SDIO_F2_BLKSIZE=128
  DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF
  DHDCFLAGS += -DBCM_PATCH_MAX_CNTL_RX_TIMEOUT
  DHDCFLAGS += -DBCM_PATCH_REBOOT_FOR_P2PNULL


#  DHDCFLAGS += -DSAR_SUPPORT

# debug info
#  DHDCFLAGS += -DDHD_WAKE_STATUS

# patch from broadcom
  DHDCFLAGS += -DBCM_PATCH_GC_WAKE_BY_NOA
  DHDCFLAGS += -DBCM_PATCH_DEBUG_BEACON_LOSS
  DHDCFLAGS += -DBCM_PATCH_CONN_QUICK_SCAN

ifneq ($(CONFIG_BCMDHD_SDIO),)
  DHDCFLAGS += -DBDC -DOOB_INTR_ONLY -DHW_OOB -DDHD_BCMEVENTS -DMMC_SDIO_ABORT
  DHDCFLAGS += -DBCMSDIO -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR
  DHDCFLAGS += -DPROP_TXSTATUS
  DHDCFLAGS += -DPROP_TXSTATUS_VSDB
  DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=16
  DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64
# tput enhancement
  DHDCFLAGS += -DCUSTOM_GLOM_SETTING=8 -DCUSTOM_RXCHAIN=1
  DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=128
  DHDCFLAGS += -DBCMSDIOH_TXGLOM -DCUSTOM_TXGLOM=1 -DBCMSDIOH_TXGLOM_HIGHSPEED
  DHDCFLAGS += -DDHDTCPACK_SUPPRESS
  DHDCFLAGS += -DRXFRAME_THREAD
  DHDCFLAGS += -DREPEAT_READFRAME
  DHDCFLAGS += -DCUSTOM_MAX_TXGLOM_SIZE=40
  DHDCFLAGS += -DMAX_HDR_READ=128
  DHDCFLAGS += -DDHD_FIRSTREAD=128
  DHDCFLAGS += -DDHD_ENABLE_LPC


# DHDCFLAGS += -DWLFC_STATE_PREALLOC
  DHDCFLAGS += -DHW_SDIO_QUALITY_STATISTIC
# DHDCFLAGS += -DHW_REG_RECOVERY
endif

# Debug tx stuck
  #DHDCFLAGS += -DDEVICE_TX_STUCK_DETECT

ifneq ($(CONFIG_BCMDHD_PCIE),)
  DHDCFLAGS += -DHW_OTP_PATCH
  DHDCFLAGS += -DWL_TIM_EVENT
ifeq ($(PRODUCT_CHINAMOBILE),y)
 DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=99
 DHDCFLAGS += -DHW_CHINAMOBILE_SPEEDLIMIT
else
  DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=-1
endif
# tput enhancement
  DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64
  DHDCFLAGS += -DCUSTOM_AMPDU_MPDU=32
  DHDCFLAGS += -DCUSTOM_AMPDU_RELEASE=16
  DHDCFLAGS += -DPROP_TXSTATUS_VSDB
# Disable watchdog thread
  DHDCFLAGS += -DCUSTOM_DHD_WATCHDOG_MS=0
  DHDCFLAGS += -DHW_WATCHDOG_MS
  DHDCFLAGS += -DMAX_CNTL_TX_TIMEOUT=1
  DHDCFLAGS += -DSUPPORT_LINKDOWN_RECOVERY
# RSDB
  DHDCFLAGS += -DBRCM_RSDB
  DHDCFLAGS += -DHW_NOT_DEL_P2P_WHEN_SUSPEND
  DHDCFLAGS += -DBCMPCIE_OOB_HOST_WAKE
ifneq ($(CONFIG_ARCH_MSM),)
  DHDCFLAGS += -DMSM_PCIE_LINKDOWN_RECOVERY
endif
  DHDCFLAGS += -DDHD_USE_STATIC_CTRLBUF
  DHDCFLAGS += -DDHD_USE_STATIC_PKTIDMAP
  #DHDCFLAGS += -DBCM_ALLOC_STATIC_24K
  DHDCFLAGS += -DBCM_ALLOC_STATIC_10K
  DHDCFLAGS += -DDONGLE_ENABLE_ISOLATION
  # tuner thoughput
  DHDCFLAGS += -DDHD_TPUT_MONITOR
  DHDCFLAGS += -DBCM_PCIE_UPDATE
  DHDCFLAGS += -DDHD_TRACE_WAKE_LOCK
  #DHDCFLAGS += -DHW_TPUT_CPU
  #Interrupt protection
  DHDCFLAGS += -DDHD_CTRL_CPU_IRQ_MASK
  DHDCFLAGS += -DDHD_PKTID_AUDIT_ENABLED
  #flow ring
  DHDCFLAGS += -DPCIE_CLEANFLOW
  DHDCFLAGS += -DHW_READ_FW_LOG
  #disable hostreorder
  DHDCFLAGS += -DHW_DISABLE_HOSTREORDER
  #pcie stability
  DHDCFLAGS += -DHW_PCIE_STABILITY
  DHDCFLAGS += -DBCM_PATCH_STACKOUT
  DHDCFLAGS += -DHW_AP_POWERSAVE
  DHDCFLAGS += -DHW_OPENTIME_SAVE
  DHDCFLAGS += -DWIFI_TURNON_DELAY=60
  DHDCFLAGS += -DBCM_WAKELOCK_PATCH
  DHDCFLAGS += -DHW_LP_OVERSEA
  DHDCFLAGS += -DHW_LOG_PATCH1
ifneq ($(CONFIG_ARCH_DMA_ADDR_T_64BIT),)
  DHDCFLAGS += -DBCMDMA64OSL
endif
  DHDCFLAGS += -DDHD_DEVWAKE_EARLY -DDHD_DEVWAKE_WAIT_MS=20
  DHDCFLAGS += -DH2DRING_PREALLOC_SIZE
  DHDCFLAGS += -DPCIE_RW_WITH_MB
  DHDCFLAGS += -DHW_PCIE_NOCLOG
  DHDCFLAGS += -DHW_PM_LOCK_BUGFIX
  DHDCFLAGS += -DHW_P2PGO_2G_SISO
  DHDCFLAGS += -DHW_OTP_CHECK
  DHDCFLAGS += -DHW_CE_5G_HIGH_BAND
ifeq ($(TARGET_BOARD_PLATFORM), hi3660)
  DHDCFLAGS += -DHW_WIFI_FILTER_WIFI_LOCK
endif
endif



#EXTRA_LDFLAGS += --strip-debug

ifeq ($(DRIVER_TYPE),y)
  DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
  DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
endif

EXTRA_CFLAGS += $(DHDCFLAGS) -DDHD_DEBUG
EXTRA_CFLAGS += -DSRCBASE=\"$(src)\"
EXTRA_CFLAGS += -I$(src)/include/ -I$(src)/
KBUILD_CFLAGS += -I$(LINUXDIR)/include -I$(shell pwd)
KBUILD_CFLAGS += -I$(LINUXDIR)/drivers
EXTRA_CFLAGS += -Idrivers/huawei_platform/connectivity/bcm/wifi/include
EXTRA_CFLAGS += -Idrivers/hisi/tzdriver/libhwsecurec

DHDOFILES := dhd_pno.o dhd_common.o dhd_ip.o dhd_custom_gpio.o \
	dhd_linux.o dhd_linux_sched.o dhd_cfg80211.o dhd_linux_wq.o aiutils.o bcmevent.o \
	bcmutils.o bcmwifi_channels.o hndpmu.o linux_osl.o sbutils.o siutils.o \
	wl_android.o wl_roam.o wl_cfg80211.o wl_cfgp2p.o wl_cfg_btcoex.o wldev_common.o wl_linux_mon.o  \
	dhd_linux_platdev.o dhd_pno.o dhd_rtt.o dhd_linux_wq.o wl_cfg_btcoex.o \
	hnd_pktq.o hnd_pktpool.o wl_cfgvendor.o bcmxtlv.o dhd_debug.o dhd_debug_linux.o hw_wifi.o
ifneq ($(CONFIG_DHD_OF_SUPPORT),)
  DHDOFILES += dhd_custom_platdev.o
endif

#ifneq ($(CONFIG_WIRELESS_EXT),)
#DHDOFILES += wl_iw.o
#endif


ifeq ($(CONFIG_HW_WIFI_FREQ_CTRL_FLAG),y)
#throughput tuning begin
DHDOFILES += hw_wifi_freq_ctrl.o
DHDCFLAGS += -DDHD_TXBOUND=60 -DDHD_RXBOUND=200
#throughput tuning end
endif

ifneq ($(CONFIG_BCMDHD_SDIO),)
  DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o
  DHDOFILES += dhd_cdc.o dhd_wlfc.o dhd_sdio.o
endif

ifneq ($(CONFIG_BCMDHD_PCIE),)
  DHDOFILES += dhd_pcie.o dhd_pcie_linux.o dhd_msgbuf.o dhd_flowring.o
  DHDOFILES += pcie_core.o
endif

bcmdhd-objs := $(DHDOFILES)
obj-$(DRIVER_TYPE)   += bcmdhd.o

all:
	@echo "$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules"
	@$(MAKE) --no-print-directory -C $(KDIR) SUBDIRS=$(CURDIR) modules

clean:
	rm -rf *.o *.ko *.mod.c *~ .*.cmd *.o.cmd .*.o.cmd \
	Module.symvers modules.order .tmp_versions modules.builtin

install:
	@$(MAKE) --no-print-directory -C $(KDIR) \
		SUBDIRS=$(CURDIR) modules_install
