1*4882a593Smuzhiyun /****************************************************************************** 2*4882a593Smuzhiyun * 3*4882a593Smuzhiyun * Copyright(c) 2007 - 2021 Realtek Corporation. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * This program is free software; you can redistribute it and/or modify it 6*4882a593Smuzhiyun * under the terms of version 2 of the GNU General Public License as 7*4882a593Smuzhiyun * published by the Free Software Foundation. 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * This program is distributed in the hope that it will be useful, but WITHOUT 10*4882a593Smuzhiyun * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11*4882a593Smuzhiyun * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12*4882a593Smuzhiyun * more details. 13*4882a593Smuzhiyun * 14*4882a593Smuzhiyun *****************************************************************************/ 15*4882a593Smuzhiyun #ifndef __DRV_CONF_H__ 16*4882a593Smuzhiyun #define __DRV_CONF_H__ 17*4882a593Smuzhiyun #include "autoconf.h" 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #define CONFIG_RSSI_PRIORITY 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun /* 22*4882a593Smuzhiyun * RTW_BUSY_DENY_SCAN control if scan would be denied by busy traffic. 23*4882a593Smuzhiyun * When this defined, BUSY_TRAFFIC_SCAN_DENY_PERIOD would be used to judge if 24*4882a593Smuzhiyun * scan request coming from scan UI. Scan request from scan UI would be 25*4882a593Smuzhiyun * exception and never be denied by busy traffic. 26*4882a593Smuzhiyun */ 27*4882a593Smuzhiyun #define RTW_BUSY_DENY_SCAN 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun #if defined(CONFIG_MCC_MODE) && (!defined(CONFIG_CONCURRENT_MODE)) 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #error "Enable CONCURRENT_MODE before enable MCC MODE\n" 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #endif 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun #if defined(CONFIG_MCC_MODE) && defined(CONFIG_BTC) 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun #error "Disable BT COEXIST before enable MCC MODE\n" 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun #endif 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun #if defined(CONFIG_MCC_MODE) && defined(CONFIG_TDLS) 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun #error "Disable TDLS before enable MCC MODE\n" 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun #endif 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun #if defined(CONFIG_RTW_80211R) && !defined(CONFIG_LAYER2_ROAMING) 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun #error "Enable CONFIG_LAYER2_ROAMING before enable CONFIG_RTW_80211R\n" 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun #endif 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun #ifdef CONFIG_RTW_ANDROID 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun #include <linux/version.h> 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun #ifndef CONFIG_IOCTL_CFG80211 58*4882a593Smuzhiyun #define CONFIG_IOCTL_CFG80211 59*4882a593Smuzhiyun #endif 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun #ifndef RTW_USE_CFG80211_STA_EVENT 62*4882a593Smuzhiyun #define RTW_USE_CFG80211_STA_EVENT 63*4882a593Smuzhiyun #endif 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun #if (CONFIG_RTW_ANDROID > 4) 66*4882a593Smuzhiyun #ifndef CONFIG_RADIO_WORK 67*4882a593Smuzhiyun #define CONFIG_RADIO_WORK 68*4882a593Smuzhiyun #endif 69*4882a593Smuzhiyun #endif 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #if (CONFIG_RTW_ANDROID >= 8) 72*4882a593Smuzhiyun #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,18,0)) 73*4882a593Smuzhiyun #ifndef CONFIG_RTW_WIFI_HAL 74*4882a593Smuzhiyun #define CONFIG_RTW_WIFI_HAL 75*4882a593Smuzhiyun #endif 76*4882a593Smuzhiyun #else 77*4882a593Smuzhiyun #error "Linux kernel version is too old\n" 78*4882a593Smuzhiyun #endif 79*4882a593Smuzhiyun #endif 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun #ifdef CONFIG_RTW_WIFI_HAL 82*4882a593Smuzhiyun #ifndef CONFIG_RTW_WIFI_HAL_DEBUG 83*4882a593Smuzhiyun //#define CONFIG_RTW_WIFI_HAL_DEBUG 84*4882a593Smuzhiyun #endif 85*4882a593Smuzhiyun #if (CONFIG_RTW_ANDROID < 11) 86*4882a593Smuzhiyun #ifndef CONFIG_RTW_CFGVENDOR_LLSTATS 87*4882a593Smuzhiyun #define CONFIG_RTW_CFGVENDOR_LLSTATS 88*4882a593Smuzhiyun #endif 89*4882a593Smuzhiyun #endif 90*4882a593Smuzhiyun #ifndef CONFIG_RTW_CFGVENDOR_RANDOM_MAC_OUI 91*4882a593Smuzhiyun #define CONFIG_RTW_CFGVENDOR_RANDOM_MAC_OUI 92*4882a593Smuzhiyun #endif 93*4882a593Smuzhiyun #ifndef CONFIG_RTW_CFGVENDOR_RSSIMONITOR 94*4882a593Smuzhiyun #define CONFIG_RTW_CFGVENDOR_RSSIMONITOR 95*4882a593Smuzhiyun #endif 96*4882a593Smuzhiyun #ifndef CONFIG_RTW_CFGVENDOR_WIFI_LOGGER 97*4882a593Smuzhiyun #define CONFIG_RTW_CFGVENDOR_WIFI_LOGGER 98*4882a593Smuzhiyun #endif 99*4882a593Smuzhiyun #if (CONFIG_RTW_ANDROID >= 10) 100*4882a593Smuzhiyun #ifndef CONFIG_RTW_CFGVENDOR_WIFI_OFFLOAD 101*4882a593Smuzhiyun //#define CONFIG_RTW_CFGVENDOR_WIFI_OFFLOAD 102*4882a593Smuzhiyun #endif 103*4882a593Smuzhiyun #ifndef CONFIG_KERNEL_PATCH_EXTERNAL_AUTH 104*4882a593Smuzhiyun #define CONFIG_KERNEL_PATCH_EXTERNAL_AUTH 105*4882a593Smuzhiyun #endif 106*4882a593Smuzhiyun #endif 107*4882a593Smuzhiyun #endif // CONFIG_RTW_WIFI_HAL 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun 110*4882a593Smuzhiyun /* Some Android build will restart the UI while non-printable ascii is passed 111*4882a593Smuzhiyun * between java and c/c++ layer (JNI). We force CONFIG_VALIDATE_SSID 112*4882a593Smuzhiyun * for Android here. If you are sure there is no risk on your system about this, 113*4882a593Smuzhiyun * mask this macro define to support non-printable ascii ssid. 114*4882a593Smuzhiyun * #define CONFIG_VALIDATE_SSID */ 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun /* Android expect dbm as the rx signal strength unit */ 117*4882a593Smuzhiyun #define CONFIG_SIGNAL_DISPLAY_DBM 118*4882a593Smuzhiyun #endif // CONFIG_RTW_ANDROID 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun /* 121*4882a593Smuzhiyun #if defined(CONFIG_HAS_EARLYSUSPEND) && defined(CONFIG_RESUME_IN_WORKQUEUE) 122*4882a593Smuzhiyun #warning "You have CONFIG_HAS_EARLYSUSPEND enabled in your system, we disable CONFIG_RESUME_IN_WORKQUEUE automatically" 123*4882a593Smuzhiyun #undef CONFIG_RESUME_IN_WORKQUEUE 124*4882a593Smuzhiyun #endif 125*4882a593Smuzhiyun 126*4882a593Smuzhiyun #if defined(CONFIG_ANDROID_POWER) && defined(CONFIG_RESUME_IN_WORKQUEUE) 127*4882a593Smuzhiyun #warning "You have CONFIG_ANDROID_POWER enabled in your system, we disable CONFIG_RESUME_IN_WORKQUEUE automatically" 128*4882a593Smuzhiyun #undef CONFIG_RESUME_IN_WORKQUEUE 129*4882a593Smuzhiyun #endif 130*4882a593Smuzhiyun */ 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun #ifdef CONFIG_RESUME_IN_WORKQUEUE /* this can be removed, because there is no case for this... */ 133*4882a593Smuzhiyun #if !defined(CONFIG_WAKELOCK) && !defined(CONFIG_ANDROID_POWER) 134*4882a593Smuzhiyun #error "enable CONFIG_RESUME_IN_WORKQUEUE without CONFIG_WAKELOCK or CONFIG_ANDROID_POWER will suffer from the danger of wifi's unfunctionality..." 135*4882a593Smuzhiyun #error "If you still want to enable CONFIG_RESUME_IN_WORKQUEUE in this case, mask this preprossor checking and GOOD LUCK..." 136*4882a593Smuzhiyun #endif 137*4882a593Smuzhiyun #endif 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun /* About USB VENDOR REQ */ 140*4882a593Smuzhiyun #if defined(CONFIG_USB_VENDOR_REQ_BUFFER_PREALLOC) && !defined(CONFIG_USB_VENDOR_REQ_MUTEX) 141*4882a593Smuzhiyun #warning "define CONFIG_USB_VENDOR_REQ_MUTEX for CONFIG_USB_VENDOR_REQ_BUFFER_PREALLOC automatically" 142*4882a593Smuzhiyun #define CONFIG_USB_VENDOR_REQ_MUTEX 143*4882a593Smuzhiyun #endif 144*4882a593Smuzhiyun #if defined(CONFIG_VENDOR_REQ_RETRY) && !defined(CONFIG_USB_VENDOR_REQ_MUTEX) 145*4882a593Smuzhiyun #warning "define CONFIG_USB_VENDOR_REQ_MUTEX for CONFIG_VENDOR_REQ_RETRY automatically" 146*4882a593Smuzhiyun #define CONFIG_USB_VENDOR_REQ_MUTEX 147*4882a593Smuzhiyun #endif 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun #ifdef CONFIG_WIFI_MONITOR 150*4882a593Smuzhiyun /* #define CONFIG_MONITOR_MODE_XMIT */ 151*4882a593Smuzhiyun #endif 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun #ifdef CONFIG_CUSTOMER_ALIBABA_GENERAL 154*4882a593Smuzhiyun #ifndef CONFIG_WIFI_MONITOR 155*4882a593Smuzhiyun #define CONFIG_WIFI_MONITOR 156*4882a593Smuzhiyun #endif 157*4882a593Smuzhiyun #ifndef CONFIG_MONITOR_MODE_XMIT 158*4882a593Smuzhiyun #define CONFIG_MONITOR_MODE_XMIT 159*4882a593Smuzhiyun #endif 160*4882a593Smuzhiyun #ifdef CONFIG_POWER_SAVING 161*4882a593Smuzhiyun #undef CONFIG_POWER_SAVING 162*4882a593Smuzhiyun #endif 163*4882a593Smuzhiyun #endif 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun #ifndef CONFIG_RTW_DATA_BMC_TO_UC 166*4882a593Smuzhiyun #define CONFIG_RTW_DATA_BMC_TO_UC 0 167*4882a593Smuzhiyun #endif 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun #ifdef CONFIG_AP_MODE 170*4882a593Smuzhiyun #define CONFIG_LIMITED_AP_NUM 1 171*4882a593Smuzhiyun #define BMC_ON_HIQ 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun #ifndef CONFIG_RTW_AP_DATA_BMC_TO_UC 174*4882a593Smuzhiyun #define CONFIG_RTW_AP_DATA_BMC_TO_UC 1 175*4882a593Smuzhiyun #endif 176*4882a593Smuzhiyun #if CONFIG_RTW_AP_DATA_BMC_TO_UC 177*4882a593Smuzhiyun #undef CONFIG_RTW_DATA_BMC_TO_UC 178*4882a593Smuzhiyun #define CONFIG_RTW_DATA_BMC_TO_UC 1 179*4882a593Smuzhiyun #endif 180*4882a593Smuzhiyun #ifndef CONFIG_RTW_AP_SRC_B2U_FLAGS 181*4882a593Smuzhiyun #define CONFIG_RTW_AP_SRC_B2U_FLAGS 0x8 /* see RTW_AP_B2U_XXX */ 182*4882a593Smuzhiyun #endif 183*4882a593Smuzhiyun #ifndef CONFIG_RTW_AP_FWD_B2U_FLAGS 184*4882a593Smuzhiyun #define CONFIG_RTW_AP_FWD_B2U_FLAGS 0x8 /* see RTW_AP_B2U_XXX */ 185*4882a593Smuzhiyun #endif 186*4882a593Smuzhiyun #endif 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun #ifdef CONFIG_RTW_MULTI_AP 189*4882a593Smuzhiyun #ifndef CONFIG_AP_MODE 190*4882a593Smuzhiyun #error "enable CONFIG_RTW_MULTI_AP without CONFIG_AP_MODE" 191*4882a593Smuzhiyun #endif 192*4882a593Smuzhiyun #ifndef CONFIG_RTW_WDS 193*4882a593Smuzhiyun #define CONFIG_RTW_WDS 194*4882a593Smuzhiyun #endif 195*4882a593Smuzhiyun #ifndef CONFIG_RTW_UNASOC_STA_MODE_OF_STYPE 196*4882a593Smuzhiyun #define CONFIG_RTW_UNASOC_STA_MODE_OF_STYPE {2, 1} /* BMC:2 for all, NMY_UC:1 for interested target */ 197*4882a593Smuzhiyun #endif 198*4882a593Smuzhiyun #ifndef CONFIG_RTW_NLRTW 199*4882a593Smuzhiyun #define CONFIG_RTW_NLRTW 200*4882a593Smuzhiyun #endif 201*4882a593Smuzhiyun #ifndef CONFIG_RTW_WNM 202*4882a593Smuzhiyun #define CONFIG_RTW_WNM 203*4882a593Smuzhiyun #endif 204*4882a593Smuzhiyun #ifndef CONFIG_RTW_80211K 205*4882a593Smuzhiyun #define CONFIG_RTW_80211K 206*4882a593Smuzhiyun #endif 207*4882a593Smuzhiyun #endif 208*4882a593Smuzhiyun 209*4882a593Smuzhiyun #ifdef CONFIG_RTW_MESH 210*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_ACNODE_PREVENT 211*4882a593Smuzhiyun #define CONFIG_RTW_MESH_ACNODE_PREVENT 1 212*4882a593Smuzhiyun #endif 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_OFFCH_CAND 215*4882a593Smuzhiyun #define CONFIG_RTW_MESH_OFFCH_CAND 1 216*4882a593Smuzhiyun #endif 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_PEER_BLACKLIST 219*4882a593Smuzhiyun #define CONFIG_RTW_MESH_PEER_BLACKLIST 1 220*4882a593Smuzhiyun #endif 221*4882a593Smuzhiyun 222*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_CTO_MGATE_BLACKLIST 223*4882a593Smuzhiyun #define CONFIG_RTW_MESH_CTO_MGATE_BLACKLIST 1 224*4882a593Smuzhiyun #endif 225*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_CTO_MGATE_CARRIER 226*4882a593Smuzhiyun #define CONFIG_RTW_MESH_CTO_MGATE_CARRIER CONFIG_RTW_MESH_CTO_MGATE_BLACKLIST 227*4882a593Smuzhiyun #endif 228*4882a593Smuzhiyun 229*4882a593Smuzhiyun #ifndef CONFIG_RTW_MPM_TX_IES_SYNC_BSS 230*4882a593Smuzhiyun #define CONFIG_RTW_MPM_TX_IES_SYNC_BSS 1 231*4882a593Smuzhiyun #endif 232*4882a593Smuzhiyun #if CONFIG_RTW_MPM_TX_IES_SYNC_BSS 233*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_AEK 234*4882a593Smuzhiyun #define CONFIG_RTW_MESH_AEK 235*4882a593Smuzhiyun #endif 236*4882a593Smuzhiyun #endif 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun #ifndef CONFIG_RTW_MESH_DATA_BMC_TO_UC 239*4882a593Smuzhiyun #define CONFIG_RTW_MESH_DATA_BMC_TO_UC 1 240*4882a593Smuzhiyun #endif 241*4882a593Smuzhiyun #if CONFIG_RTW_MESH_DATA_BMC_TO_UC 242*4882a593Smuzhiyun #undef CONFIG_RTW_DATA_BMC_TO_UC 243*4882a593Smuzhiyun #define CONFIG_RTW_DATA_BMC_TO_UC 1 244*4882a593Smuzhiyun #endif 245*4882a593Smuzhiyun #ifndef CONFIG_RTW_MSRC_B2U_FLAGS 246*4882a593Smuzhiyun #define CONFIG_RTW_MSRC_B2U_FLAGS 0x0 /* see RTW_MESH_B2U_XXX */ 247*4882a593Smuzhiyun #endif 248*4882a593Smuzhiyun #ifndef CONFIG_RTW_MFWD_B2U_FLAGS 249*4882a593Smuzhiyun #define CONFIG_RTW_MFWD_B2U_FLAGS 0x2 /* see RTW_MESH_B2U_XXX */ 250*4882a593Smuzhiyun #endif 251*4882a593Smuzhiyun #endif 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun #if !defined(CONFIG_SCAN_BACKOP) && defined(CONFIG_AP_MODE) 254*4882a593Smuzhiyun #define CONFIG_SCAN_BACKOP 255*4882a593Smuzhiyun #endif 256*4882a593Smuzhiyun 257*4882a593Smuzhiyun #define RTW_SCAN_SPARSE_MIRACAST 1 258*4882a593Smuzhiyun #define RTW_SCAN_SPARSE_BG 0 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun #ifndef CONFIG_RTW_HIQ_FILTER 261*4882a593Smuzhiyun #define CONFIG_RTW_HIQ_FILTER 1 262*4882a593Smuzhiyun #endif 263*4882a593Smuzhiyun 264*4882a593Smuzhiyun #ifndef CONFIG_RTW_ADAPTIVITY_EN 265*4882a593Smuzhiyun #define CONFIG_RTW_ADAPTIVITY_EN 0 266*4882a593Smuzhiyun #endif 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun #ifndef CONFIG_RTW_ADAPTIVITY_MODE 269*4882a593Smuzhiyun #define CONFIG_RTW_ADAPTIVITY_MODE 0 270*4882a593Smuzhiyun #endif 271*4882a593Smuzhiyun 272*4882a593Smuzhiyun #ifndef CONFIG_RTW_ADAPTIVITY_TH_L2H_INI 273*4882a593Smuzhiyun #define CONFIG_RTW_ADAPTIVITY_TH_L2H_INI 0 274*4882a593Smuzhiyun #endif 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun #ifndef CONFIG_RTW_ADAPTIVITY_TH_EDCCA_HL_DIFF 277*4882a593Smuzhiyun #define CONFIG_RTW_ADAPTIVITY_TH_EDCCA_HL_DIFF 0 278*4882a593Smuzhiyun #endif 279*4882a593Smuzhiyun 280*4882a593Smuzhiyun #ifndef CONFIG_RTW_EXCL_CHS 281*4882a593Smuzhiyun #define CONFIG_RTW_EXCL_CHS {0} 282*4882a593Smuzhiyun #endif 283*4882a593Smuzhiyun 284*4882a593Smuzhiyun #ifndef CONFIG_RTW_EXCL_CHS_6G 285*4882a593Smuzhiyun #define CONFIG_RTW_EXCL_CHS_6G {0} 286*4882a593Smuzhiyun #endif 287*4882a593Smuzhiyun 288*4882a593Smuzhiyun #ifndef CONFIG_RTW_COUNTRY_IE_SLAVE_EN_ROLE 289*4882a593Smuzhiyun #define CONFIG_RTW_COUNTRY_IE_SLAVE_EN_ROLE 0x03 /* BIT0 for pure STA mode, BIT1 for P2P group client */ 290*4882a593Smuzhiyun #endif 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun #ifndef CONFIG_RTW_COUNTRY_IE_SLAVE_EN_IFBMP 293*4882a593Smuzhiyun #define CONFIG_RTW_COUNTRY_IE_SLAVE_EN_IFBMP 0xFF /* all iface */ 294*4882a593Smuzhiyun #endif 295*4882a593Smuzhiyun 296*4882a593Smuzhiyun #define CONFIG_IEEE80211_BAND_5GHZ 1 297*4882a593Smuzhiyun 298*4882a593Smuzhiyun #ifndef CONFIG_IEEE80211_BAND_6GHZ 299*4882a593Smuzhiyun #define CONFIG_IEEE80211_BAND_6GHZ 0 300*4882a593Smuzhiyun #endif 301*4882a593Smuzhiyun 302*4882a593Smuzhiyun #ifndef CONFIG_DFS 303*4882a593Smuzhiyun #define CONFIG_DFS 1 304*4882a593Smuzhiyun #endif 305*4882a593Smuzhiyun 306*4882a593Smuzhiyun #if CONFIG_DFS 307*4882a593Smuzhiyun #define CONFIG_ECSA_PHL /* Process ECSA by PHL cmd dispatcher */ 308*4882a593Smuzhiyun #ifdef CONFIG_ECSA_PHL 309*4882a593Smuzhiyun #define CONFIG_ECSA 310*4882a593Smuzhiyun #endif 311*4882a593Smuzhiyun #endif 312*4882a593Smuzhiyun 313*4882a593Smuzhiyun #if CONFIG_IEEE80211_BAND_5GHZ && CONFIG_DFS && defined(CONFIG_AP_MODE) 314*4882a593Smuzhiyun #if !defined(CONFIG_DFS_SLAVE_WITH_RADAR_DETECT) 315*4882a593Smuzhiyun #define CONFIG_DFS_SLAVE_WITH_RADAR_DETECT 0 316*4882a593Smuzhiyun #endif 317*4882a593Smuzhiyun #if !defined(CONFIG_DFS_MASTER) || CONFIG_DFS_SLAVE_WITH_RADAR_DETECT 318*4882a593Smuzhiyun /*#define CONFIG_DFS_MASTER*/ 319*4882a593Smuzhiyun #endif 320*4882a593Smuzhiyun #if defined(CONFIG_DFS_MASTER) && !defined(CONFIG_RTW_DFS_REGION_DOMAIN) 321*4882a593Smuzhiyun #define CONFIG_RTW_DFS_REGION_DOMAIN 0 322*4882a593Smuzhiyun #endif 323*4882a593Smuzhiyun #else 324*4882a593Smuzhiyun #undef CONFIG_DFS_MASTER 325*4882a593Smuzhiyun #undef CONFIG_RTW_DFS_REGION_DOMAIN 326*4882a593Smuzhiyun #define CONFIG_RTW_DFS_REGION_DOMAIN 0 327*4882a593Smuzhiyun #undef CONFIG_DFS_SLAVE_WITH_RADAR_DETECT 328*4882a593Smuzhiyun #define CONFIG_DFS_SLAVE_WITH_RADAR_DETECT 0 329*4882a593Smuzhiyun #endif 330*4882a593Smuzhiyun 331*4882a593Smuzhiyun #ifndef CONFIG_TXPWR_BY_RATE_EN 332*4882a593Smuzhiyun #define CONFIG_TXPWR_BY_RATE_EN 2 /* by efuse */ 333*4882a593Smuzhiyun #endif 334*4882a593Smuzhiyun #ifndef CONFIG_TXPWR_LIMIT_EN 335*4882a593Smuzhiyun #define CONFIG_TXPWR_LIMIT_EN 2 /* by efuse */ 336*4882a593Smuzhiyun #endif 337*4882a593Smuzhiyun 338*4882a593Smuzhiyun #ifndef CONFIG_RTW_CHPLAN 339*4882a593Smuzhiyun #define CONFIG_RTW_CHPLAN 0xFFFF /* RTW_CHPLAN_IOCTL_UNSPECIFIED */ 340*4882a593Smuzhiyun #endif 341*4882a593Smuzhiyun 342*4882a593Smuzhiyun #ifndef CONFIG_RTW_CHPLAN_6G 343*4882a593Smuzhiyun #define CONFIG_RTW_CHPLAN_6G 0xFFFF /* RTW_CHPLAN_IOCTL_UNSPECIFIED */ 344*4882a593Smuzhiyun #endif 345*4882a593Smuzhiyun 346*4882a593Smuzhiyun /* compatible with old fashion configuration */ 347*4882a593Smuzhiyun #if defined(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY) 348*4882a593Smuzhiyun #undef CONFIG_TXPWR_BY_RATE_EN 349*4882a593Smuzhiyun #undef CONFIG_TXPWR_LIMIT_EN 350*4882a593Smuzhiyun #define CONFIG_TXPWR_BY_RATE_EN 1 351*4882a593Smuzhiyun #define CONFIG_TXPWR_LIMIT_EN 1 352*4882a593Smuzhiyun #elif defined(CONFIG_CALIBRATE_TX_POWER_TO_MAX) 353*4882a593Smuzhiyun #undef CONFIG_TXPWR_BY_RATE_EN 354*4882a593Smuzhiyun #undef CONFIG_TXPWR_LIMIT_EN 355*4882a593Smuzhiyun #define CONFIG_TXPWR_BY_RATE_EN 1 356*4882a593Smuzhiyun #define CONFIG_TXPWR_LIMIT_EN 0 357*4882a593Smuzhiyun #endif 358*4882a593Smuzhiyun 359*4882a593Smuzhiyun #ifndef RTW_DEF_MODULE_REGULATORY_CERT 360*4882a593Smuzhiyun #define RTW_DEF_MODULE_REGULATORY_CERT 0 361*4882a593Smuzhiyun #endif 362*4882a593Smuzhiyun 363*4882a593Smuzhiyun #if RTW_DEF_MODULE_REGULATORY_CERT 364*4882a593Smuzhiyun #ifdef CONFIG_REGD_SRC_FROM_OS 365*4882a593Smuzhiyun #error "CONFIG_REGD_SRC_FROM_OS is not supported when enable RTW_DEF_MODULE_REGULATORY_CERT" 366*4882a593Smuzhiyun #endif 367*4882a593Smuzhiyun /* force enable TX power by rate and TX power limit */ 368*4882a593Smuzhiyun #undef CONFIG_TXPWR_BY_RATE_EN 369*4882a593Smuzhiyun #undef CONFIG_TXPWR_LIMIT_EN 370*4882a593Smuzhiyun #define CONFIG_TXPWR_BY_RATE_EN 1 371*4882a593Smuzhiyun #define CONFIG_TXPWR_LIMIT_EN 1 372*4882a593Smuzhiyun #endif 373*4882a593Smuzhiyun 374*4882a593Smuzhiyun #if !CONFIG_TXPWR_LIMIT && CONFIG_TXPWR_LIMIT_EN 375*4882a593Smuzhiyun #undef CONFIG_TXPWR_LIMIT 376*4882a593Smuzhiyun #define CONFIG_TXPWR_LIMIT 1 377*4882a593Smuzhiyun #endif 378*4882a593Smuzhiyun 379*4882a593Smuzhiyun #ifndef CONFIG_RTW_REGD_SRC 380*4882a593Smuzhiyun #define CONFIG_RTW_REGD_SRC 1 /* 0:RTK_PRIV, 1:OS */ 381*4882a593Smuzhiyun #endif 382*4882a593Smuzhiyun 383*4882a593Smuzhiyun #ifdef CONFIG_RTW_IPCAM_APPLICATION 384*4882a593Smuzhiyun #undef CONFIG_TXPWR_BY_RATE_EN 385*4882a593Smuzhiyun #define CONFIG_TXPWR_BY_RATE_EN 1 386*4882a593Smuzhiyun #define CONFIG_RTW_CUSTOMIZE_BEEDCA 0x0000431C 387*4882a593Smuzhiyun #define CONFIG_RTW_CUSTOMIZE_BWMODE 0x00 388*4882a593Smuzhiyun #define CONFIG_RTW_CUSTOMIZE_RLSTA 0x7 389*4882a593Smuzhiyun #if defined(CONFIG_RTL8822B) 390*4882a593Smuzhiyun #define CONFIG_RTW_TX_NPATH_EN /*mutually incompatible with STBC_TX & Beamformer */ 391*4882a593Smuzhiyun #endif 392*4882a593Smuzhiyun #endif 393*4882a593Smuzhiyun /* #define CONFIG_RTW_TOKEN_BASED_XMIT */ 394*4882a593Smuzhiyun #ifdef CONFIG_RTW_TOKEN_BASED_XMIT 395*4882a593Smuzhiyun #define NR_TBTX_SLOT 4 396*4882a593Smuzhiyun #define NR_MAXSTA_INSLOT 5 397*4882a593Smuzhiyun #define TBTX_TX_DURATION 30 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun #define MAX_TXPAUSE_DURATION (TBTX_TX_DURATION*NR_TBTX_SLOT) 400*4882a593Smuzhiyun #endif 401*4882a593Smuzhiyun 402*4882a593Smuzhiyun /*#define CONFIG_EXTEND_LOWRATE_TXOP */ 403*4882a593Smuzhiyun 404*4882a593Smuzhiyun #ifndef CONFIG_RTW_RX_AMPDU_SZ_LIMIT_1SS 405*4882a593Smuzhiyun #define CONFIG_RTW_RX_AMPDU_SZ_LIMIT_1SS {0xFF, 0xFF, 0xFF, 0xFF} 406*4882a593Smuzhiyun #endif 407*4882a593Smuzhiyun #ifndef CONFIG_RTW_RX_AMPDU_SZ_LIMIT_2SS 408*4882a593Smuzhiyun #define CONFIG_RTW_RX_AMPDU_SZ_LIMIT_2SS {0xFF, 0xFF, 0xFF, 0xFF} 409*4882a593Smuzhiyun #endif 410*4882a593Smuzhiyun #ifndef CONFIG_RTW_RX_AMPDU_SZ_LIMIT_3SS 411*4882a593Smuzhiyun #define CONFIG_RTW_RX_AMPDU_SZ_LIMIT_3SS {0xFF, 0xFF, 0xFF, 0xFF} 412*4882a593Smuzhiyun #endif 413*4882a593Smuzhiyun #ifndef CONFIG_RTW_RX_AMPDU_SZ_LIMIT_4SS 414*4882a593Smuzhiyun #define CONFIG_RTW_RX_AMPDU_SZ_LIMIT_4SS {0xFF, 0xFF, 0xFF, 0xFF} 415*4882a593Smuzhiyun #endif 416*4882a593Smuzhiyun 417*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_2G_A 418*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_2G_A {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1} 419*4882a593Smuzhiyun #endif 420*4882a593Smuzhiyun 421*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_2G_B 422*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_2G_B {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1} 423*4882a593Smuzhiyun #endif 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_2G_C 426*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_2G_C {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1} 427*4882a593Smuzhiyun #endif 428*4882a593Smuzhiyun 429*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_2G_D 430*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_2G_D {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1} 431*4882a593Smuzhiyun #endif 432*4882a593Smuzhiyun 433*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_5G_A 434*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_5G_A {-1, -1, -1, -1, -1, -1, -1, -1, -1} 435*4882a593Smuzhiyun #endif 436*4882a593Smuzhiyun 437*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_5G_B 438*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_5G_B {-1, -1, -1, -1, -1, -1, -1, -1, -1} 439*4882a593Smuzhiyun #endif 440*4882a593Smuzhiyun 441*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_5G_C 442*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_5G_C {-1, -1, -1, -1, -1, -1, -1, -1, -1} 443*4882a593Smuzhiyun #endif 444*4882a593Smuzhiyun 445*4882a593Smuzhiyun #ifndef CONFIG_RTW_TARGET_TX_PWR_5G_D 446*4882a593Smuzhiyun #define CONFIG_RTW_TARGET_TX_PWR_5G_D {-1, -1, -1, -1, -1, -1, -1, -1, -1} 447*4882a593Smuzhiyun #endif 448*4882a593Smuzhiyun 449*4882a593Smuzhiyun #ifndef CONFIG_RTW_AMPLIFIER_TYPE_2G 450*4882a593Smuzhiyun #define CONFIG_RTW_AMPLIFIER_TYPE_2G 0 451*4882a593Smuzhiyun #endif 452*4882a593Smuzhiyun 453*4882a593Smuzhiyun #ifndef CONFIG_RTW_AMPLIFIER_TYPE_5G 454*4882a593Smuzhiyun #define CONFIG_RTW_AMPLIFIER_TYPE_5G 0 455*4882a593Smuzhiyun #endif 456*4882a593Smuzhiyun 457*4882a593Smuzhiyun #ifndef CONFIG_RTW_RFE_TYPE 458*4882a593Smuzhiyun #define CONFIG_RTW_RFE_TYPE 0xFF 459*4882a593Smuzhiyun #endif 460*4882a593Smuzhiyun 461*4882a593Smuzhiyun #ifndef CONFIG_RTW_GLNA_TYPE 462*4882a593Smuzhiyun #define CONFIG_RTW_GLNA_TYPE 0 463*4882a593Smuzhiyun #endif 464*4882a593Smuzhiyun 465*4882a593Smuzhiyun #ifndef CONFIG_RTW_PLL_REF_CLK_SEL 466*4882a593Smuzhiyun #define CONFIG_RTW_PLL_REF_CLK_SEL 0x0F 467*4882a593Smuzhiyun #endif 468*4882a593Smuzhiyun 469*4882a593Smuzhiyun #ifndef CONFIG_IFACE_NUMBER 470*4882a593Smuzhiyun #ifdef CONFIG_CONCURRENT_MODE 471*4882a593Smuzhiyun #define CONFIG_IFACE_NUMBER 2 472*4882a593Smuzhiyun #else 473*4882a593Smuzhiyun #define CONFIG_IFACE_NUMBER 1 474*4882a593Smuzhiyun #endif 475*4882a593Smuzhiyun #endif 476*4882a593Smuzhiyun 477*4882a593Smuzhiyun #ifdef CONFIG_CONCURRENT_MODE 478*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER < 2) 479*4882a593Smuzhiyun #error "CONFIG_IFACE_NUMBER less 2,but CONFIG_CONCURRENT_MODE defined" 480*4882a593Smuzhiyun #endif 481*4882a593Smuzhiyun #else 482*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER > 1) 483*4882a593Smuzhiyun #error "CONFIG_IFACE_NUMBER over 1,but CONFIG_CONCURRENT_MODE not defined" 484*4882a593Smuzhiyun #endif 485*4882a593Smuzhiyun #endif 486*4882a593Smuzhiyun 487*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER == 0) 488*4882a593Smuzhiyun #error "CONFIG_IFACE_NUMBER cound not be 0 !!" 489*4882a593Smuzhiyun #endif 490*4882a593Smuzhiyun 491*4882a593Smuzhiyun 492*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER > 4) 493*4882a593Smuzhiyun #error "Not support over 4 interfaces yet !!" 494*4882a593Smuzhiyun #endif 495*4882a593Smuzhiyun 496*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER > 8) /*IFACE_ID_MAX*/ 497*4882a593Smuzhiyun #error "HW count not support over 8 interfaces !!" 498*4882a593Smuzhiyun #endif 499*4882a593Smuzhiyun 500*4882a593Smuzhiyun #if (CONFIG_IFACE_NUMBER > 2) 501*4882a593Smuzhiyun #ifdef CONFIG_AP_MODE 502*4882a593Smuzhiyun #undef CONFIG_LIMITED_AP_NUM 503*4882a593Smuzhiyun #define CONFIG_LIMITED_AP_NUM 2 504*4882a593Smuzhiyun #endif /*CONFIG_AP_MODE*/ 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun #endif/*(CONFIG_IFACE_NUMBER > 2)*/ 507*4882a593Smuzhiyun 508*4882a593Smuzhiyun #define MACID_NUM_SW_LIMIT 32 509*4882a593Smuzhiyun #define SEC_CAM_ENT_NUM_SW_LIMIT 32 510*4882a593Smuzhiyun 511*4882a593Smuzhiyun 512*4882a593Smuzhiyun /* 513*4882a593Smuzhiyun Mark CONFIG_DEAUTH_BEFORE_CONNECT by Arvin 2015/07/20 514*4882a593Smuzhiyun If the failure of Wi-Fi connection is due to some irregular disconnection behavior (like unplug dongle, 515*4882a593Smuzhiyun power down etc.) in last time, we can unmark this flag to avoid some unpredictable response from AP. 516*4882a593Smuzhiyun */ 517*4882a593Smuzhiyun /*#define CONFIG_DEAUTH_BEFORE_CONNECT */ 518*4882a593Smuzhiyun 519*4882a593Smuzhiyun /*#define CONFIG_WEXT_DONT_JOIN_BYSSID */ 520*4882a593Smuzhiyun /* #include <rtw_byteorder.h> */ 521*4882a593Smuzhiyun 522*4882a593Smuzhiyun 523*4882a593Smuzhiyun /*#define CONFIG_DOSCAN_IN_BUSYTRAFFIC */ 524*4882a593Smuzhiyun 525*4882a593Smuzhiyun /*Don't release SDIO irq in suspend/resume procedure*/ 526*4882a593Smuzhiyun #define CONFIG_RTW_SDIO_KEEP_IRQ 0 527*4882a593Smuzhiyun 528*4882a593Smuzhiyun /* 529*4882a593Smuzhiyun * Add by Lucas@2016/02/15 530*4882a593Smuzhiyun * For RX Aggregation 531*4882a593Smuzhiyun */ 532*4882a593Smuzhiyun #if defined(CONFIG_SDIO_HCI) || defined(CONFIG_USB_RX_AGGREGATION) 533*4882a593Smuzhiyun #define RTW_RX_AGGREGATION 534*4882a593Smuzhiyun #endif /* CONFIG_SDIO_HCI || CONFIG_USB_RX_AGGREGATION */ 535*4882a593Smuzhiyun 536*4882a593Smuzhiyun #ifdef CONFIG_RTW_HOSTAPD_ACS 537*4882a593Smuzhiyun #ifdef CONFIG_FIND_BEST_CHANNEL 538*4882a593Smuzhiyun #undef CONFIG_FIND_BEST_CHANNEL 539*4882a593Smuzhiyun #endif 540*4882a593Smuzhiyun #ifndef CONFIG_RTW_ACS 541*4882a593Smuzhiyun #define CONFIG_RTW_ACS 542*4882a593Smuzhiyun #endif 543*4882a593Smuzhiyun #endif 544*4882a593Smuzhiyun 545*4882a593Smuzhiyun 546*4882a593Smuzhiyun #ifdef DBG_CONFIG_ERROR_RESET 547*4882a593Smuzhiyun #ifndef CONFIG_IPS 548*4882a593Smuzhiyun #define CONFIG_IPS 549*4882a593Smuzhiyun #endif 550*4882a593Smuzhiyun #endif 551*4882a593Smuzhiyun 552*4882a593Smuzhiyun /* IPS */ 553*4882a593Smuzhiyun #ifndef RTW_IPS_MODE 554*4882a593Smuzhiyun #if defined(CONFIG_IPS) 555*4882a593Smuzhiyun #define RTW_IPS_MODE 1 556*4882a593Smuzhiyun #else 557*4882a593Smuzhiyun #define RTW_IPS_MODE 0 558*4882a593Smuzhiyun #endif 559*4882a593Smuzhiyun #endif /* !RTW_IPS_MODE */ 560*4882a593Smuzhiyun 561*4882a593Smuzhiyun #if (RTW_IPS_MODE > 1 || RTW_IPS_MODE < 0) 562*4882a593Smuzhiyun #error "The CONFIG_IPS_MODE value is wrong. Please follow HowTo_enable_the_power_saving_functionality.pdf.\n" 563*4882a593Smuzhiyun #endif 564*4882a593Smuzhiyun 565*4882a593Smuzhiyun /* LPS */ 566*4882a593Smuzhiyun #ifndef RTW_LPS_MODE 567*4882a593Smuzhiyun #if defined(CONFIG_LPS_PG) 568*4882a593Smuzhiyun #define RTW_LPS_MODE 3 569*4882a593Smuzhiyun #elif defined(CONFIG_LPS_LCLK) 570*4882a593Smuzhiyun #define RTW_LPS_MODE 2 571*4882a593Smuzhiyun #elif defined(CONFIG_LPS) 572*4882a593Smuzhiyun #define RTW_LPS_MODE 1 573*4882a593Smuzhiyun #else 574*4882a593Smuzhiyun #define RTW_LPS_MODE 0 575*4882a593Smuzhiyun #endif 576*4882a593Smuzhiyun #endif /* !RTW_LPS_MODE */ 577*4882a593Smuzhiyun 578*4882a593Smuzhiyun #if (RTW_LPS_MODE > 3 || RTW_LPS_MODE < 0) 579*4882a593Smuzhiyun #error "The CONFIG_LPS_MODE value is wrong. Please follow HowTo_enable_the_power_saving_functionality.pdf.\n" 580*4882a593Smuzhiyun #endif 581*4882a593Smuzhiyun 582*4882a593Smuzhiyun #ifndef RTW_LPS_1T1R 583*4882a593Smuzhiyun #define RTW_LPS_1T1R 0 584*4882a593Smuzhiyun #endif 585*4882a593Smuzhiyun 586*4882a593Smuzhiyun #ifndef RTW_WOW_LPS_1T1R 587*4882a593Smuzhiyun #define RTW_WOW_LPS_1T1R 0 588*4882a593Smuzhiyun #endif 589*4882a593Smuzhiyun 590*4882a593Smuzhiyun /* WOW LPS */ 591*4882a593Smuzhiyun #ifndef RTW_WOW_LPS_MODE 592*4882a593Smuzhiyun #if defined(CONFIG_LPS_PG) 593*4882a593Smuzhiyun #define RTW_WOW_LPS_MODE 3 594*4882a593Smuzhiyun #elif defined(CONFIG_LPS_LCLK) 595*4882a593Smuzhiyun #define RTW_WOW_LPS_MODE 2 596*4882a593Smuzhiyun #elif defined(CONFIG_LPS) 597*4882a593Smuzhiyun #define RTW_WOW_LPS_MODE 1 598*4882a593Smuzhiyun #else 599*4882a593Smuzhiyun #define RTW_WOW_LPS_MODE 0 600*4882a593Smuzhiyun #endif 601*4882a593Smuzhiyun #endif /* !RTW_WOW_LPS_MODE */ 602*4882a593Smuzhiyun 603*4882a593Smuzhiyun #if (RTW_WOW_LPS_MODE > 3 || RTW_WOW_LPS_MODE < 0) 604*4882a593Smuzhiyun #error "The RTW_WOW_LPS_MODE value is wrong. Please follow HowTo_enable_the_power_saving_functionality.pdf.\n" 605*4882a593Smuzhiyun #endif 606*4882a593Smuzhiyun 607*4882a593Smuzhiyun #ifdef RTW_REDUCE_SCAN_SWITCH_CH_TIME 608*4882a593Smuzhiyun #ifndef CONFIG_RTL8822B 609*4882a593Smuzhiyun #error "Only 8822B support RTW_REDUCE_SCAN_SWITCH_CH_TIME" 610*4882a593Smuzhiyun #endif 611*4882a593Smuzhiyun #ifndef RTW_CHANNEL_SWITCH_OFFLOAD 612*4882a593Smuzhiyun #define RTW_CHANNEL_SWITCH_OFFLOAD 613*4882a593Smuzhiyun #endif 614*4882a593Smuzhiyun #endif 615*4882a593Smuzhiyun 616*4882a593Smuzhiyun #ifdef CONFIG_PCI_BCN_POLLING 617*4882a593Smuzhiyun #define CONFIG_BCN_ICF 618*4882a593Smuzhiyun #endif 619*4882a593Smuzhiyun 620*4882a593Smuzhiyun #if !defined (CONFIG_PCI_MSI) || defined (CONFIG_RTW_FORCE_PCI_MSI_DISABLE) 621*4882a593Smuzhiyun #define CONFIG_RTW_PCI_MSI_DISABLE 622*4882a593Smuzhiyun #endif 623*4882a593Smuzhiyun 624*4882a593Smuzhiyun #if defined(CONFIG_PCI_DYNAMIC_ASPM_L1_LATENCY) || \ 625*4882a593Smuzhiyun defined(CONFIG_PCI_DYNAMIC_ASPM_LINK_CTRL) 626*4882a593Smuzhiyun #define CONFIG_PCI_DYNAMIC_ASPM 627*4882a593Smuzhiyun #endif 628*4882a593Smuzhiyun 629*4882a593Smuzhiyun #if 0 630*4882a593Smuzhiyun /* Debug related compiler flags */ 631*4882a593Smuzhiyun #define DBG_THREAD_PID /* Add thread pid to debug message prefix */ 632*4882a593Smuzhiyun #define DBG_CPU_INFO /* Add CPU info to debug message prefix */ 633*4882a593Smuzhiyun #endif 634*4882a593Smuzhiyun 635*4882a593Smuzhiyun #ifdef CONFIG_TX_AMSDU_HW_MODE 636*4882a593Smuzhiyun #define CONFIG_HW_HDR_CONVERSION 637*4882a593Smuzhiyun #elif defined(CONFIG_TX_AMSDU_SW_MODE) 638*4882a593Smuzhiyun #else 639*4882a593Smuzhiyun #define CONFIG_HW_HDR_CONVERSION /* TODO: should be 'unchange' */ 640*4882a593Smuzhiyun #endif 641*4882a593Smuzhiyun 642*4882a593Smuzhiyun /* for phl illegal mac io access check*/ 643*4882a593Smuzhiyun #define CONFIG_MAC_REG_RW_CHK 644*4882a593Smuzhiyun 645*4882a593Smuzhiyun /* To enable the CONFIG_PHL_P2PPS definition in phl_config.h */ 646*4882a593Smuzhiyun #ifdef CONFIG_P2P_PS 647*4882a593Smuzhiyun #define CONFIG_P2PPS 648*4882a593Smuzhiyun #endif 649*4882a593Smuzhiyun 650*4882a593Smuzhiyun #ifdef CONFIG_CMD_DISP 651*4882a593Smuzhiyun /*#define DBG_CONFIG_CMD_DISP*/ 652*4882a593Smuzhiyun 653*4882a593Smuzhiyun #define CONFIG_CMD_SCAN 654*4882a593Smuzhiyun #ifdef CONFIG_CMD_SCAN 655*4882a593Smuzhiyun #ifdef CONFIG_IOCTL_CFG80211 656*4882a593Smuzhiyun #define CONFIG_PHL_CMD_SCAN_BKOP_TIME 657*4882a593Smuzhiyun #endif 658*4882a593Smuzhiyun /* Scan hidden AP in passive channel */ 659*4882a593Smuzhiyun #define RTW_WKARD_CMD_SCAN_EXTEND_ACTIVE_SCAN 660*4882a593Smuzhiyun #define RTW_EXTEND_ACTIVE_SCAN_PERIOD 30 /* unit: ms */ 661*4882a593Smuzhiyun #endif /* CONFIG_CMD_SCAN */ 662*4882a593Smuzhiyun 663*4882a593Smuzhiyun #define CONFIG_CMD_GENERAL 664*4882a593Smuzhiyun #define CONFIG_CMD_SER 665*4882a593Smuzhiyun #define CONFIG_STA_CMD_DISPR 666*4882a593Smuzhiyun #define CONFIG_AP_CMD_DISPR 667*4882a593Smuzhiyun /*#define CONFIG_IBSS_CMD_DISPR*/ 668*4882a593Smuzhiyun #define CONFIG_CMD_TSF_SYNC 669*4882a593Smuzhiyun #endif 670*4882a593Smuzhiyun 671*4882a593Smuzhiyun #ifdef ROKU_PRIVATE 672*4882a593Smuzhiyun #define CONFIG_RELEASE_RPT 673*4882a593Smuzhiyun #define CONFIG_RA_TXSTS_DBG 674*4882a593Smuzhiyun #endif 675*4882a593Smuzhiyun 676*4882a593Smuzhiyun #ifdef CONFIG_80211AX_HE 677*4882a593Smuzhiyun #define CONFIG_STA_MULTIPLE_BSSID 678*4882a593Smuzhiyun #endif 679*4882a593Smuzhiyun 680*4882a593Smuzhiyun /* 681*4882a593Smuzhiyun * Work around Config 682*4882a593Smuzhiyun */ 683*4882a593Smuzhiyun /* 684*4882a593Smuzhiyun * RTW_WKARD_UPDATE_PHL_ROLE_CAP 685*4882a593Smuzhiyun * Update adapter->phl_role.cap & proto_role_cap by driver parameters(registry). 686*4882a593Smuzhiyun */ 687*4882a593Smuzhiyun #define RTW_WKARD_UPDATE_PHL_ROLE_CAP 688*4882a593Smuzhiyun 689*4882a593Smuzhiyun /* 690*4882a593Smuzhiyun *RTW_WKARD_TRIGGER_FRAME_PARSER-OFDMA UL TB control 691*4882a593Smuzhiyun */ 692*4882a593Smuzhiyun #define RTW_WKARD_TRIGGER_FRAME_PARSER 693*4882a593Smuzhiyun #endif /* __DRV_CONF_H__ */ 694