• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# bcmdhd
2# 1. WL_IFACE_COMB_NUM_CHANNELS must be added if Android version is 4.4 with Kernel version 3.0~3.4,
3#    otherwise please remove it.
4
5#CONFIG_BCMDHD := m
6#CONFIG_BCMDHD_SDIO := y
7#CONFIG_BCMDHD_PCIE := y
8#CONFIG_BCMDHD_USB := y
9
10#CONFIG_BCMDHD_OOB := y
11#CONFIG_BCMDHD_CUSB := y
12CONFIG_BCMDHD_PROPTXSTATUS := y
13#CONFIG_DHD_USE_STATIC_BUF := y
14CONFIG_VTS_SUPPORT := y
15
16CONFIG_MACH_PLATFORM := y
17#CONFIG_BCMDHD_DTS := y
18
19DHDCFLAGS = -Wall -Wstrict-prototypes -Dlinux -DBCMDRIVER                 \
20	-DBCMDONGLEHOST -DUNRELEASEDCHIP -DBCMDMA32 -DBCMFILEIMAGE            \
21	-DDHDTHREAD -DDHD_DEBUG -DSHOW_EVENTS -DBCMDBG -DGET_OTP_MAC_ENABLE   \
22	-DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT -DSUPPORT_PM2_ONLY             \
23	-DKEEP_ALIVE -DPKT_FILTER_SUPPORT -DPNO_SUPPORT -DDHDTCPACK_SUPPRESS  \
24	-DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT                           \
25	-DMULTIPLE_SUPPLICANT -DTSQ_MULTIPLIER -DMFP                          \
26	-DWL_EXT_IAPSTA                                                       \
27	-DENABLE_INSMOD_NO_FW_LOAD                                            \
28	-I$(srctree)/$(src) -I$(srctree)/$(src)/include                       \
29	-I$(srctree)
30
31DHDOFILES = aiutils.o siutils.o sbutils.o bcmutils.o bcmwifi_channels.o   \
32	dhd_linux.o dhd_linux_platdev.o dhd_linux_sched.o dhd_pno.o           \
33	dhd_common.o dhd_ip.o dhd_linux_wq.o dhd_custom_gpio.o                \
34	bcmevent.o hndpmu.o linux_osl.o wldev_common.o wl_android.o           \
35	dhd_debug_linux.o dhd_debug.o dhd_mschdbg.o                           \
36	hnd_pktq.o hnd_pktpool.o dhd_config.o wl_android_ext.o
37
38#BCMDHD_SDIO
39ifneq ($(CONFIG_BCMDHD_SDIO),)
40DHDCFLAGS += -DBCMSDIO -DMMC_SDIO_ABORT -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR \
41	-DSDTEST -DBDC -DDHD_USE_IDLECOUNT -DCUSTOM_SDIO_F2_BLKSIZE=256       \
42	-DBCMSDIOH_TXGLOM -DBCMSDIOH_TXGLOM_EXT -DRXFRAME_THREAD
43ifeq ($(CONFIG_BCMDHD_OOB),y)
44	DHDCFLAGS += -DOOB_INTR_ONLY -DCUSTOMER_OOB -DHW_OOB
45ifeq ($(CONFIG_BCMDHD_DISABLE_WOWLAN),y)
46	DHDCFLAGS += -DDISABLE_WOWLAN
47endif
48else
49	DHDCFLAGS += -DSDIO_ISR_THREAD
50endif
51
52DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o  \
53	dhd_sdio.o dhd_cdc.o dhd_wlfc.o
54endif
55
56#BCMDHD_PCIE
57ifneq ($(CONFIG_BCMDHD_PCIE),)
58DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=-1    \
59	-DDONGLE_ENABLE_ISOLATION
60ifneq ($(CONFIG_PCI_MSI),)
61	DHDCFLAGS += -DDHD_USE_MSI
62endif
63
64DHDOFILES += dhd_pcie.o dhd_pcie_linux.o pcie_core.o dhd_flowring.o       \
65	dhd_msgbuf.o
66endif
67
68#BCMDHD_USB
69ifneq ($(CONFIG_BCMDHD_USB),)
70DHDCFLAGS += -DUSBOS_TX_THREAD -DBCMDBUS -DBCMTRXV2 -DDBUS_USB_LOOPBACK   \
71	-DBDC
72DHDCFLAGS += -DBCM_REQUEST_FW -DEXTERNAL_FW_PATH
73#DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS))
74ifneq ($(CONFIG_BCMDHD_CUSB),)
75	DHDCFLAGS += -DBCMUSBDEV_COMPOSITE
76	DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS))
77endif
78
79DHDOFILES += dbus.o dbus_usb.o dbus_usb_linux.o dhd_cdc.o dhd_wlfc.o
80endif
81
82#PROPTXSTATUS
83ifeq ($(CONFIG_BCMDHD_PROPTXSTATUS),y)
84ifneq ($(CONFIG_BCMDHD_USB),)
85	DHDCFLAGS += -DPROP_TXSTATUS
86endif
87ifneq ($(CONFIG_BCMDHD_SDIO),)
88	DHDCFLAGS += -DPROP_TXSTATUS
89endif
90ifneq ($(CONFIG_CFG80211),)
91	DHDCFLAGS += -DPROP_TXSTATUS_VSDB
92endif
93endif
94
95#VTS_SUPPORT
96ifeq ($(CONFIG_VTS_SUPPORT),y)
97ifneq ($(CONFIG_CFG80211),)
98DHDCFLAGS += -DGSCAN_SUPPORT -DRTT_SUPPORT -DCUSTOM_FORCE_NODFS_FLAG      \
99	-DLINKSTAT_SUPPORT -DDEBUGABILITY -DDBG_PKT_MON -DPKT_FILTER_SUPPORT  \
100	-DAPF -DNDO_CONFIG_SUPPORT -DRSSI_MONITOR_SUPPORT -DDHD_WAKE_STATUS   \
101	-DCUSTOM_COUNTRY_CODE -DDHD_FW_COREDUMP -DEXPLICIT_DISCIF_CLEANUP
102
103DHDOFILES += bcmxtlv.o dhd_rtt.o bcm_app_utils.o
104endif
105endif
106
107# MESH support for kernel 3.10 later
108ifeq ($(CONFIG_WL_MESH),y)
109	DHDCFLAGS += -DWLMESH
110ifneq ($(CONFIG_BCMDHD_PCIE),)
111	DHDCFLAGS += -DBCM_HOST_BUF -DDMA_HOST_BUFFER_LEN=0x80000
112endif
113	DHDCFLAGS += -DDHD_UPDATE_INTF_MAC
114	DHDCFLAGS :=$(filter-out -DDHD_FW_COREDUMP,$(DHDCFLAGS))
115	DHDCFLAGS :=$(filter-out -DSET_RANDOM_MAC_SOFTAP,$(DHDCFLAGS))
116endif
117
118obj-$(CONFIG_BCMDHD) += bcmdhd.o
119bcmdhd-objs += $(DHDOFILES)
120
121ifeq ($(CONFIG_MACH_PLATFORM),y)
122	DHDOFILES += dhd_gpio.o
123ifeq ($(CONFIG_BCMDHD_DTS),y)
124	DHDCFLAGS += -DCONFIG_DTS
125else
126	DHDCFLAGS += -DCUSTOMER_HW -DDHD_OF_SUPPORT
127endif
128	DHDCFLAGS += -DCUSTOMER_HW_ALLWINNER -DCONFIG_CUSTOM_MAC_ADDRESS
129	DHDCFLAGS += -I$(srctree)/arch/arm/mach-sunxi/include
130#	DHDCFLAGS += -DBCMWAPI_WPI -DBCMWAPI_WAI
131endif
132
133ifeq ($(CONFIG_BCMDHD_AG),y)
134	DHDCFLAGS += -DBAND_AG
135endif
136
137ifeq ($(CONFIG_DHD_USE_STATIC_BUF),y)
138	obj-m += dhd_static_buf.o
139	DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT -DENHANCED_STATIC_BUF
140	DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP -DCONFIG_DHD_USE_STATIC_BUF
141endif
142
143ifneq ($(CONFIG_WIRELESS_EXT),)
144	DHDOFILES += wl_iw.o wl_escan.o
145	DHDCFLAGS += -DSOFTAP -DWL_WIRELESS_EXT -DUSE_IW -DWL_ESCAN
146endif
147ifneq ($(CONFIG_CFG80211),)
148	DHDOFILES += wl_cfg80211.o wl_cfgp2p.o wl_linux_mon.o wl_cfg_btcoex.o wl_cfgvendor.o
149	DHDOFILES += dhd_cfg80211.o
150	DHDCFLAGS += -DWL_CFG80211 -DWLP2P -DWL_CFG80211_STA_EVENT -DWL_ENABLE_P2P_IF
151	DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
152	DHDCFLAGS += -DCUSTOM_ROAM_TRIGGER_SETTING=-65
153	DHDCFLAGS += -DCUSTOM_ROAM_DELTA_SETTING=15
154	DHDCFLAGS += -DCUSTOM_KEEP_ALIVE_SETTING=28000
155	DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=7
156	DHDCFLAGS += -DWL_SUPPORT_AUTO_CHANNEL
157	DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES
158	DHDCFLAGS += -DESCAN_RESULT_PATCH -DESCAN_BUF_OVERFLOW_MGMT
159	DHDCFLAGS += -DVSDB -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
160	DHDCFLAGS += -DWLTDLS -DMIRACAST_AMPDU_SIZE=8
161	DHDCFLAGS += -DWL_VIRTUAL_APSTA
162endif
163EXTRA_CFLAGS = $(DHDCFLAGS)
164ifeq ($(CONFIG_BCMDHD),m)
165EXTRA_LDFLAGS += --strip-debug
166endif
167