hc
2023-11-30 6c9be420e167ee7ce45c0309586f09ddab28ac15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
# SPDX-License-Identifier: GPL-2.0
# bcmdhd
 
MODULE_NAME := bcmdhd
CONFIG_BCMDHD_SDIO := y
#CONFIG_BCMDHD_PCIE := y
#CONFIG_BCMDHD_USB := y
 
CONFIG_BCMDHD_OOB := y
#CONFIG_BCMDHD_CUSB := y
CONFIG_BCMDHD_PROPTXSTATUS := y
CONFIG_BCMDHD_AG := y
#CONFIG_DHD_USE_STATIC_BUF := y
CONFIG_VTS_SUPPORT := y
#CONFIG_BCMDHD_DEBUG := y
 
CONFIG_MACH_PLATFORM := y
#CONFIG_BCMDHD_DTS := y
 
DHDCFLAGS = -Wall -Wstrict-prototypes -Dlinux -DBCMDRIVER                 \
   -DBCMDONGLEHOST -DBCMDMA32 -DBCMFILEIMAGE                             \
   -DDHDTHREAD -DDHD_DEBUG -DSHOW_EVENTS -DBCMDBG -DGET_OTP_MAC_ENABLE   \
   -DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT -DSUPPORT_PM2_ONLY             \
   -DKEEP_ALIVE -DPKT_FILTER_SUPPORT -DDHDTCPACK_SUPPRESS                \
   -DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT                           \
   -DMULTIPLE_SUPPLICANT -DTSQ_MULTIPLIER -DMFP -DDHD_8021X_DUMP         \
   -DPOWERUP_MAX_RETRY=0 -DIFACE_HANG_FORCE_DEV_CLOSE -DWAIT_DEQUEUE     \
   -DWL_EXT_IAPSTA -DWL_ESCAN                                            \
   -DENABLE_INSMOD_NO_FW_LOAD                                            \
   -Idrivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6 \
   -Idrivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/include
 
DHDOFILES = aiutils.o siutils.o sbutils.o bcmutils.o bcmwifi_channels.o   \
   dhd_linux.o dhd_linux_platdev.o dhd_linux_sched.o dhd_pno.o           \
   dhd_common.o dhd_ip.o dhd_linux_wq.o dhd_custom_gpio.o                \
   bcmevent.o hndpmu.o linux_osl.o wldev_common.o wl_android.o           \
   dhd_debug_linux.o dhd_debug.o dhd_mschdbg.o dhd_dbg_ring.o            \
   hnd_pktq.o hnd_pktpool.o bcmxtlv.o linux_pkt.o bcmstdlib_s.o frag.o   \
   dhd_linux_exportfs.o dhd_linux_pktdump.o                              \
   dhd_config.o wl_event.o wl_android_ext.o wl_escan.o
 
ifeq ($(BCMDHD_STATIC_IF),y)
   DHDCFLAGS += -DWL_STATIC_IF
endif
 
ifneq ($(CONFIG_WIRELESS_EXT),)
   DHDOFILES += wl_iw.o
   DHDCFLAGS += -DSOFTAP -DWL_WIRELESS_EXT -DUSE_IW
endif
ifneq ($(CONFIG_CFG80211),)
   DHDOFILES += wl_cfg80211.o wl_cfgscan.o wl_cfgp2p.o
   DHDOFILES += wl_linux_mon.o wl_cfg_btcoex.o wl_cfgvendor.o
   DHDOFILES += dhd_cfg80211.o
   DHDCFLAGS += -DWL_CFG80211 -DWLP2P -DWL_CFG80211_STA_EVENT
#    DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS
   DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10
   DHDCFLAGS += -DWL_SUPPORT_AUTO_CHANNEL
   DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES
   DHDCFLAGS += -DESCAN_RESULT_PATCH -DESCAN_BUF_OVERFLOW_MGMT
   DHDCFLAGS += -DVSDB -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST
   DHDCFLAGS += -DWLTDLS -DMIRACAST_AMPDU_SIZE=8
   DHDCFLAGS += -DWL_VIRTUAL_APSTA
   DHDCFLAGS += -DPNO_SUPPORT -DEXPLICIT_DISCIF_CLEANUP
   DHDCFLAGS += -DDHD_USE_SCAN_WAKELOCK
