1EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS) 2EXTRA_CFLAGS += -O1 3#EXTRA_CFLAGS += -O3 4#EXTRA_CFLAGS += -Wall 5#EXTRA_CFLAGS += -Wextra 6#EXTRA_CFLAGS += -Werror 7#EXTRA_CFLAGS += -pedantic 8#EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes 9 10EXTRA_CFLAGS += -Wno-unused-variable 11#EXTRA_CFLAGS += -Wno-unused-value 12EXTRA_CFLAGS += -Wno-unused-label 13#EXTRA_CFLAGS += -Wno-unused-parameter 14#EXTRA_CFLAGS += -Wno-unused-function 15EXTRA_CFLAGS += -Wno-unused 16#EXTRA_CFLAGS += -Wno-uninitialized 17 18GCC_VER_49 := $(shell echo `$(CC) -dumpversion | cut -f1-2 -d.` \>= 4.9 | bc ) 19ifeq ($(GCC_VER_49),1) 20EXTRA_CFLAGS += -Wno-date-time # Fix compile error && warning on gcc 4.9 and later 21endif 22 23EXTRA_CFLAGS += -I$(src)/include 24 25EXTRA_LDFLAGS += --strip-debug 26 27CONFIG_AUTOCFG_CP = n 28 29########################## WIFI IC ############################ 30CONFIG_RTL8852A = n 31CONFIG_RTL8852B = y 32CONFIG_RTL8852C = n 33######################### Interface ########################### 34CONFIG_USB_HCI = n 35CONFIG_PCI_HCI = n 36CONFIG_SDIO_HCI = y 37CONFIG_GSPI_HCI = n 38########################## Features ########################### 39CONFIG_MP_INCLUDED = y 40CONFIG_CONCURRENT_MODE = n 41CONFIG_POWER_SAVING = n 42CONFIG_POWER_SAVE = y 43CONFIG_IPS_MODE = default 44CONFIG_LPS_MODE = default 45CONFIG_BTC = y 46CONFIG_WAPI_SUPPORT = n 47CONFIG_EFUSE_CONFIG_FILE = y 48CONFIG_EXT_CLK = n 49CONFIG_TRAFFIC_PROTECT = n 50CONFIG_LOAD_PHY_PARA_FROM_FILE = y 51# Remember to set CONFIG_FILE_FWIMG when set CONFIG_FILE_FWIMG to y, 52# or driver will fail on ifconfig up because can't find firmware file 53CONFIG_FILE_FWIMG = n 54CONFIG_TXPWR_BY_RATE = y 55CONFIG_TXPWR_BY_RATE_EN = auto 56CONFIG_TXPWR_LIMIT = y 57CONFIG_TXPWR_LIMIT_EN = auto 58CONFIG_RTW_CHPLAN = 0xFFFF 59CONFIG_RTW_ADAPTIVITY_EN = disable 60CONFIG_RTW_ADAPTIVITY_MODE = normal 61CONFIG_80211D = n 62CONFIG_SIGNAL_SCALE_MAPPING = n 63CONFIG_80211W = y 64CONFIG_REDUCE_TX_CPU_LOADING = n 65CONFIG_BR_EXT = y 66CONFIG_TDLS = n 67CONFIG_WIFI_MONITOR = n 68CONFIG_MCC_MODE = n 69CONFIG_APPEND_VENDOR_IE_ENABLE = n 70CONFIG_RTW_NAPI = y 71CONFIG_RTW_GRO = y 72CONFIG_RTW_NETIF_SG = y 73CONFIG_RTW_IPCAM_APPLICATION = n 74CONFIG_ICMP_VOQ = n 75CONFIG_IP_R_MONITOR = n #arp VOQ and high rate 76# user priority mapping rule : tos, dscp 77CONFIG_RTW_UP_MAPPING_RULE = tos 78 79CONFIG_PHL_ARCH = y 80CONFIG_FSM = n 81CONFIG_CMD_DISP = y 82 83CONFIG_HWSIM = n 84 85CONFIG_PHL_TEST_SUITE = n 86CONFIG_WIFI_6 = y 87 88RTW_PHL_RX = y 89RTW_PHL_TX = y 90RTW_PHL_BCN = y 91DIRTY_FOR_WORK = y 92 93CONFIG_DRV_FAKE_AP = n 94 95CONFIG_DBG_AX_CAM = y 96 97USE_TRUE_PHY = y 98CONFIG_I386_BUILD_VERIFY = n 99CONFIG_RTW_MBO = n 100# CONFIG_RTKM - n/m/y for not support / standalone / built-in 101CONFIG_RTKM ?= n 102EXTRA_CFLAGS += -DRTKM_MPOOL_1=12292 103EXTRA_CFLAGS += -DRTKM_MPOOL_3=9 104EXTRA_CFLAGS += -DRTKM_MPOOL_4=4 105EXTRA_CFLAGS += -DRTKM_MPOOL_5=9 106########################## Android ########################### 107# CONFIG_RTW_ANDROID - 0: no Android, 4/5/6/7/8/9/10 : Android version 108CONFIG_RTW_ANDROID = 0 109 110ifeq ($(shell test $(CONFIG_RTW_ANDROID) -gt 0; echo $$?), 0) 111EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID) 112endif 113 114########################## Debug ########################### 115CONFIG_RTW_DEBUG = y 116# default log level is _DRV_INFO_ = 4, 117# please refer to "How_to_set_driver_debug_log_level.doc" to set the available level. 118CONFIG_RTW_LOG_LEVEL = 4 119 120# enable /proc/net/rtlxxxx/ debug interfaces 121CONFIG_PROC_DEBUG = y 122 123######################## Wake On Lan ########################## 124CONFIG_WOWLAN = n 125# CONFIG_WAKE_TYPE definition: 126# bit0: magic packet 127# bit1: unicast packet (default pattern match) 128# bit2: disconnect (beacon loss & deauth/dissociation) 129# bit3: customized pattern match 130# bit4: pairwise key rekey 131CONFIG_WAKEUP_TYPE = 0x0f 132CONFIG_WOW_LPS_MODE = default 133#bit0: disBBRF off, #bit1: Wireless remote controller (WRC) 134CONFIG_SUSPEND_TYPE = 0 135CONFIG_WOW_STA_MIX = n 136CONFIG_GPIO_WAKEUP = n 137# Please contact with RTK support team first. After getting the agreement from RTK support team, 138# you are just able to modify the CONFIG_WAKEUP_GPIO_IDX with customized requirement. 139CONFIG_WAKEUP_GPIO_IDX = default 140CONFIG_HIGH_ACTIVE_DEV2HST = n 141######### only for USB ######### 142CONFIG_ONE_PIN_GPIO = n 143CONFIG_HIGH_ACTIVE_HST2DEV = n 144CONFIG_PNO_SUPPORT = n 145CONFIG_AP_WOWLAN = n 146######### Notify SDIO Host Keep Power During Syspend ########## 147CONFIG_RTW_SDIO_PM_KEEP_POWER = y 148###################### MP HW TX MODE FOR VHT ####################### 149CONFIG_MP_VHT_HW_TX_MODE = n 150 151###################### ROAMING ##################################### 152CONFIG_LAYER2_ROAMING = y 153#bit0: ROAM_ON_EXPIRED, #bit1: ROAM_ON_RESUME, #bit2: ROAM_ACTIVE 154CONFIG_ROAMING_FLAG = 0x3 155 156###################### Platform Related ####################### 157CONFIG_PLATFORM_I386_PC = n 158CONFIG_PLATFORM_RTL8198D = n 159CONFIG_PLATFORM_ANDROID_X86 = n 160CONFIG_PLATFORM_ANDROID_INTEL_X86 = n 161CONFIG_PLATFORM_NV_TK1 = n 162CONFIG_PLATFORM_NV_TK1_UBUNTU = n 163CONFIG_PLATFORM_ARM_SUNxI = n 164CONFIG_PLATFORM_RTK1319 = n 165CONFIG_PLATFORM_RTK16XXB = n 166CONFIG_PLATFORM_AML_S905 = n 167CONFIG_PLATFORM_HUANGLONG = n 168CONFIG_PLATFORM_ARM_ROCKCHIP = y 169 170########### CUSTOMER ################################ 171 172CONFIG_DRVEXT_MODULE = n 173 174export TopDIR ?= $(shell pwd) 175 176########### COMMON ################################# 177ifeq ($(CONFIG_GSPI_HCI), y) 178HCI_NAME = gspi 179endif 180 181ifeq ($(CONFIG_SDIO_HCI), y) 182HCI_NAME = sdio 183endif 184 185ifeq ($(CONFIG_USB_HCI), y) 186HCI_NAME = usb 187endif 188 189ifeq ($(CONFIG_PCI_HCI), y) 190HCI_NAME = pci 191endif 192 193ifeq ($(CONFIG_HWSIM), y) 194 HAL = hal_sim 195else 196 HAL = phl 197endif 198 199ifeq ($(CONFIG_PLATFORM_RTL8198D), y) 200DRV_PATH = $(src) 201else 202DRV_PATH ?= $(TopDIR) 203endif 204 205########### HAL_RTL8852A ################################# 206ifeq ($(CONFIG_RTL8852A), y) 207IC_NAME := rtl8852a 208ifeq ($(CONFIG_USB_HCI), y) 209MODULE_NAME = 8852au 210endif 211ifeq ($(CONFIG_PCI_HCI), y) 212MODULE_NAME = 8852ae 213endif 214ifeq ($(CONFIG_SDIO_HCI), y) 215MODULE_NAME = 8852as 216endif 217 218endif 219 220########### HAL_RTL8852B ################################# 221ifeq ($(CONFIG_RTL8852B), y) 222IC_NAME := rtl8852b 223ifeq ($(CONFIG_USB_HCI), y) 224MODULE_NAME = 8852bu 225endif 226ifeq ($(CONFIG_PCI_HCI), y) 227MODULE_NAME = 8852be 228endif 229ifeq ($(CONFIG_SDIO_HCI), y) 230MODULE_NAME = 8852bs 231endif 232 233endif 234 235########### HAL_RTL8852C ################################# 236ifeq ($(CONFIG_RTL8852C), y) 237IC_NAME := rtl8852c 238ifeq ($(CONFIG_USB_HCI), y) 239MODULE_NAME = 8852cu 240endif 241ifeq ($(CONFIG_PCI_HCI), y) 242MODULE_NAME = 8852ce 243endif 244ifeq ($(CONFIG_SDIO_HCI), y) 245MODULE_NAME = 8852cs 246endif 247 248endif 249 250########### AUTO_CFG ################################# 251 252ifeq ($(CONFIG_AUTOCFG_CP), y) 253$(shell cp $(DRV_PATH)/autoconf_$(IC_NAME)_$(HCI_NAME)_linux.h $(DRV_PATH)/include/autoconf.h) 254endif 255 256########### END OF PATH ################################# 257ifeq ($(CONFIG_MP_INCLUDED), y) 258#MODULE_NAME := $(MODULE_NAME)_mp 259EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED 260CONFIG_PHL_TEST_SUITE = y 261endif 262 263ifeq ($(CONFIG_FSM), y) 264EXTRA_CFLAGS += -DCONFIG_FSM 265endif 266 267ifeq ($(CONFIG_CMD_DISP), y) 268EXTRA_CFLAGS += -DCONFIG_CMD_DISP 269endif 270 271ifeq ($(CONFIG_PHL_TEST_SUITE), y) 272EXTRA_CFLAGS += -DCONFIG_PHL_TEST_SUITE 273endif 274 275ifeq ($(CONFIG_CONCURRENT_MODE), y) 276EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE 277endif 278 279ifeq ($(CONFIG_POWER_SAVING), y) 280ifneq ($(CONFIG_IPS_MODE), default) 281EXTRA_CFLAGS += -DRTW_IPS_MODE=$(CONFIG_IPS_MODE) 282endif 283ifneq ($(CONFIG_LPS_MODE), default) 284EXTRA_CFLAGS += -DRTW_LPS_MODE=$(CONFIG_LPS_MODE) 285endif 286ifneq ($(CONFIG_WOW_LPS_MODE), default) 287EXTRA_CFLAGS += -DRTW_WOW_LPS_MODE=$(CONFIG_WOW_LPS_MODE) 288endif 289EXTRA_CFLAGS += -DCONFIG_POWER_SAVING 290endif 291ifeq ($(CONFIG_POWER_SAVE), y) 292EXTRA_CFLAGS += -DCONFIG_POWER_SAVE 293endif 294 295ifeq ($(CONFIG_BTC), y) 296EXTRA_CFLAGS += -DCONFIG_BTC 297endif 298 299ifeq ($(CONFIG_WAPI_SUPPORT), y) 300EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT 301endif 302 303ifeq ($(CONFIG_WIFI_6), y) 304EXTRA_CFLAGS += -DCONFIG_WIFI_6 305endif 306 307ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y) 308EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE 309 310#EFUSE_MAP_PATH 311USER_EFUSE_MAP_PATH ?= 312ifneq ($(USER_EFUSE_MAP_PATH),) 313EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"$(USER_EFUSE_MAP_PATH)\" 314else 315EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_$(MODULE_NAME).map\" 316endif 317 318#WIFIMAC_PATH 319USER_WIFIMAC_PATH ?= 320ifneq ($(USER_WIFIMAC_PATH),) 321EXTRA_CFLAGS += -DWIFIMAC_PATH=\"$(USER_WIFIMAC_PATH)\" 322else 323EXTRA_CFLAGS += -DWIFIMAC_PATH=\"/data/wifimac.txt\" 324endif 325 326endif 327 328ifeq ($(CONFIG_EXT_CLK), y) 329EXTRA_CFLAGS += -DCONFIG_EXT_CLK 330endif 331 332ifeq ($(CONFIG_TRAFFIC_PROTECT), y) 333EXTRA_CFLAGS += -DCONFIG_TRAFFIC_PROTECT 334endif 335 336ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y) 337EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE 338#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH_WITH_IC_NAME_FOLDER 339EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/lib/firmware/\" 340endif 341 342ifeq ($(CONFIG_FILE_FWIMG), y) 343EXTRA_CFLAGS += -DCONFIG_FILE_FWIMG 344# default external firmware path is [CONFIG_FIRMWARE_PATH][ic_name]/[fw_name] 345# ex. Take 8852AE as example: 346# normal firmware is [CONFIG_FIRMWARE_PATH]rtl8852ae/rtl8852afw.bin 347# WOW firmware is [CONFIG_FIRMWARE_PATH]rtl8852ae/rtl8852afw_wowlan.bin 348EXTRA_CFLAGS += -DCONFIG_FIRMWARE_PATH=\"\" 349# EXTRA_CFLAGS += -DCONFIG_FIRMWARE_PATH=\"/lib/firmware/\" 350endif 351 352ifeq ($(CONFIG_TXPWR_BY_RATE), n) 353EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=0 354else ifeq ($(CONFIG_TXPWR_BY_RATE), y) 355EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE=1 356endif 357ifeq ($(CONFIG_TXPWR_BY_RATE_EN), n) 358EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=0 359else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), y) 360EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=1 361else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), auto) 362EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=2 363endif 364 365ifeq ($(CONFIG_TXPWR_LIMIT), n) 366EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=0 367else ifeq ($(CONFIG_TXPWR_LIMIT), y) 368EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT=1 369endif 370ifeq ($(CONFIG_TXPWR_LIMIT_EN), n) 371EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=0 372else ifeq ($(CONFIG_TXPWR_LIMIT_EN), y) 373EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=1 374else ifeq ($(CONFIG_TXPWR_LIMIT_EN), auto) 375EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=2 376endif 377 378ifneq ($(CONFIG_RTW_CHPLAN), 0xFFFF) 379EXTRA_CFLAGS += -DCONFIG_RTW_CHPLAN=$(CONFIG_RTW_CHPLAN) 380endif 381 382ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y) 383EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_BY_REGULATORY 384endif 385 386ifeq ($(CONFIG_CALIBRATE_TX_POWER_TO_MAX), y) 387EXTRA_CFLAGS += -DCONFIG_CALIBRATE_TX_POWER_TO_MAX 388endif 389 390ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), disable) 391EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=0 392else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), enable) 393EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=1 394else ifeq ($(CONFIG_RTW_ADAPTIVITY_EN), auto) 395EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_EN=2 396endif 397 398ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), normal) 399EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=0 400else ifeq ($(CONFIG_RTW_ADAPTIVITY_MODE), carrier_sense) 401EXTRA_CFLAGS += -DCONFIG_RTW_ADAPTIVITY_MODE=1 402endif 403 404ifeq ($(CONFIG_80211D), y) 405EXTRA_CFLAGS += -DCONFIG_80211D 406endif 407 408ifeq ($(CONFIG_SIGNAL_SCALE_MAPPING), y) 409EXTRA_CFLAGS += -DCONFIG_SIGNAL_SCALE_MAPPING 410endif 411 412ifeq ($(CONFIG_80211W), y) 413EXTRA_CFLAGS += -DCONFIG_IEEE80211W 414endif 415 416ifeq ($(CONFIG_WOWLAN), y) 417EXTRA_CFLAGS += -DCONFIG_WOWLAN -DRTW_WAKEUP_EVENT=$(CONFIG_WAKEUP_TYPE) 418EXTRA_CFLAGS += -DRTW_SUSPEND_TYPE=$(CONFIG_SUSPEND_TYPE) 419ifeq ($(CONFIG_WOW_STA_MIX), y) 420EXTRA_CFLAGS += -DRTW_WOW_STA_MIX 421endif 422ifeq ($(CONFIG_SDIO_HCI), y) 423EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER 424endif 425endif 426 427ifeq ($(CONFIG_AP_WOWLAN), y) 428EXTRA_CFLAGS += -DCONFIG_AP_WOWLAN 429ifeq ($(CONFIG_SDIO_HCI), y) 430EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER 431endif 432endif 433 434ifeq ($(CONFIG_LAYER2_ROAMING), y) 435 EXTRA_CFLAGS += -DCONFIG_LAYER2_ROAMING -DCONFIG_ROAMING_FLAG=$(CONFIG_ROAMING_FLAG) 436endif 437 438ifeq ($(CONFIG_PNO_SUPPORT), y) 439EXTRA_CFLAGS += -DCONFIG_PNO_SUPPORT 440endif 441 442ifeq ($(CONFIG_GPIO_WAKEUP), y) 443EXTRA_CFLAGS += -DCONFIG_GPIO_WAKEUP 444ifeq ($(CONFIG_ONE_PIN_GPIO), y) 445EXTRA_CFLAGS += -DCONFIG_RTW_ONE_PIN_GPIO 446endif 447ifeq ($(CONFIG_HIGH_ACTIVE_DEV2HST), y) 448EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=1 449else 450EXTRA_CFLAGS += -DHIGH_ACTIVE_DEV2HST=0 451endif 452endif 453 454ifeq ($(CONFIG_HIGH_ACTIVE_HST2DEV), y) 455EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=1 456else 457EXTRA_CFLAGS += -DHIGH_ACTIVE_HST2DEV=0 458endif 459 460ifneq ($(CONFIG_WAKEUP_GPIO_IDX), default) 461EXTRA_CFLAGS += -DWAKEUP_GPIO_IDX=$(CONFIG_WAKEUP_GPIO_IDX) 462endif 463 464ifeq ($(CONFIG_RTW_SDIO_PM_KEEP_POWER), y) 465ifeq ($(CONFIG_SDIO_HCI), y) 466EXTRA_CFLAGS += -DCONFIG_RTW_SDIO_PM_KEEP_POWER 467endif 468endif 469 470ifeq ($(CONFIG_REDUCE_TX_CPU_LOADING), y) 471EXTRA_CFLAGS += -DCONFIG_REDUCE_TX_CPU_LOADING 472endif 473 474ifeq ($(CONFIG_BR_EXT), y) 475BR_NAME = br0 476EXTRA_CFLAGS += -DCONFIG_BR_EXT 477EXTRA_CFLAGS += '-DCONFIG_BR_EXT_BRNAME="'$(BR_NAME)'"' 478endif 479 480 481ifeq ($(CONFIG_TDLS), y) 482EXTRA_CFLAGS += -DCONFIG_TDLS 483endif 484 485ifeq ($(CONFIG_WIFI_MONITOR), y) 486EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR 487endif 488 489ifeq ($(CONFIG_MCC_MODE), y) 490EXTRA_CFLAGS += -DCONFIG_MCC_MODE 491endif 492 493ifeq ($(CONFIG_RTW_NAPI), y) 494EXTRA_CFLAGS += -DCONFIG_RTW_NAPI 495endif 496 497ifeq ($(CONFIG_RTW_GRO), y) 498EXTRA_CFLAGS += -DCONFIG_RTW_GRO 499endif 500 501ifeq ($(CONFIG_RTW_IPCAM_APPLICATION), y) 502EXTRA_CFLAGS += -DCONFIG_RTW_IPCAM_APPLICATION 503ifeq ($(CONFIG_WIFI_MONITOR), n) 504EXTRA_CFLAGS += -DCONFIG_WIFI_MONITOR 505endif 506endif 507 508ifeq ($(CONFIG_RTW_NETIF_SG), y) 509EXTRA_CFLAGS += -DCONFIG_RTW_NETIF_SG 510endif 511 512ifeq ($(CONFIG_ICMP_VOQ), y) 513EXTRA_CFLAGS += -DCONFIG_ICMP_VOQ 514endif 515 516ifeq ($(CONFIG_IP_R_MONITOR), y) 517EXTRA_CFLAGS += -DCONFIG_IP_R_MONITOR 518endif 519 520ifeq ($(CONFIG_MP_VHT_HW_TX_MODE), y) 521EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE 522ifeq ($(CONFIG_PLATFORM_I386_PC), y) 523## For I386 X86 ToolChain use Hardware FLOATING 524EXTRA_CFLAGS += -mhard-float 525else 526## For ARM ToolChain use Hardware FLOATING 527EXTRA_CFLAGS += -mfloat-abi=hard 528endif 529endif 530 531ifeq ($(CONFIG_APPEND_VENDOR_IE_ENABLE), y) 532EXTRA_CFLAGS += -DCONFIG_APPEND_VENDOR_IE_ENABLE 533endif 534 535ifeq ($(CONFIG_RTW_DEBUG), y) 536EXTRA_CFLAGS += -DCONFIG_RTW_DEBUG 537EXTRA_CFLAGS += -DRTW_LOG_LEVEL=$(CONFIG_RTW_LOG_LEVEL) 538endif 539 540ifeq ($(CONFIG_PROC_DEBUG), y) 541EXTRA_CFLAGS += -DCONFIG_PROC_DEBUG 542endif 543 544ifeq ($(CONFIG_RTW_UP_MAPPING_RULE), dscp) 545EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=1 546else 547EXTRA_CFLAGS += -DCONFIG_RTW_UP_MAPPING_RULE=0 548endif 549 550EXTRA_CFLAGS += -DPLATFORM_LINUX 551 552ifeq ($(USE_TRUE_PHY), y) 553EXTRA_CFLAGS += -DUSE_TRUE_PHY 554endif 555 556ifeq ($(CONFIG_HWSIM), y) 557EXTRA_CFLAGS += -DCONFIG_HWSIM 558 559# To use pure sw beacon 560EXTRA_CFLAGS += -DCONFIG_SWTIMER_BASED_TXBCN 561EXTRA_CFLAGS += -DCONFIG_SUPPORT_MULTI_BCN 562endif 563 564ifeq ($(CONFIG_DRV_FAKE_AP), y) 565EXTRA_CFLAGS += -DCONFIG_DRV_FAKE_AP 566OBJS += core/rtw_fake_ap.o 567endif 568 569ifeq ($(CONFIG_DBG_AX_CAM), y) 570EXTRA_CFLAGS += -DCONFIG_DBG_AX_CAM 571endif 572 573ifeq ($(CONFIG_I386_BUILD_VERIFY), y) 574EXTRA_CFLAGS += -DCONFIG_I386_BUILD_VERIFY 575endif 576 577ifeq ($(CONFIG_RTW_MBO), y) 578EXTRA_CFLAGS += -DCONFIG_RTW_MBO -DCONFIG_RTW_WNM -DCONFIG_RTW_BTM_ROAM 579#EXTRA_CFLAGS += -DCONFIG_RTW_80211K 580EXTRA_CFLAGS += -DCONFIG_RTW_80211R 581EXTRA_CFLAGS += -DRTW_FT_DBG=0 -DRTW_WNM_DBG=0 -DRTW_MBO_DBG=0 582endif 583 584########### PLATFORM OPS ########################## 585# Import platform assigned KSRC and CROSS_COMPILE 586include $(wildcard $(DRV_PATH)/platform/*.mk) 587 588# Import platform specific compile options 589EXTRA_CFLAGS += -I$(src)/platform 590#_PLATFORM_FILES := platform/platform_ops.o 591OBJS += $(_PLATFORM_FILES) 592 593########### CUSTOMER ################################ 594USER_MODULE_NAME ?= 595ifneq ($(USER_MODULE_NAME),) 596MODULE_NAME := $(USER_MODULE_NAME) 597endif 598 599ifneq ($(KERNELRELEASE),) 600export CONFIG_RTL8852BS = m 601########### COMMON ################################# 602include $(src)/common.mk 603 604EXTRA_CFLAGS += -DPHL_PLATFORM_LINUX 605EXTRA_CFLAGS += -DCONFIG_PHL_ARCH 606 607ifeq ($(RTW_PHL_RX), y) 608EXTRA_CFLAGS += -DRTW_PHL_RX 609endif 610 611ifeq ($(RTW_PHL_TX), y) 612EXTRA_CFLAGS += -DRTW_PHL_TX 613endif 614 615ifeq ($(RTW_PHL_BCN), y) 616EXTRA_CFLAGS += -DRTW_PHL_BCN 617endif 618 619ifeq ($(DIRTY_FOR_WORK), y) 620EXTRA_CFLAGS += -DDIRTY_FOR_WORK 621endif 622 623include $(src)/phl/phl.mk 624 625 626obj-$(CONFIG_RTL8852BS) := $(MODULE_NAME).o 627obj-$(CONFIG_RTL8852BS) := $(MODULE_NAME).o 628$(MODULE_NAME)-y = $(OBJS) 629 630 631############# MEMORY MANAGMENT ############# 632ifneq ($(CONFIG_RTKM), n) 633_MEMM_FILES = core/rtw_prealloc.o 634ifeq ($(CONFIG_RTKM), y) 635EXTRA_CFLAGS += -DCONFIG_RTKM -DCONFIG_RTKM_BUILT_IN 636$(MODULE_NAME)-y += $(_MEMM_FILES) 637else ifeq ($(CONFIG_RTKM), m) 638RTKM_MODULE = rtkm 639EXTRA_CFLAGS += -DCONFIG_RTKM -DCONFIG_RTKM_STANDALONE 640_MEMM_FILES += core/rtw_mem.o 641$(RTKM_MODULE)-y += $(_MEMM_FILES) 642obj-$(CONFIG_RTL8852BS) += $(RTKM_MODULE).o 643endif 644endif 645 646else 647 648export CONFIG_RTL8852BS = m 649 650all: modules 651 652modules: 653 #rm -f .symvers.$(MODULE_NAME) 654 655 $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) CC="$(CC)" V=$(V) -C $(KSRC) M=$(shell pwd) modules 656 657 #cp Module.symvers .symvers.$(MODULE_NAME) 658 659strip: 660 $(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded 661 662install: 663 install -p -m 644 $(MODULE_NAME).ko $(MODDESTDIR) 664 /sbin/depmod -a ${KVER} 665 666uninstall: 667 rm -f $(MODDESTDIR)/$(MODULE_NAME).ko 668 /sbin/depmod -a ${KVER} 669 670backup_rtlwifi: 671 @echo "Making backup rtlwifi drivers" 672ifneq (,$(wildcard $(STAGINGMODDIR)/rtl*)) 673 @tar cPf $(wildcard $(STAGINGMODDIR))/backup_rtlwifi_driver.tar $(wildcard $(STAGINGMODDIR)/rtl*) 674 @rm -rf $(wildcard $(STAGINGMODDIR)/rtl*) 675endif 676ifneq (,$(wildcard $(MODDESTDIR)realtek)) 677 @tar cPf $(MODDESTDIR)backup_rtlwifi_driver.tar $(MODDESTDIR)realtek 678 @rm -fr $(MODDESTDIR)realtek 679endif 680ifneq (,$(wildcard $(MODDESTDIR)rtl*)) 681 @tar cPf $(MODDESTDIR)../backup_rtlwifi_driver.tar $(wildcard $(MODDESTDIR)rtl*) 682 @rm -fr $(wildcard $(MODDESTDIR)rtl*) 683endif 684 @/sbin/depmod -a ${KVER} 685 @echo "Please reboot your system" 686 687restore_rtlwifi: 688 @echo "Restoring backups" 689ifneq (,$(wildcard $(STAGINGMODDIR)/backup_rtlwifi_driver.tar)) 690 @tar xPf $(STAGINGMODDIR)/backup_rtlwifi_driver.tar 691 @rm $(STAGINGMODDIR)/backup_rtlwifi_driver.tar 692endif 693ifneq (,$(wildcard $(MODDESTDIR)backup_rtlwifi_driver.tar)) 694 @tar xPf $(MODDESTDIR)backup_rtlwifi_driver.tar 695 @rm $(MODDESTDIR)backup_rtlwifi_driver.tar 696endif 697ifneq (,$(wildcard $(MODDESTDIR)../backup_rtlwifi_driver.tar)) 698 @tar xPf $(MODDESTDIR)../backup_rtlwifi_driver.tar 699 @rm $(MODDESTDIR)../backup_rtlwifi_driver.tar 700endif 701 @/sbin/depmod -a ${KVER} 702 @echo "Please reboot your system" 703 704config_r: 705 @echo "make config" 706 /bin/bash script/Configure script/config.in 707 708 709.PHONY: modules clean 710 711clean: 712 #$(MAKE) -C $(KSRC) M=$(shell pwd) clean 713 cd $(HAL) ; rm -fr */*/*/*/*.mod.c */*/*/*/*.mod */*/*/*/*.o */*/*/*/.*.cmd */*/*/*/*.ko 714 cd $(HAL) ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko 715 cd $(HAL) ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko 716 cd $(HAL) ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko 717 cd $(HAL) ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 718 cd core ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko 719 cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 720 cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 721 cd os_dep/linux/hwsim ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 722 cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 723 cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko 724 rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order 725 rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~ 726 rm -fr .tmp_versions 727endif 728 729