EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
|
EXTRA_CFLAGS += -O1
|
#EXTRA_CFLAGS += -O3
|
#EXTRA_CFLAGS += -Wall
|
#EXTRA_CFLAGS += -Wextra
|
#EXTRA_CFLAGS += -Werror
|
#EXTRA_CFLAGS += -pedantic
|
#EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
|
|
EXTRA_CFLAGS += -Wno-unused-variable
|
#EXTRA_CFLAGS += -Wno-unused-value
|
EXTRA_CFLAGS += -Wno-unused-label
|
#EXTRA_CFLAGS += -Wno-unused-parameter
|
#EXTRA_CFLAGS += -Wno-unused-function
|
EXTRA_CFLAGS += -Wno-unused
|
#EXTRA_CFLAGS += -Wno-uninitialized
|
|
############ ANDROID COMMON KERNEL ############
|
# clang
|
ifeq ($(CC), clang)
|
EXTRA_CFLAGS += -Wno-uninitialized
|
EXTRA_CFLAGS += -Wno-enum-conversion
|
EXTRA_CFLAGS += -Wno-fortify-source
|
EXTRA_CFLAGS += -Wno-invalid-source-encoding
|
EXTRA_CFLAGS += -Wno-tautological-pointer-compare
|
EXTRA_CFLAGS += -Wno-tautological-overlap-compare
|
EXTRA_CFLAGS += -Wno-pointer-bool-conversion
|
EXTRA_CFLAGS += -Wno-parentheses-equality
|
EXTRA_CFLAGS += -Wno-self-assign
|
EXTRA_CFLAGS += -Wno-header-guard
|
endif
|
|
GCC_VER_49 := $(shell echo `$(CC) -dumpversion | cut -f1-2 -d.` \>= 4.9 | bc )
|
ifeq ($(GCC_VER_49),1)
|
EXTRA_CFLAGS += -Wno-date-time # Fix compile error && warning on gcc 4.9 and later
|
endif
|
|
EXTRA_CFLAGS += -I$(src)/include
|
|
EXTRA_LDFLAGS += --strip-debug
|
|
CONFIG_AUTOCFG_CP = n
|
|
########################## WIFI IC ############################
|
CONFIG_RTL8852A = n
|
CONFIG_RTL8852B = y
|
CONFIG_RTL8852BP = n
|
CONFIG_RTL8852BT = n
|
CONFIG_RTL8851B = n
|
CONFIG_RTL8852C = n
|
CONFIG_RTL8852D = n
|
######################### Interface ###########################
|
CONFIG_USB_HCI = n
|
CONFIG_PCI_HCI = y
|
CONFIG_SDIO_HCI = n
|
CONFIG_GSPI_HCI = n
|
########################## Features ###########################
|
CONFIG_MP_INCLUDED = y
|
CONFIG_CONCURRENT_MODE = n
|
CONFIG_POWER_SAVE = y
|
CONFIG_BTC = y
|
CONFIG_WAPI_SUPPORT = n
|
CONFIG_EFUSE_CONFIG_FILE = y
|
CONFIG_EXT_CLK = n
|
CONFIG_TRAFFIC_PROTECT = n
|
CONFIG_LOAD_PHY_PARA_FROM_FILE = y
|
# Remember to set CONFIG_FILE_FWIMG when set CONFIG_FILE_FWIMG to y,
|
# or driver will fail on ifconfig up because can't find firmware file
|
CONFIG_FILE_FWIMG = n
|
CONFIG_TXPWR_BY_RATE = y
|
CONFIG_TXPWR_BY_RATE_EN = y
|
CONFIG_TXPWR_LIMIT = y
|
CONFIG_TXPWR_LIMIT_EN = n
|
|
####################### RTW regulatory DB selection ######################
|
# RTW regulatory database version to select
|
# *MUST* config to match the certification status of shipping product,
|
# otherwise regression issue on regulatory may happen.
|
CONFIG_RTW_REGDB = rtk_63-36
|
|
########################## Initial Channel Plan ##########################
|
# XX: unspecified
|
CONFIG_RTW_COUNTRY_CODE = XX
|
# 0xFFFF: unspecified
|
CONFIG_RTW_CHPLAN = 0xFFFF
|
# 0xFFFF: unspecified
|
CONFIG_RTW_CHPLAN_6G = 0xFFFF
|
|
########################## 802.11d (country IE slave) ##########################
|
CONFIG_80211D = y
|
# 0: disable, 1: enable, 2: enable when INIT/USER set world wide mode
|
CONFIG_RTW_COUNTRY_IE_SLAVE_EN_MODE = 0
|
# BIT0: take intersection when having multiple received IEs, otherwise choose effected one from received IEs
|
# BIT1: consider all environment BSSs, otherwise associated BSSs only
|
CONFIG_RTW_COUNTRY_IE_SLAVE_FLAGS = 0x01
|
|
########################## EDCCA for regulatory ##########################
|
# NORMAL: Without regulatory consideration
|
# CS : Force Carrier Sense
|
# ADAPT : Force Adaptivity
|
# CBP : Force Contention Based Protocol
|
# AUTO : According to regulatory
|
CONFIG_RTW_EDCCA_MODE_SEL = NORMAL
|
|
CONFIG_SIGNAL_SCALE_MAPPING = n
|
CONFIG_80211W = y
|
CONFIG_REDUCE_TX_CPU_LOADING = n
|
CONFIG_BR_EXT = y
|
CONFIG_TDLS = n
|
CONFIG_WIFI_MONITOR = n
|
CONFIG_MCC_MODE = n
|
CONFIG_APPEND_VENDOR_IE_ENABLE = n
|
CONFIG_RTW_NAPI = y
|
CONFIG_RTW_GRO = y
|
CONFIG_RTW_NETIF_SG = y
|
CONFIG_RTW_IPCAM_APPLICATION = n
|
CONFIG_ICMP_VOQ = n
|
CONFIG_IP_R_MONITOR = n #arp VOQ and high rate
|
# user priority mapping rule : tos, dscp
|
CONFIG_RTW_UP_MAPPING_RULE = tos
|
|
CONFIG_PHL_ARCH = y
|
CONFIG_FSM = n
|
CONFIG_CMD_DISP = y
|
|
CONFIG_HWSIM = n
|
|
CONFIG_PHL_TEST_SUITE = n
|
CONFIG_WIFI_6 = y
|
|
RTW_PHL_RX = y
|
RTW_PHL_TX = y
|
RTW_PHL_BCN = y
|
DIRTY_FOR_WORK = y
|
|
CONFIG_DRV_FAKE_AP = n
|
|
CONFIG_DBG_AX_CAM = y
|
|
USE_TRUE_PHY = y
|
CONFIG_I386_BUILD_VERIFY = n
|
CONFIG_RTW_MBO = y
|
# CONFIG_RTKM - n/m/y for not support / standalone / built-in
|
CONFIG_RTKM ?= n
|
########################## Android ###########################
|
# CONFIG_RTW_ANDROID - 0: no Android, 4/5/6/7/8/9/10/11/12 : Android version
|
CONFIG_RTW_ANDROID = 0
|
|
ifeq ($(shell test $(CONFIG_RTW_ANDROID) -gt 0; echo $$?), 0)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID)
|
endif
|
|
########################## Debug ###########################
|
CONFIG_RTW_DEBUG = y
|
# default log level is _DRV_INFO_ = 4,
|
# please refer to "How_to_set_driver_debug_log_level.doc" to set the available level.
|
CONFIG_RTW_LOG_LEVEL = 4
|
CONFIG_RTW_PHL_LOG_LEVEL = 4
|
|
# CONFIG_RTW_APPEND_LOGLEVEL decide if append kernel log level to each messages.
|
# default "n" for don't append.
|
CONFIG_RTW_APPEND_LOGLEVEL = n
|
|
# Add "RTW_LL_*" define to change default mapping of driver debug log level
|
# to Linux kernel log level.
|
# NOTICE: "RTW_LL_*" would be valid only when "CONFIG_RTW_APPEND_LOGLEVEL = y"
|
#RTW_LL_PRINT = KERN_CRIT
|
#RTW_LL_ERR = KERN_ERR
|
#RTW_LL_WARN = KERN_WARNING
|
#RTW_LL_INFO = KERN_INFO
|
#RTW_LL_DBG = KERN_DEBUG
|
#RTW_LL_DEFAULT = KERN_DEFAULT
|
|
# enable /proc/net/rtlxxxx/ debug interfaces
|
CONFIG_PROC_DEBUG = y
|
|
############################# MLO #############################
|
CONFIG_80211BE_EHT = n
|
ifeq ($(CONFIG_80211BE_EHT), y)
|
EXTRA_CFLAGS += -DCONFIG_80211BE_EHT
|
endif
|
CONFIG_MLD_TEST = n # used for test MLD capability
|
RTW_NETWORK_LINK_MAX = 3
|
DTYPE = DEV_TYPE_LEGACY # DEV_TYPE_MLD for MLD device
|
ifeq ($(CONFIG_MLD_TEST), y)
|
EXTRA_CFLAGS += -DCONFIG_MLD_TEST
|
endif
|
EXTRA_CFLAGS += -DRTW_NETWORK_LINK_MAX=$(RTW_NETWORK_LINK_MAX)
|
EXTRA_CFLAGS += -DDTYPE=$(DTYPE)
|
######################## Wake On Lan ##########################
|
CONFIG_WOWLAN = n
|
# CONFIG_WAKE_TYPE definition:
|
# bit0: magic packet
|
# bit1: unicast packet (default pattern match)
|
# bit2: disconnect (beacon loss & deauth/dissociation)
|
# bit3: customized pattern match
|
# bit4: pairwise key rekey
|
CONFIG_WAKEUP_TYPE = 0x0f
|
#bit0: disBBRF off, #bit1: Wireless remote controller (WRC)
|
CONFIG_SUSPEND_TYPE = 0
|
CONFIG_WOW_STA_MIX = n
|
CONFIG_GPIO_WAKEUP = n
|
# Please contact with RTK support team first. After getting the agreement from RTK support team,
|
# you are just able to modify the CONFIG_WAKEUP_GPIO_IDX with customized requirement.
|
CONFIG_WAKEUP_GPIO_IDX = default
|
CONFIG_HIGH_ACTIVE_DEV2HST = n
|
#0:TOGGLE 1:PULSE
|
CONFIG_TOGGLE_PULSE = 0
|
CONFIG_PULSE_COUNT = 3
|
######### only for USB #########
|
CONFIG_ONE_PIN_GPIO = n
|
CONFIG_HIGH_ACTIVE_HST2DEV = n
|
CONFIG_PNO_SUPPORT = n
|
CONFIG_AP_WOWLAN = n
|
######### Notify SDIO Host Keep Power During Syspend ##########
|
CONFIG_RTW_SDIO_PM_KEEP_POWER = y
|
###################### MP HW TX MODE FOR VHT #######################
|
CONFIG_MP_VHT_HW_TX_MODE = n
|
|
###################### ROAMING #####################################
|
CONFIG_LAYER2_ROAMING = y
|
#bit0: ROAM_ON_EXPIRED, #bit1: ROAM_ON_RESUME, #bit2: ROAM_ACTIVE
|
CONFIG_ROAMING_FLAG = 0x3
|
|
###################### Platform Related #######################
|
CONFIG_PLATFORM_I386_PC = y
|
CONFIG_PLATFORM_RTL8198D = n
|
CONFIG_PLATFORM_ANDROID_X86 = n
|
CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
|
CONFIG_PLATFORM_NV_TK1 = n
|
CONFIG_PLATFORM_NV_TK1_UBUNTU = n
|
CONFIG_PLATFORM_ARM_SUNxI = n
|
CONFIG_PLATFORM_RTK1319 = n
|
CONFIG_PLATFORM_RTK16XXB = n
|
CONFIG_PLATFORM_AML_S905 = n
|
CONFIG_PLATFORM_AML_S905_L3A = n
|
CONFIG_PLATFORM_HUANGLONG = n
|
CONFIG_PLATFOEM_ARM_RK3588 = n
|
CONFIG_PLATFORM_ARM_ROCKCHIP = y
|
CONFIG_PLATFORM_AML_S928X = n
|
|
########### CUSTOMER ################################
|
|
CONFIG_DRVEXT_MODULE = n
|
|
export TopDIR ?= $(shell pwd)
|
|
########### COMMON #################################
|
ifeq ($(CONFIG_GSPI_HCI), y)
|
HCI_NAME = gspi
|
endif
|
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
HCI_NAME = sdio
|
endif
|
|
ifeq ($(CONFIG_USB_HCI), y)
|
HCI_NAME = usb
|
endif
|
|
ifeq ($(CONFIG_PCI_HCI), y)
|
HCI_NAME = pci
|
endif
|
|
ifeq ($(CONFIG_HWSIM), y)
|
HAL = hal_sim
|
else
|
HAL = phl
|
endif
|
|
ifeq ($(CONFIG_PLATFORM_RTL8198D), y)
|
DRV_PATH = $(src)
|
else
|
DRV_PATH = $(TopDIR)
|
endif
|
|
########### HAL_RTL8852A #################################
|
ifeq ($(CONFIG_RTL8852A), y)
|
IC_NAME := rtl8852a
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852au
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852ae
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8852as
|
endif
|
|
endif
|
|
########### HAL_RTL8852B #################################
|
ifeq ($(CONFIG_RTL8852B), y)
|
IC_NAME := rtl8852b
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852bu
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852be
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8852bs
|
endif
|
|
endif
|
|
########### HAL_RTL8852BP #################################
|
ifeq ($(CONFIG_RTL8852BP), y)
|
IC_NAME := rtl8852bp
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852bpu
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852bpe
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8852bps
|
endif
|
|
endif
|
|
########### HAL_RTL8852BT #################################
|
ifeq ($(CONFIG_RTL8852BT), y)
|
IC_NAME := rtl8852bt
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852btu
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852bte
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8852bts
|
endif
|
|
endif
|
|
########### HAL_RTL8851B #################################
|
ifeq ($(CONFIG_RTL8851B), y)
|
IC_NAME := rtl8851b
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8851bu
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8851be
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8851bs
|
endif
|
|
endif
|
|
########### HAL_RTL8852C #################################
|
ifeq ($(CONFIG_RTL8852C), y)
|
IC_NAME := rtl8852c
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852cu
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852ce
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
MODULE_NAME = 8852cs
|
endif
|
|
endif
|
|
########### HAL_RTL8852D #################################
|
ifeq ($(CONFIG_RTL8852D), y)
|
IC_NAME := rtl8852d
|
ifeq ($(CONFIG_USB_HCI), y)
|
MODULE_NAME = 8852du
|
endif
|
ifeq ($(CONFIG_PCI_HCI), y)
|
MODULE_NAME = 8852de
|
endif
|
|
endif
|
|
########### AUTO_CFG #################################
|
|
ifeq ($(CONFIG_AUTOCFG_CP), y)
|
$(shell cp $(DRV_PATH)/autoconf_$(IC_NAME)_$(HCI_NAME)_linux.h $(DRV_PATH)/include/autoconf.h)
|
endif
|
|
########### END OF PATH #################################
|
ifeq ($(CONFIG_MP_INCLUDED), y)
|
#MODULE_NAME := $(MODULE_NAME)_mp
|
EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
|
CONFIG_PHL_TEST_SUITE = y
|
endif
|
|
ifeq ($(CONFIG_FSM), y)
|
EXTRA_CFLAGS += -DCONFIG_FSM
|
endif
|
|
ifeq ($(CONFIG_CMD_DISP), y)
|
EXTRA_CFLAGS += -DCONFIG_CMD_DISP
|
endif
|
|
ifeq ($(CONFIG_PHL_TEST_SUITE), y)
|
EXTRA_CFLAGS += -DCONFIG_PHL_TEST_SUITE
|
endif
|
|
ifeq ($(CONFIG_CONCURRENT_MODE), y)
|
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
|
endif
|
|
ifeq ($(CONFIG_POWER_SAVE), y)
|
EXTRA_CFLAGS += -DCONFIG_POWER_SAVE
|
endif
|
|
ifeq ($(CONFIG_BTC), y)
|
EXTRA_CFLAGS += -DCONFIG_BTC
|
endif
|
|
ifeq ($(CONFIG_WAPI_SUPPORT), y)
|
EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT
|
endif
|
|
ifeq ($(CONFIG_WIFI_6), y)
|
EXTRA_CFLAGS += -DCONFIG_WIFI_6
|
endif
|
|
ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
|
EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE
|
|
#EFUSE_MAP_PATH
|
USER_EFUSE_MAP_PATH ?=
|
ifneq ($(USER_EFUSE_MAP_PATH),)
|
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"$(USER_EFUSE_MAP_PATH)\"
|
else
|
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_$(MODULE_NAME).map\"
|
endif
|
|
#WIFIMAC_PATH
|
USER_WIFIMAC_PATH ?=
|
ifneq ($(USER_WIFIMAC_PATH),)
|
EXTRA_CFLAGS += -DWIFIMAC_PATH=\"$(USER_WIFIMAC_PATH)\"
|
else
|
EXTRA_CFLAGS += -DWIFIMAC_PATH=\"/data/wifimac.txt\"
|
endif
|
|
endif
|
|
ifeq ($(CONFIG_EXT_CLK), y)
|
EXTRA_CFLAGS += -DCONFIG_EXT_CLK
|
endif
|
|
ifeq ($(CONFIG_TRAFFIC_PROTECT), y)
|
EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT
|
endif
|
|
ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y)
|
EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE
|
#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH_WITH_IC_NAME_FOLDER
|
EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/lib/firmware/\"
|
endif
|
|
ifeq ($(CONFIG_PLATFORM_ARM_RK3588), y)
|
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
|
ARCH := arm64
|
#CROSS_COMPILE := /home/hc/gcc-linaro/gcc-linaro-6.3.1-2017.05-i686_aarch64-linux-gnu/bin/aarch64-linux-gnu-
|
#CROSS_COMPILE := /home/data/hc/rk3588_linux/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-
|
CROSS_COMPILE := /home/ljy/rk3568/rk3568_linux_4.19/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-
|
#KSRC := /home/wjj/rk3568/rk356_linux4.19/kernel
|
KSRC := /home/ljy/rk3568/rk3568_linux_4.19/kernel
|
MODULE_NAME := rtl8852BE
|
endif
|
|
ifeq ($(CONFIG_FILE_FWIMG), y)
|
EXTRA_CFLAGS += -DCONFIG_FILE_FWIMG
|
# default external firmware path is [CONFIG_FIRMWARE_PATH][ic_name]/[fw_name]
|
# ex. Take 8852AE as example:
|
# normal firmware is [CONFIG_FIRMWARE_PATH]rtl8852ae/rtl8852afw.bin
|
# WOW firmware is [CONFIG_FIRMWARE_PATH]rtl8852ae/rtl8852afw_wowlan.bin
|
EXTRA_CFLAGS += -DCONFIG_FIRMWARE_PATH=\"\"
|
# EXTRA_CFLAGS += -DCONFIG_FIRMWARE_PATH=\"/lib/firmware/\"
|
endif
|
|
ifeq ($(CONFIG_TXPWR_BY_RATE), n)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=0
|
else ifeq ($(CONFIG_TXPWR_BY_RATE), y)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=1
|
endif
|
ifeq ($(CONFIG_TXPWR_BY_RATE_EN), n)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=0
|
else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), y)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=1
|
else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), auto)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=2
|
endif
|
|
ifeq ($(CONFIG_TXPWR_LIMIT), n)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=0
|
else ifeq ($(CONFIG_TXPWR_LIMIT), y)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=1
|
endif
|
ifeq ($(CONFIG_TXPWR_LIMIT_EN), n)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=0
|
else ifeq ($(CONFIG_TXPWR_LIMIT_EN), y)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=1
|
else ifeq ($(CONFIG_TXPWR_LIMIT_EN), auto)
|
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=2
|
endif
|
|
ifneq ($(CONFIG_RTW_COUNTRY_CODE), XX)
|
EXTRA_CFLAGS += -DCONFIG_RTW_COUNTRY_CODE=\"$(CONFIG_RTW_COUNTRY_CODE)\"
|
endif
|
ifneq ($(CONFIG_RTW_CHPLAN), 0xFFFF)
|
EXTRA_CFLAGS += -DCONFIG_RTW_CHPLAN=$(CONFIG_RTW_CHPLAN)
|
endif
|
ifneq ($(CONFIG_RTW_CHPLAN_6G), 0xFFFF)
|
EXTRA_CFLAGS += -DCONFIG_RTW_CHPLAN_6G=$(CONFIG_RTW_CHPLAN_6G)
|
endif
|
|
ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y)
|
EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_BY_REGULATORY
|
endif
|
|
ifeq ($(CONFIG_CALIBRATE_TX_POWER_TO_MAX), y)
|
EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_TO_MAX
|
endif
|
|
ifeq ($(CONFIG_RTW_EDCCA_MODE_SEL), NORMAL)
|
EXTRA_CFLAGS += -DCONFIG_RTW_EDCCA_MODE_SEL=0
|
else ifeq ($(CONFIG_RTW_EDCCA_MODE_SEL), CS)
|
EXTRA_CFLAGS += -DCONFIG_RTW_EDCCA_MODE_SEL=1
|
else ifeq ($(CONFIG_RTW_EDCCA_MODE_SEL), ADAPT)
|
EXTRA_CFLAGS += -DCONFIG_RTW_EDCCA_MODE_SEL=2
|
else ifeq ($(CONFIG_RTW_EDCCA_MODE_SEL), CBP)
|
EXTRA_CFLAGS += -DCONFIG_RTW_EDCCA_MODE_SEL=3
|
else ifeq ($(CONFIG_RTW_EDCCA_MODE_SEL), AUTO)
|
EXTRA_CFLAGS += -DCONFIG_RTW_EDCCA_MODE_SEL=0xFF
|
endif
|
|
ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), disable)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=0
|
else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), enable)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=1
|
else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), auto)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=2
|
endif
|
|
ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), normal)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=0
|
else ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), carrier_sense)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=1
|
endif
|
|
ifeq ($(CONFIG_80211D), y)
|
EXTRA_CFLAGS += -DCONFIG_80211D
|
ifneq ($(CONFIG_RTW_COUNTRY_IE_SLAVE_EN_MODE), )
|
EXTRA_CFLAGS += -DCONFIG_RTW_COUNTRY_IE_SLAVE_EN_MODE=$(CONFIG_RTW_COUNTRY_IE_SLAVE_EN_MODE)
|
endif
|
ifneq ($(CONFIG_RTW_COUNTRY_IE_SLAVE_FLAGS), )
|
EXTRA_CFLAGS += -DCONFIG_RTW_COUNTRY_IE_SLAVE_FLAGS=$(CONFIG_RTW_COUNTRY_IE_SLAVE_FLAGS)
|
endif
|
endif
|
|
ifeq ($(CONFIG_SIGNAL_SCALE_MAPPING), y)
|
EXTRA_CFLAGS += -DCONFIG_SIGNAL_SCALE_MAPPING
|
endif
|
|
ifeq ($(CONFIG_80211W), y)
|
EXTRA_CFLAGS += -DCONFIG_IEEE80211W
|
endif
|
|
ifeq ($(CONFIG_WOWLAN), y)
|
EXTRA_CFLAGS += -DCONFIG_WOWLAN -DRTW_WAKEUP_EVENT=$(CONFIG_WAKEUP_TYPE)
|
EXTRA_CFLAGS += -DRTW_SUSPEND_TYPE=$(CONFIG_SUSPEND_TYPE)
|
ifeq ($(CONFIG_WOW_STA_MIX), y)
|
EXTRA_CFLAGS += -DRTW_WOW_STA_MIX
|
endif
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
|
endif
|
endif
|
|
ifeq ($(CONFIG_AP_WOWLAN), y)
|
EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
|
endif
|
endif
|
|
ifeq ($(CONFIG_LAYER2_ROAMING), y)
|
EXTRA_CFLAGS += -DCONFIG_LAYER2_ROAMING -DCONFIG_ROAMING_FLAG=$(CONFIG_ROAMING_FLAG)
|
endif
|
|
ifeq ($(CONFIG_PNO_SUPPORT), y)
|
EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT
|
endif
|
|
ifeq ($(CONFIG_GPIO_WAKEUP), y)
|
EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP
|
EXTRA_CFLAGS += -DCONFIG_TOGGLE_PULSE=$(CONFIG_TOGGLE_PULSE)
|
EXTRA_CFLAGS += -DCONFIG_PULSE_COUNT=$(CONFIG_PULSE_COUNT)
|
ifeq ($(CONFIG_ONE_PIN_GPIO), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_ONE_PIN_GPIO
|
endif
|
ifeq ($(CONFIG_HIGH_ACTIVE_DEV2HST), y)
|
EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=1
|
else
|
EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=0
|
endif
|
endif
|
|
ifeq ($(CONFIG_HIGH_ACTIVE_HST2DEV), y)
|
EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=1
|
else
|
EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=0
|
endif
|
|
ifneq ($(CONFIG_WAKEUP_GPIO_IDX), default)
|
EXTRA_CFLAGS += -DWAKEUP_GPIO_IDX=$(CONFIG_WAKEUP_GPIO_IDX)
|
endif
|
|
ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y)
|
ifeq ($(CONFIG_SDIO_HCI), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER
|
endif
|
endif
|
|
ifeq ($(CONFIG_REDUCE_TX_CPU_LOADING), y)
|
EXTRA_CFLAGS += -DCONFIG_REDUCE_TX_CPU_LOADING
|
endif
|
|
ifeq ($(CONFIG_BR_EXT), y)
|
BR_NAME = br0
|
EXTRA_CFLAGS += -DCONFIG_BR_EXT
|
EXTRA_CFLAGS += '-DCONFIG_BR_EXT_BRNAME="'$(BR_NAME)'"'
|
endif
|
|
|
ifeq ($(CONFIG_TDLS), y)
|
EXTRA_CFLAGS += -DCONFIG_TDLS
|
endif
|
|
ifeq ($(CONFIG_WIFI_MONITOR), y)
|
EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
|
endif
|
|
ifeq ($(CONFIG_MCC_MODE), y)
|
EXTRA_CFLAGS += -DCONFIG_MCC_MODE
|
endif
|
|
ifeq ($(CONFIG_RTW_NAPI), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_NAPI
|
endif
|
|
ifeq ($(CONFIG_RTW_GRO), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_GRO
|
endif
|
|
ifeq ($(CONFIG_RTW_IPCAM_APPLICATION), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_IPCAM_APPLICATION
|
ifeq ($(CONFIG_WIFI_MONITOR), n)
|
EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR
|
endif
|
endif
|
|
ifeq ($(CONFIG_RTW_NETIF_SG), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG
|
endif
|
|
ifeq ($(CONFIG_ICMP_VOQ), y)
|
EXTRA_CFLAGS += -DCONFIG_ICMP_VOQ
|
endif
|
|
ifeq ($(CONFIG_IP_R_MONITOR), y)
|
EXTRA_CFLAGS += -DCONFIG_IP_R_MONITOR
|
endif
|
|
ifeq ($(CONFIG_MP_VHT_HW_TX_MODE), y)
|
EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
|
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
|
## For I386 X86 ToolChain use Hardware FLOATING
|
EXTRA_CFLAGS += -mhard-float
|
else
|
## For ARM ToolChain use Hardware FLOATING
|
EXTRA_CFLAGS += -mfloat-abi=hard
|
endif
|
endif
|
|
ifeq ($(CONFIG_APPEND_VENDOR_IE_ENABLE), y)
|
EXTRA_CFLAGS += -DCONFIG_APPEND_VENDOR_IE_ENABLE
|
endif
|
|
ifeq ($(CONFIG_RTW_DEBUG), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_DEBUG
|
EXTRA_CFLAGS += -DRTW_LOG_LEVEL=$(CONFIG_RTW_LOG_LEVEL)
|
EXTRA_CFLAGS += -DRTW_PHL_LOG_LEVEL=$(CONFIG_RTW_PHL_LOG_LEVEL)
|
ifeq ($(CONFIG_RTW_APPEND_LOGLEVEL), y)
|
EXTRA_CFLAGS += -DRTW_APPEND_LOGLEVEL
|
ifdef RTW_LL_PRINT
|
EXTRA_CFLAGS += -DRTW_LL_PRINT=$(RTW_LL_PRINT)
|
endif
|
ifdef RTW_LL_ERR
|
EXTRA_CFLAGS += -DRTW_LL_ERR=$(RTW_LL_ERR)
|
endif
|
ifdef RTW_LL_WARN
|
EXTRA_CFLAGS += -DRTW_LL_WARN=$(RTW_LL_WARN)
|
endif
|
ifdef RTW_LL_INFO
|
EXTRA_CFLAGS += -DRTW_LL_INFO=$(RTW_LL_INFO)
|
endif
|
ifdef RTW_LL_DBG
|
EXTRA_CFLAGS += -DRTW_LL_DBG=$(RTW_LL_DBG)
|
endif
|
ifdef RTW_LL_DEFAULT
|
EXTRA_CFLAGS += -DRTW_LL_DEFAULT=$(RTW_LL_DEFAULT)
|
endif
|
endif # CONFIG_RTW_APPEND_LOGLEVEL
|
endif # CONFIG_RTW_DEBUG
|
|
ifeq ($(CONFIG_PROC_DEBUG), y)
|
EXTRA_CFLAGS += -DCONFIG_PROC_DEBUG
|
endif
|
|
ifeq ($(CONFIG_RTW_UP_MAPPING_RULE), dscp)
|
EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=1
|
else
|
EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=0
|
endif
|
|
EXTRA_CFLAGS += -DPLATFORM_LINUX
|
|
ifeq ($(USE_TRUE_PHY), y)
|
EXTRA_CFLAGS += -DUSE_TRUE_PHY
|
endif
|
|
ifeq ($(CONFIG_HWSIM), y)
|
EXTRA_CFLAGS += -DCONFIG_HWSIM
|
|
# To use pure sw beacon
|
EXTRA_CFLAGS += -DCONFIG_SWTIMER_BASED_TXBCN
|
EXTRA_CFLAGS += -DCONFIG_SUPPORT_MULTI_BCN
|
endif
|
|
ifeq ($(CONFIG_DRV_FAKE_AP), y)
|
EXTRA_CFLAGS += -DCONFIG_DRV_FAKE_AP
|
OBJS += core/rtw_fake_ap.o
|
endif
|
|
ifeq ($(CONFIG_DBG_AX_CAM), y)
|
EXTRA_CFLAGS += -DCONFIG_DBG_AX_CAM
|
endif
|
|
ifeq ($(CONFIG_I386_BUILD_VERIFY), y)
|
EXTRA_CFLAGS += -DCONFIG_I386_BUILD_VERIFY
|
endif
|
|
ifeq ($(CONFIG_RTW_MBO), y)
|
EXTRA_CFLAGS += -DCONFIG_RTW_MBO -DCONFIG_RTW_WNM -DCONFIG_RTW_BTM_ROAM
|
EXTRA_CFLAGS += -DCONFIG_RTW_80211K
|
EXTRA_CFLAGS += -DCONFIG_RTW_80211R
|
EXTRA_CFLAGS += -DRTW_FT_DBG=0 -DRTW_WNM_DBG=0 -DRTW_MBO_DBG=0
|
endif
|
|
########### PLATFORM OPS ##########################
|
# Import platform assigned KSRC and CROSS_COMPILE
|
include $(wildcard $(DRV_PATH)/platform/*.mk)
|
|
# Import platform specific compile options
|
EXTRA_CFLAGS += -I$(src)/platform
|
#_PLATFORM_FILES := platform/platform_ops.o
|
OBJS += $(_PLATFORM_FILES)
|
|
########### CUSTOMER ################################
|
USER_MODULE_NAME ?=
|
ifneq ($(USER_MODULE_NAME),)
|
MODULE_NAME := $(USER_MODULE_NAME)
|
endif
|
|
############ ANDROID COMMON KERNEL ############
|
export M ?= $(shell pwd)
|
export OUT_DIR ?= $(shell pwd)
|
ifneq ($(LLVM),)
|
export CC_STRIP = llvm-strip
|
else
|
export CC_STRIP = $(CROSS_COMPILE)strip
|
endif
|
|
ifneq ($(KERNELRELEASE),)
|
########### COMMON #################################
|
include $(src)/common.mk
|
|
EXTRA_CFLAGS += -DPHL_PLATFORM_LINUX
|
EXTRA_CFLAGS += -DCONFIG_PHL_ARCH
|
|
ifeq ($(RTW_PHL_RX), y)
|
EXTRA_CFLAGS += -DRTW_PHL_RX
|
endif
|
|
ifeq ($(RTW_PHL_TX), y)
|
EXTRA_CFLAGS += -DRTW_PHL_TX
|
endif
|
|
ifeq ($(RTW_PHL_BCN), y)
|
EXTRA_CFLAGS += -DRTW_PHL_BCN
|
endif
|
|
ifeq ($(DIRTY_FOR_WORK), y)
|
EXTRA_CFLAGS += -DDIRTY_FOR_WORK
|
endif
|
|
include $(src)/phl/phl.mk
|
|
|
obj-$(CONFIG_RTL8852BE) := $(MODULE_NAME).o
|
obj-$(CONFIG_RTL8852BE) := $(MODULE_NAME).o
|
$(MODULE_NAME)-y = $(OBJS)
|
|
############# MEMORY MANAGMENT #############
|
ifneq ($(CONFIG_RTKM), n)
|
_MEMM_FILES = core/rtw_prealloc.o
|
ifeq ($(CONFIG_RTKM), y)
|
EXTRA_CFLAGS += -DCONFIG_RTKM -DCONFIG_RTKM_BUILT_IN
|
$(MODULE_NAME)-y += $(_MEMM_FILES)
|
else ifeq ($(CONFIG_RTKM), m)
|
RTKM_MODULE = rtkm
|
EXTRA_CFLAGS += -DCONFIG_RTKM -DCONFIG_RTKM_STANDALONE
|
_MEMM_FILES += core/rtw_mem.o
|
$(RTKM_MODULE)-y += $(_MEMM_FILES)
|
obj-$(CONFIG_RTL8852BE) += $(RTKM_MODULE).o
|
endif
|
endif
|
|
else
|
|
export CONFIG_RTL8852BE = m
|
|
all: modules
|
|
modules:
|
# rm -f .symvers.$(MODULE_NAME)
|
|
$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(M) modules
|
|
# $(CC_STRIP) --strip-unneeded ${OUT_DIR}/$(M)/$(MODULE_NAME).ko
|
# cp Module.symvers .symvers.$(MODULE_NAME)
|
|
strip:
|
$(CC_STRIP) $(MODULE_NAME).ko --strip-unneeded
|
|
install:
|
install -p -m 644 $(MODULE_NAME).ko $(MODDESTDIR)
|
/sbin/depmod -a ${KVER}
|
|
uninstall:
|
rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
|
/sbin/depmod -a ${KVER}
|
|
modules_install:
|
$(MAKE) INSTALL_MOD_STRIP=1 M=$(M) -C $(KSRC) modules_install
|
# mkdir -p ${OUT_DIR}/../vendor_lib/modules
|
# cd ${OUT_DIR}/$(M)/; find -name $(MODULE_NAME).ko -exec cp {} ${OUT_DIR}/../vendor_lib/modules/ \;
|
|
backup_rtlwifi:
|
@echo "Making backup rtlwifi drivers"
|
ifneq (,$(wildcard $(STAGINGMODDIR)/rtl*))
|
@tar cPf $(wildcard $(STAGINGMODDIR))/backup_rtlwifi_driver.tar $(wildcard $(STAGINGMODDIR)/rtl*)
|
@rm -rf $(wildcard $(STAGINGMODDIR)/rtl*)
|
endif
|
ifneq (,$(wildcard $(MODDESTDIR)realtek))
|
@tar cPf $(MODDESTDIR)backup_rtlwifi_driver.tar $(MODDESTDIR)realtek
|
@rm -fr $(MODDESTDIR)realtek
|
endif
|
ifneq (,$(wildcard $(MODDESTDIR)rtl*))
|
@tar cPf $(MODDESTDIR)../backup_rtlwifi_driver.tar $(wildcard $(MODDESTDIR)rtl*)
|
@rm -fr $(wildcard $(MODDESTDIR)rtl*)
|
endif
|
@/sbin/depmod -a ${KVER}
|
@echo "Please reboot your system"
|
|
restore_rtlwifi:
|
@echo "Restoring backups"
|
ifneq (,$(wildcard $(STAGINGMODDIR)/backup_rtlwifi_driver.tar))
|
@tar xPf $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
|
@rm $(STAGINGMODDIR)/backup_rtlwifi_driver.tar
|
endif
|
ifneq (,$(wildcard $(MODDESTDIR)backup_rtlwifi_driver.tar))
|
@tar xPf $(MODDESTDIR)backup_rtlwifi_driver.tar
|
@rm $(MODDESTDIR)backup_rtlwifi_driver.tar
|
endif
|
ifneq (,$(wildcard $(MODDESTDIR)../backup_rtlwifi_driver.tar))
|
@tar xPf $(MODDESTDIR)../backup_rtlwifi_driver.tar
|
@rm $(MODDESTDIR)../backup_rtlwifi_driver.tar
|
endif
|
@/sbin/depmod -a ${KVER}
|
@echo "Please reboot your system"
|
|
config_r:
|
@echo "make config"
|
/bin/bash script/Configure script/config.in
|
|
|
.PHONY: modules clean
|
|
clean:
|
# $(MAKE) -C $(KSRC) M=$(shell pwd) clean
|
cd $(HAL) ; rm -fr */*/*/*/*.mod.c */*/*/*/*.mod */*/*/*/*.o */*/*/*/.*.cmd */*/*/*/*.ko
|
cd $(HAL) ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko
|
cd $(HAL) ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
|
cd $(HAL) ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
|
cd $(HAL) ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
cd core ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
|
cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
cd os_dep/linux/hwsim ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
|
rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
|
rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
|
rm -fr .tmp_versions
|
endif
|
|
############ ANDROID COMMON KERNEL ############
|
# Convert to absolute path
|
ifneq ($(srctree),)
|
_EXTRA_CFLAGS :=
|
_INC_CFLAGS :=
|
$(foreach flag,$(EXTRA_CFLAGS),\
|
$(if $(shell echo $(flag) | grep "\-I"),\
|
$(eval _INC_CFLAGS += $(flag)),\
|
$(eval _EXTRA_CFLAGS += $(flag))\
|
)\
|
)
|
_INC_CFLAGS := \
|
$(foreach flag,$(subst -I,,$(_INC_CFLAGS)),\
|
$(shell if test -d $(srctree)/$(flag); then echo -I$$(cd $(srctree)/$(flag) && pwd); else echo -I$(flag); fi)\
|
)
|
EXTRA_CFLAGS := $(_EXTRA_CFLAGS) $(_INC_CFLAGS)
|
endif
|