#    DHDCFLAGS += -DWL_STATIC_IF
#    DHDCFLAGS += -DWL_SAE
endif
 
#BCMDHD_SDIO
ifneq ($(CONFIG_BCMDHD_SDIO),)
DHDCFLAGS += -DBCMSDIO -DMMC_SDIO_ABORT -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR \
   -DSDTEST -DBDC -DDHD_USE_IDLECOUNT -DCUSTOM_SDIO_F2_BLKSIZE=256       \
   -DBCMSDIOH_TXGLOM -DBCMSDIOH_TXGLOM_EXT -DRXFRAME_THREAD              \
   -DDHDENABLE_TAILPAD -DSUPPORT_P2P_GO_PS                               \
   -DBCMSDIO_RXLIM_POST -DCONSOLE_DPC
ifeq ($(CONFIG_BCMDHD_OOB),y)
   DHDCFLAGS += -DOOB_INTR_ONLY -DCUSTOMER_OOB -DHW_OOB
ifeq ($(CONFIG_BCMDHD_DISABLE_WOWLAN),y)
   DHDCFLAGS += -DDISABLE_WOWLAN
endif
else
   DHDCFLAGS += -DSDIO_ISR_THREAD
endif
DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o  \
   dhd_sdio.o dhd_cdc.o dhd_wlfc.o
endif
 
#BCMDHD_PCIE
ifneq ($(CONFIG_BCMDHD_PCIE),)
DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=-1    \
   -DDONGLE_ENABLE_ISOLATION
DHDCFLAGS += -DDHD_LB -DDHD_LB_RXP -DDHD_LB_STATS -DDHD_LB_TXP
DHDCFLAGS += -DDHD_PKTID_AUDIT_ENABLED
ifeq ($(CONFIG_BCMDHD_OOB),y)
   DHDCFLAGS += -DCUSTOMER_OOB -DBCMPCIE_OOB_HOST_WAKE
endif
ifneq ($(CONFIG_PCI_MSI),)
   DHDCFLAGS += -DDHD_MSI_SUPPORT
endif
DHDOFILES += dhd_pcie.o dhd_pcie_linux.o pcie_core.o dhd_flowring.o       \
   dhd_msgbuf.o dhd_linux_lb.o
endif
 
#BCMDHD_USB
ifneq ($(CONFIG_BCMDHD_USB),)
DHDCFLAGS += -DUSBOS_TX_THREAD -DBCMDBUS -DBCMTRXV2 -DDBUS_USB_LOOPBACK   \
   -DBDC
DHDCFLAGS += -DBCM_REQUEST_FW -DEXTERNAL_FW_PATH
#DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS))
ifneq ($(CONFIG_BCMDHD_CUSB),)
   DHDCFLAGS += -DBCMUSBDEV_COMPOSITE
   DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS))
endif
DHDOFILES += dbus.o dbus_usb.o dbus_usb_linux.o dhd_cdc.o dhd_wlfc.o
endif
 
#PROPTXSTATUS
ifeq ($(CONFIG_BCMDHD_PROPTXSTATUS),y)
ifneq ($(CONFIG_BCMDHD_USB),)
   DHDCFLAGS += -DPROP_TXSTATUS
endif
ifneq ($(CONFIG_BCMDHD_SDIO),)
   DHDCFLAGS += -DPROP_TXSTATUS
endif
ifneq ($(CONFIG_CFG80211),)
   DHDCFLAGS += -DPROP_TXSTATUS_VSDB
endif
endif
 
ifeq ($(CONFIG_64BIT),y)
    DHDCFLAGS := $(filter-out -DBCMDMA32,$(DHDCFLAGS))
    DHDCFLAGS += -DBCMDMA64OSL
endif
 
