1# SPDX-License-Identifier: GPL-2.0 2# bcmdhd 3 4BDH6_ROOT_DIR := ../../../.. 5KERNEL_SRC_DIR := $(BDH6_ROOT_DIR)/out/kernel/src_tmp/linux-5.10 6ORIG_PATH = $(KERNEL_SRC_DIR)/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6 7CURR_PATH = $(BDH6_ROOT_DIR)/device/board/hihope/rk3568/wifi/bcmdhd_wifi6/ 8 9# Execute Makefile in the kernel root directory 10include $(BDH6_ROOT_DIR)/device/board/hihope/rk3568/wifi/bcmdhd_wifi6/hdfwifi_bdh6.mk 11 12#$(info HDF: $(HDF_FRAMEWORKS_INC)) 13$(info ap6275s: srctree=$(srctree) src=$(src)) 14#$(shell echo "hello world !" > /home/lijg/tools/abc.txt) 15$(shell cp -f $(ORIG_PATH)/*.c $(CURR_PATH)) 16$(shell cp -f $(ORIG_PATH)/*.h $(CURR_PATH)) 17$(shell rm -fr $(CURR_PATH)/include) 18$(shell cp -fr $(ORIG_PATH)/include $(CURR_PATH)/include) 19$(shell rm -f $(CURR_PATH)/include/eapol.h) 20 21 22#ccflags-$(CONFIG_DRIVERS_HDF_WIFI) += \ 23# $(HDF_FRAMEWORKS_INC) \ 24# $(HDF_WIFI_FRAMEWORKS_INC) \ 25# $(HDF_WIFI_ADAPTER_INC) \ 26# $(HDF_WIFI_VENDOR_INC) \ 27# $(SECURE_LIB_INC) 28 29MODULE_NAME := bcmdhd 30CONFIG_BCMDHD_SDIO := y 31#CONFIG_BCMDHD_PCIE := y 32#CONFIG_BCMDHD_USB := y 33 34CONFIG_BCMDHD_OOB := y 35#CONFIG_BCMDHD_CUSB := y 36CONFIG_BCMDHD_PROPTXSTATUS := y 37#CONFIG_DHD_USE_STATIC_BUF := y 38CONFIG_BCMDHD_VTS := y 39CONFIG_BCMDHD_AUTO_SELECT := y 40#CONFIG_BCMDHD_DEBUG := y 41#CONFIG_BCMDHD_WAPI := y 42 43CONFIG_BCMDHD_AG :=y 44CONFIG_MACH_PLATFORM := y 45#CONFIG_BCMDHD_DTS := y 46 47HDF_BDH6_WIFI_CFLAGS +=-D_PRE_OS_VERSION_LINUX=1 48HDF_BDH6_WIFI_CFLAGS +=-D_PRE_OS_VERSION=_PRE_OS_VERSION_LINUX 49HDF_BDH6_WIFI_CFLAGS +=-D_PRE_HDF_LINUX 50 51DHDCFLAGS = -Wall -Wstrict-prototypes -Dlinux -DBCMDRIVER \ 52 -DBCMDONGLEHOST -DBCMDMA32 -DBCMFILEIMAGE \ 53 -DDHDTHREAD -DDHD_DEBUG -DSHOW_EVENTS -DBCMDBG -DGET_OTP_MAC_ENABLE \ 54 -DWIFI_ACT_FRAME -DARP_OFFLOAD_SUPPORT -DSUPPORT_PM2_ONLY \ 55 -DKEEP_ALIVE -DPKT_FILTER_SUPPORT -DDHDTCPACK_SUPPRESS \ 56 -DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT \ 57 -DMULTIPLE_SUPPLICANT -DTSQ_MULTIPLIER -DMFP -DDHD_8021X_DUMP \ 58 -DPOWERUP_MAX_RETRY=0 -DIFACE_HANG_FORCE_DEV_CLOSE -DWAIT_DEQUEUE \ 59 -DWL_EXT_IAPSTA -DWL_ESCAN -DCCODE_LIST \ 60 -DENABLE_INSMOD_NO_FW_LOAD \ 61 $(HDF_BDH6_WIFI_CFLAGS) \ 62 -I../../../../device/board/hihope/rk3568/wifi/bcmdhd_wifi6 \ 63 -I../../../../device/board/hihope/rk3568/wifi/bcmdhd_wifi6/include \ 64 -I../../../../device/board/hihope/rk3568/wifi/bcmdhd_wifi6/hdfadapt \ 65 $(HDF_FRAMEWORKS_INC) \ 66 $(HDF_WIFI_FRAMEWORKS_INC) \ 67 $(HDF_WIFI_ADAPTER_INC) \ 68 $(HDF_WIFI_VENDOR_INC) \ 69 $(SECURE_LIB_INC) 70 71#ORIGOFILES = aiutils.o siutils.o 72#ORIGOFILES := $(addprefix $(ORIG_PATH),$(ORIGOFILES)) 73#$(info ORIGOFILES = $(ORIGOFILES)) 74 75DHDOFILES = aiutils.o siutils.o sbutils.o bcmutils.o bcmwifi_channels.o \ 76 dhd_linux.o dhd_linux_platdev.o dhd_linux_sched.o dhd_pno.o \ 77 dhd_common.o dhd_ip.o dhd_linux_wq.o dhd_custom_gpio.o \ 78 bcmevent.o hndpmu.o linux_osl.o wldev_common.o wl_android.o \ 79 dhd_debug_linux.o dhd_debug.o dhd_mschdbg.o dhd_dbg_ring.o \ 80 hnd_pktq.o hnd_pktpool.o bcmxtlv.o linux_pkt.o bcmstdlib_s.o frag.o \ 81 dhd_linux_exportfs.o dhd_linux_pktdump.o \ 82 dhd_config.o dhd_ccode.o wl_event.o wl_android_ext.o wl_escan.o \ 83 hdfadapt/hdf_driver_bdh_register.o hdfadapt/hdfinit_bdh.o \ 84 hdfadapt/net_bdh_adpater.o hdfadapt/hdf_bdh_mac80211.o \ 85 hdfadapt/hdf_bdh_event.o 86 87ifeq ($(BCMDHD_STATIC_IF),y) 88 DHDCFLAGS += -DWL_STATIC_IF 89endif 90 91ifneq ($(CONFIG_WIRELESS_EXT),) 92 DHDOFILES += wl_iw.o 93 DHDCFLAGS += -DSOFTAP -DWL_WIRELESS_EXT -DUSE_IW 94endif 95ifneq ($(CONFIG_CFG80211),) 96 DHDOFILES += wl_cfg80211.o wl_cfgscan.o wl_cfgp2p.o 97 DHDOFILES += wl_linux_mon.o wl_cfg_btcoex.o wl_cfgvendor.o 98 DHDOFILES += dhd_cfg80211.o 99 DHDCFLAGS += -DWL_CFG80211 -DWLP2P -DWL_CFG80211_STA_EVENT 100# DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS 101 DHDCFLAGS += -DCUSTOM_PNO_EVENT_LOCK_xTIME=10 102 DHDCFLAGS += -DWL_SUPPORT_AUTO_CHANNEL 103 DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES 104 DHDCFLAGS += -DESCAN_RESULT_PATCH -DESCAN_BUF_OVERFLOW_MGMT 105 DHDCFLAGS += -DVSDB -DWL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST 106 DHDCFLAGS += -DWLTDLS -DMIRACAST_AMPDU_SIZE=8 107 DHDCFLAGS += -DWL_VIRTUAL_APSTA 108 DHDCFLAGS += -DPNO_SUPPORT -DEXPLICIT_DISCIF_CLEANUP 109 DHDCFLAGS += -DDHD_USE_SCAN_WAKELOCK 110 DHDCFLAGS += -DWLFBT 111# DHDCFLAGS += -DWL_STATIC_IF 112# DHDCFLAGS += -DWL_CLIENT_SAE 113endif 114 115#BCMDHD_SDIO 116ifneq ($(CONFIG_BCMDHD_SDIO),) 117DHDCFLAGS += -DBCMSDIO -DMMC_SDIO_ABORT -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR \ 118 -DSDTEST -DBDC -DDHD_USE_IDLECOUNT -DCUSTOM_SDIO_F2_BLKSIZE=256 \ 119 -DBCMSDIOH_TXGLOM -DBCMSDIOH_TXGLOM_EXT -DRXFRAME_THREAD \ 120 -DDHDENABLE_TAILPAD -DSUPPORT_P2P_GO_PS \ 121 -DBCMSDIO_RXLIM_POST -DBCMSDIO_TXSEQ_SYNC -DCONSOLE_DPC 122ifeq ($(CONFIG_BCMDHD_OOB),y) 123 DHDCFLAGS += -DOOB_INTR_ONLY -DCUSTOMER_OOB -DHW_OOB 124ifeq ($(CONFIG_BCMDHD_DISABLE_WOWLAN),y) 125 DHDCFLAGS += -DDISABLE_WOWLAN 126endif 127else 128 DHDCFLAGS += -DSDIO_ISR_THREAD 129endif 130DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o \ 131 dhd_sdio.o dhd_cdc.o dhd_wlfc.o 132endif 133 134#BCMDHD_PCIE 135ifneq ($(CONFIG_BCMDHD_PCIE),) 136DHDCFLAGS += -DPCIE_FULL_DONGLE -DBCMPCIE -DCUSTOM_DPC_PRIO_SETTING=-1 \ 137 -DDONGLE_ENABLE_ISOLATION 138DHDCFLAGS += -DDHD_LB -DDHD_LB_RXP -DDHD_LB_STATS -DDHD_LB_TXP 139DHDCFLAGS += -DDHD_PKTID_AUDIT_ENABLED 140DHDCFLAGS += -DINSMOD_FW_LOAD 141ifeq ($(CONFIG_BCMDHD_OOB),y) 142 DHDCFLAGS += -DCUSTOMER_OOB -DBCMPCIE_OOB_HOST_WAKE 143endif 144ifneq ($(CONFIG_PCI_MSI),) 145 DHDCFLAGS += -DDHD_MSI_SUPPORT 146endif 147DHDOFILES += dhd_pcie.o dhd_pcie_linux.o pcie_core.o dhd_flowring.o \ 148 dhd_msgbuf.o dhd_linux_lb.o 149endif 150 151#BCMDHD_USB 152ifneq ($(CONFIG_BCMDHD_USB),) 153DHDCFLAGS += -DUSBOS_TX_THREAD -DBCMDBUS -DBCMTRXV2 -DDBUS_USB_LOOPBACK \ 154 -DBDC 155DHDCFLAGS += -DBCM_REQUEST_FW -DEXTERNAL_FW_PATH 156#DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS)) 157ifneq ($(CONFIG_BCMDHD_CUSB),) 158 DHDCFLAGS += -DBCMUSBDEV_COMPOSITE 159 DHDCFLAGS :=$(filter-out -DENABLE_INSMOD_NO_FW_LOAD,$(DHDCFLAGS)) 160endif 161DHDOFILES += dbus.o dbus_usb.o dbus_usb_linux.o dhd_cdc.o dhd_wlfc.o 162endif 163 164#PROPTXSTATUS 165ifeq ($(CONFIG_BCMDHD_PROPTXSTATUS),y) 166ifneq ($(CONFIG_BCMDHD_USB),) 167 DHDCFLAGS += -DPROP_TXSTATUS 168endif 169ifneq ($(CONFIG_BCMDHD_SDIO),) 170 DHDCFLAGS += -DPROP_TXSTATUS -DPROPTX_MAXCOUNT 171endif 172ifneq ($(CONFIG_CFG80211),) 173 DHDCFLAGS += -DPROP_TXSTATUS_VSDB 174endif 175endif 176 177ifeq ($(CONFIG_64BIT),y) 178 DHDCFLAGS := $(filter-out -DBCMDMA32,$(DHDCFLAGS)) 179 DHDCFLAGS += -DBCMDMA64OSL 180endif 181 182# For Android VTS 183ifeq ($(CONFIG_BCMDHD_VTS),y) 184DHDCFLAGS += -DDHD_NOTIFY_MAC_CHANGED 185ifneq ($(CONFIG_CFG80211),) 186DHDCFLAGS += -DGSCAN_SUPPORT -DRTT_SUPPORT -DLINKSTAT_SUPPORT \ 187 -DCUSTOM_COUNTRY_CODE -DDHD_GET_VALID_CHANNELS \ 188 -DDEBUGABILITY -DDBG_PKT_MON -DDHD_LOG_DUMP -DDHD_FW_COREDUMP \ 189 -DAPF -DNDO_CONFIG_SUPPORT -DRSSI_MONITOR_SUPPORT -DDHD_WAKE_STATUS 190DHDOFILES += dhd_rtt.o bcm_app_utils.o 191endif 192endif 193 194# For Debug 195ifneq ($(CONFIG_BCMDHD_DEBUG),) 196DHDCFLAGS += -DDEBUGFS_CFG80211 197DHDCFLAGS += -DSHOW_LOGTRACE -DDHD_LOG_DUMP -DDHD_FW_COREDUMP \ 198 -DBCMASSERT_LOG -DSI_ERROR_ENFORCE 199ifneq ($(CONFIG_BCMDHD_PCIE),) 200 DHDCFLAGS += -DEWP_EDL 201 DHDCFLAGS += -DDNGL_EVENT_SUPPORT 202 DHDCFLAGS += -DDHD_SSSR_DUMP 203endif 204endif 205 206# MESH support for kernel 3.10 later 207ifeq ($(CONFIG_WL_MESH),y) 208 DHDCFLAGS += -DWLMESH 209ifneq ($(CONFIG_CFG80211),) 210 DHDCFLAGS += -DWLMESH_CFG80211 211endif 212ifneq ($(CONFIG_BCMDHD_PCIE),) 213 DHDCFLAGS += -DBCM_HOST_BUF -DDMA_HOST_BUFFER_LEN=0x80000 214endif 215 DHDCFLAGS += -DDHD_UPDATE_INTF_MAC 216 DHDCFLAGS :=$(filter-out -DDHD_FW_COREDUMP,$(DHDCFLAGS)) 217 DHDCFLAGS :=$(filter-out -DWL_STATIC_IF,$(DHDCFLAGS)) 218endif 219 220ifeq ($(CONFIG_WL_EASYMESH),y) 221 DHDCFLAGS :=$(filter-out -DDHD_FW_COREDUMP,$(DHDCFLAGS)) 222 DHDCFLAGS :=$(filter-out -DDHD_LOG_DUMP,$(DHDCFLAGS)) 223 DHDCFLAGS += -DWLEASYMESH -DWL_STATIC_IF -DWLDWDS -DFOURADDR_AUTO_BRG 224endif 225 226#CSI_SUPPORT 227ifneq ($(CONFIG_CSI_SUPPORT),) 228 DHDCFLAGS += -DCSI_SUPPORT 229 DHDOFILES += dhd_csi.o 230endif 231 232# For TPUT_IMPROVE 233ifneq ($(CONFIG_BCMDHD_TPUT),) 234 DHDCFLAGS += -DDHD_TPUT_PATCH 235ifneq ($(CONFIG_BCMDHD_SDIO),) 236 DHDCFLAGS += -DDYNAMIC_MAX_HDR_READ 237 DHDCFLAGS :=$(filter-out -DSDTEST,$(DHDCFLAGS)) 238endif 239ifneq ($(CONFIG_BCMDHD_PCIE),) 240 DHDCFLAGS += -DDHD_LB_TXP_DEFAULT_ENAB 241 DHDCFLAGS += -DSET_RPS_CPUS -DSET_XPS_CPUS 242 DHDCFLAGS += -DDHD_LB_PRIMARY_CPUS=0xF0 -DDHD_LB_SECONDARY_CPUS=0x0E 243endif 244endif 245 246# For Zero configure 247ifneq ($(CONFIG_BCMDHD_ZEROCONFIG),) 248 DHDCFLAGS += -DWL_EXT_GENL -DSENDPROB 249 DHDOFILES += wl_ext_genl.o 250endif 251 252# For WAPI 253ifneq ($(CONFIG_BCMDHD_WAPI),) 254 DHDCFLAGS += -DBCMWAPI_WPI -DBCMWAPI_WAI 255endif 256 257# For Module auto-selection 258ifneq ($(CONFIG_BCMDHD_AUTO_SELECT),) 259ifneq ($(CONFIG_BCMDHD_SDIO),) 260 DHDCFLAGS += -DGET_OTP_MODULE_NAME -DUPDATE_MODULE_NAME -DCOMPAT_OLD_MODULE 261endif 262ifneq ($(CONFIG_BCMDHD_PCIE),) 263 DHDCFLAGS += -DUPDATE_MODULE_NAME 264endif 265endif 266 267ifeq ($(CONFIG_BCMDHD),m) 268 DHDCFLAGS += -DBCMDHD_MODULAR 269endif 270 271obj-$(CONFIG_AP6XXX_WIFI6_HDF) += $(MODULE_NAME).o 272#$(MODULE_NAME)-objs += $(DHDOFILES) $(ORIGOFILES) 273$(MODULE_NAME)-objs += $(DHDOFILES) 274 275ifeq ($(CONFIG_MACH_PLATFORM),y) 276 DHDOFILES += dhd_gpio.o 277ifeq ($(CONFIG_BCMDHD_DTS),y) 278 DHDCFLAGS += -DCONFIG_DTS 279else 280 DHDCFLAGS += -DCUSTOMER_HW -DDHD_OF_SUPPORT 281endif 282endif 283 284ifeq ($(CONFIG_BCMDHD_AG),y) 285 DHDCFLAGS += -DBAND_AG 286endif 287 288ifeq ($(CONFIG_DHD_USE_STATIC_BUF),y) 289 obj-m += dhd_static_buf.o 290 DHDCFLAGS += -DSTATIC_WL_PRIV_STRUCT -DENHANCED_STATIC_BUF 291 DHDCFLAGS += -DCONFIG_DHD_USE_STATIC_BUF 292 DHDCFLAGS += -DDHD_USE_STATIC_MEMDUMP 293endif 294 295EXTRA_CFLAGS = $(DHDCFLAGS) 296ifeq ($(CONFIG_BCMDHD),m) 297EXTRA_LDFLAGS += --strip-debug 298endif 299 300EXTRA_CFLAGS += -Wno-parentheses-equality 301EXTRA_CFLAGS += -Wno-unused-const-variable 302EXTRA_CFLAGS += -Wno-non-literal-null-conversion 303