#VTS_SUPPORT
ifeq ($(CONFIG_VTS_SUPPORT),y)
ifneq ($(CONFIG_CFG80211),)
DHDCFLAGS += -DGSCAN_SUPPORT -DRTT_SUPPORT -DLINKSTAT_SUPPORT             \
   -DCUSTOM_COUNTRY_CODE -DDHD_GET_VALID_CHANNELS                        \
   -DDEBUGABILITY -DDBG_PKT_MON -DDHD_LOG_DUMP -DDHD_FW_COREDUMP         \
   -DAPF -DNDO_CONFIG_SUPPORT -DRSSI_MONITOR_SUPPORT -DDHD_WAKE_STATUS
DHDOFILES += dhd_rtt.o bcm_app_utils.o
endif
endif
 
# For Debug
ifneq ($(CONFIG_BCMDHD_DEBUG),)
DHDCFLAGS += -DDEBUGFS_CFG80211
DHDCFLAGS += -DSHOW_LOGTRACE -DDHD_LOG_DUMP -DDHD_FW_COREDUMP             \
   -DBCMASSERT_LOG -DSI_ERROR_ENFORCE
ifneq ($(CONFIG_BCMDHD_PCIE),)
   DHDCFLAGS += -DEWP_EDL
   DHDCFLAGS += -DDNGL_EVENT_SUPPORT
   DHDCFLAGS += -DDHD_SSSR_DUMP
endif
endif
 
# MESH support for kernel 3.10 later
ifeq ($(CONFIG_WL_MESH),y)
   DHDCFLAGS += -DWLMESH
ifneq ($(CONFIG_CFG80211),)
   DHDCFLAGS += -DWLMESH_CFG80211
endif
ifneq ($(CONFIG_BCMDHD_PCIE),)
   DHDCFLAGS += -DBCM_HOST_BUF -DDMA_HOST_BUFFER_LEN=0x80000
endif
   DHDCFLAGS += -DDHD_UPDATE_INTF_MAC
   DHDCFLAGS :=$(filter-out -DDHD_FW_COREDUMP,$(DHDCFLAGS))
   DHDCFLAGS :=$(filter-out -DWL_STATIC_IF,$(DHDCFLAGS))
endif
 
ifeq ($(CONFIG_WL_EASYMESH),y)
   DHDCFLAGS :=$(filter-out -DDHD_FW_COREDUMP,$(DHDCFLAGS))
   DHDCFLAGS :=$(filter-out -DDHD_LOG_DUMP,$(DHDCFLAGS))
   DHDCFLAGS += -DWLEASYMESH -DWL_STATIC_IF -DWLDWDS -DFOURADDR_AUTO_BRG
endif
 
#obj-$(CONFIG_RKWIFI) += $(MODULE_NAME).o
obj-$(CONFIG_AP6XXX_WIFI6) += $(MODULE_NAME).o
$(MODULE_NAME)-objs += $(DHDOFILES)
 
ifeq ($(CONFIG_MACH_PLATFORM),y)
   DHDOFILES += dhd_gpio.o
ifeq ($(CONFIG_BCMDHD_DTS),y)
   DHDCFLAGS += -DCONFIG_DTS
else
   DHDCFLAGS += -DCUSTOMER_HW -DDHD_OF_SUPPORT
endif
#    DHDCFLAGS += -DBCMWAPI_WPI -DBCMWAPI_WAI
endif
 
ifeq ($(CONFIG_BCMDHD_AG),y)
   DHDCFLAGS += -DBAND_AG
endif
 
ifeq ($(CONFIG_DHD_USE_STATIC_BUF),y)
   obj-m += dhd_static_buf.o
   DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT -DENHANCED_STATIC_BUF
   DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF
   DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP
endif
 
EXTRA_CFLAGS = $(DHDCFLAGS)
ifeq ($(CONFIG_BCMDHD),m)
EXTRA_LDFLAGS += --strip-debug
endif
 
EXTRA_CFLAGS += -Wno-parentheses-equality
EXTRA_CFLAGS += -Wno-unused-const-variable
EXTRA_CFLAGS += -Wno-non-literal-null-conversion