menuconfig RTLWIFI6
	tristate "Realtek PCIE WiFi6"
	depends on PCIE || PCI
	select WIRELESS_EXT
	select WEXT_PRIV
	help
	  Help message of RTLWIFI6

if RTLWIFI6

menu "Realtek PCIE WiFi6 Chip"
	config RTL8852AE
	bool "RTL8852AE"

	config RTL8852CE
	bool "RTL8852CE"

	config RTL8852DE
	bool "RTL8852DE"

	config RTL8832BR
	bool "RTL8832BR"

	config RTL8192XB
	bool "RTL8192XB"
endmenu

config RTW_TRIBAND_SUPPORT
        bool "Tri Band WiFi Support"
        default n
        help
	  Help message of RTLWIFI6

config RTW_LINK_PHL_MASTER
	bool "Link to phl master branch"
	default n
	help
	  During updating changes to phl master. Some code needs to be disabled 
	  before corresponding PHL changed commited to PHL.

config RTW_DRV_HAS_NVM
	bool "Driver to support system NVM instead efuse"
	default y
	help
	   System's NVM, instead of wifi chip's efuse, stores MP calibration 
	   values and system configuration. 

config RTW_PERSIST_IF
	bool "Persist interface"
	default n
	help
	  Once virtual interface is created, it remain alive until primary one is deleted.

config LIMITED_AP_NUM
	int "AP interface number"
	range 1 14
	default 6
	help
	  Maximum number of AP interface the Realtek Wifi6 driver to support

config LIMITED_STA_NUM
	int "STA interface number"
	range 16 119
	default 64
	help
	  Maximum number of connect sta the Realtek Wifi6 driver to support

source "drivers/net/wireless/realtek/g6_wifi_driver/Kconfig.wfo"

config 2G_ON_WLAN0
	bool "Config 2.4G on wlan0 & 5G on wlan1"
	depends on PCIE || PCI
	default n
	help
	  Help message of RTLWIFI6

config 2G_ON_PCIE_SLOT0
	bool "Config 2.4G on pcie slot 0 & 5G on pcie slot 1"
	depends on PCIE || PCI
	default n
	help
	  Help message of RTLWIFI6

config SHARE_XSTAL
	bool "Realtek WiFi share xstal"
	default y
	help
	  WiFi 5G shares the xstal with 2.4G

choice XSTAL_CHOICE
	prompt "XSTAL Type for WiFi 2.4G"
	depends on !SHARE_XSTAL
	default 2G_40MHZ_XSTAL

	config 2G_25MHZ_XSTAL
	bool "25MHz xstal - share with SoC"

	config 2G_40MHZ_XSTAL
	bool "40MHz xstal"
endchoice

config AX_SHARE_XTAL
	bool "AX shared crystal config"
	default n
	help
	  Device is shared crystal
choice AX_XSTAL_CHOICE
	prompt "shared crystal type"
	depends on AX_SHARE_XTAL

	config WLAN_SHARE_XTAL
	bool "Wlan 2.4G shared xtal with 5G"

endchoice

config RTW_DEV_IS_SINGLE_BAND
	bool "Wlan device is single band"
	default y
	help
	  Realtek Wlan device is designed for either 2.4G or 5G band.

config RTW_2_4G_DEV
	string "PCI device's name of 2.4G band" if RTW_DEV_IS_SINGLE_BAND
	default "0000:02:01.0"
	help
	  PCI device name that supports 2.4G band. Default value is set for 98D reference board design.

config MP_INCLUDED
	bool "Realtek PCIE WiFi MP Mode"
	depends on PCIE || PCI
	default y
	help
	  Help message of RTLWIFI6

config PHL_TEST_SUITE
	bool "Realtek PCIE WiFi MP Test Suite"
	depends on MP_INCLUDED
	default y
	help
	  Help message of RTLWIFI6

config MP_CONFIG_FOR_AP
	bool "Enable config setting for AP's MP mode"
	depends on MP_INCLUDED
	default y
	help
	  Help message of RTLWIFI6

# RFE type config

choice RFE_WLAN0_CHOICE
	prompt "RFE Type for WLAN0"
	default WLAN0_RFE_TYPE_50

	config WLAN0_RFE_TYPE_50
	bool "Type 50"

	config WLAN0_RFE_TYPE_51
	bool "Type 51"

	config WLAN0_RFE_TYPE_52
	bool "Type 52"

	config WLAN0_RFE_TYPE_53
	bool "Type 53"

	config WLAN0_RFE_TYPE_54
	bool "Type 54"
endchoice

# WLAN0 extension para config for eFEM
choice FEM_WLAN0_CHOICE
	prompt "FEM Type for WLAN0"
		default WLAN0_AP_5G
		depends on WLAN0_RFE_TYPE_50 || WLAN0_RFE_TYPE_51 || WLAN0_RFE_TYPE_52 || WLAN0_RFE_TYPE_53 || WLAN0_RFE_TYPE_54

		config WLAN0_AP_5G
		bool "AP (5G)"
		depends on WLAN0_RFE_TYPE_50

		config WLAN0_AP_2G
		bool "AP (2G)"
		depends on WLAN0_RFE_TYPE_50

if RTL8852AE
		config WLAN0_FEM_VC5333
		bool "VC5333 (2G)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_SKY85333
		bool "SKY85333 (2G)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_SKY85747
		bool "SKY85747 (5G)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_RTC66204
		bool "RTC66204 (2G)"
		depends on WLAN0_RFE_TYPE_52

		config WLAN0_FEM_RTC66504
		bool "RTC66504 (5G)"
		depends on WLAN0_RFE_TYPE_52

		config WLAN0_FEM_KCT8575HE
		bool "KCT8575HE"
		depends on WLAN0_RFE_TYPE_53
endif

if RTL8852CE
		config WLAN0_FEM_SKY85791
		bool "SKY85791 (8852CRe)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_KTC8570N
		bool "KTC8570N (8852CRe)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_RTC66506
		bool "RTC66506 (8852CRe)"
		depends on WLAN0_RFE_TYPE_52

		config WLAN0_FEM_KCT8539HE
		bool "KCT8539HE (8852CRe)"
		depends on WLAN0_RFE_TYPE_53

		config WLAN0_FEM_RTK66587
		bool "RTK66587 (8852CRe)"
		depends on WLAN0_RFE_TYPE_54

		config WLAN0_FEM_RTK66587_TRI
		bool "RTK66587_TRI (8852CRe)"
		depends on WLAN0_RFE_TYPE_54

		config WLAN0_FEM_RTC7676D
		bool "RTC7676D (8852CRe)"
		depends on WLAN0_RFE_TYPE_54

		config WLAN0_FEM_RTC7676D_08U
		bool "RTC7676D_08U (8852CRe)"
		depends on WLAN0_RFE_TYPE_54
endif

if RTL8832BR
		config WLAN0_FEM_KCT8539HE
		bool "KCT8539HE (8832BRe)"
		depends on WLAN0_RFE_TYPE_53
endif

if RTL8192XB
		config WLAN0_FEM_SKY85340
		bool "SKY85340 (8192XBe)"
		depends on WLAN0_RFE_TYPE_51

		config WLAN0_FEM_VC5337
		bool "VC5337 (8192XBe)"
		depends on WLAN0_RFE_TYPE_53

		config WLAN0_FEM_KCT8239SD
		bool "KCT8239SD (8192XBe)"
		depends on WLAN0_RFE_TYPE_53

		config WLAN0_FEM_RTK66287
		bool "RTK66287 (8192XBe)"
		depends on WLAN0_RFE_TYPE_54

		config WLAN0_FEM_RTK66287_TRI
		bool "RTK66287_TRI (8192XBe)"
		depends on WLAN0_RFE_TYPE_54
endif
endchoice


choice RFE_WLAN1_CHOICE
	prompt "RFE Type for WLAN1"
	default WLAN1_RFE_TYPE_50

	config WLAN1_RFE_TYPE_50
	bool "Type 50"

	config WLAN1_RFE_TYPE_51
	bool "Type 51"

	config WLAN1_RFE_TYPE_52
	bool "Type 52"

	config WLAN1_RFE_TYPE_53
	bool "Type 53"

	config WLAN1_RFE_TYPE_54
	bool "Type 54"

endchoice

# WLAN1 extension para config for eFEM
choice FEM_WLAN1_CHOICE
	prompt "FEM Type for WLAN1"
		default WLAN1_AP_2G
		depends on WLAN1_RFE_TYPE_50 || WLAN1_RFE_TYPE_51 || WLAN1_RFE_TYPE_52 || WLAN1_RFE_TYPE_53 || WLAN1_RFE_TYPE_54

		config WLAN1_AP_5G
		bool "AP (5G)"
		depends on WLAN1_RFE_TYPE_50

		config WLAN1_AP_2G
		bool "AP (2G)"
		depends on WLAN1_RFE_TYPE_50

if RTL8852AE
		config WLAN1_FEM_VC5333
		bool "VC5333 (2G)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_SKY85333
		bool "SKY85333 (2G)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_SKY85747
		bool "SKY85747 (5G)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_RTC66204
		bool "RTC66204 (2G)"
		depends on WLAN1_RFE_TYPE_52

		config WLAN1_FEM_RTC66504
		bool "RTC66504 (5G)"
		depends on WLAN1_RFE_TYPE_52

		config WLAN1_FEM_KCT8575HE
		bool "KCT8575HE"
		depends on WLAN1_RFE_TYPE_53
endif

if RTL8852CE
		config WLAN1_FEM_SKY85791
		bool "SKY85791 (8852CRe)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_KTC8570N
		bool "KTC8570N (8852CRe)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_RTC66506
		bool "RTC66506 (8852CRe)"
		depends on WLAN1_RFE_TYPE_52

		config WLAN1_FEM_KCT8539HE
		bool "KCT8539HE (8852CRe)"
		depends on WLAN1_RFE_TYPE_53

		config WLAN1_FEM_RTK66587
		bool "RTK66587 (8852CRe)"
		depends on WLAN1_RFE_TYPE_54

		config WLAN1_FEM_RTK66587_TRI
		bool "RTK66587_TRI (8852CRe)"
		depends on WLAN1_RFE_TYPE_54

		config WLAN1_FEM_RTC7676D
		bool "RTC7676D (8852CRe)"
		depends on WLAN1_RFE_TYPE_54

		config WLAN1_FEM_RTC7676D_08U
		bool "RTC7676D_08U (8852CRe)"
		depends on WLAN1_RFE_TYPE_54
endif

if RTL8832BR
		config WLAN1_FEM_KCT8539HE
		bool "KCT8539HE (8832BRe)"
		depends on WLAN1_RFE_TYPE_53
endif

if RTL8192XB
		config WLAN1_FEM_SKY85340
		bool "SKY85340 (8192XBe)"
		depends on WLAN1_RFE_TYPE_51

		config WLAN1_FEM_VC5337
		bool "VC5337 (8192XBe)"
		depends on WLAN1_RFE_TYPE_53

		config WLAN1_FEM_KCT8239SD
		bool "KCT8239SD (8192XBe)"
		depends on WLAN1_RFE_TYPE_53

		config WLAN1_FEM_RTK66287
		bool "RTK66287 (8192XBe)"
		depends on WLAN1_RFE_TYPE_54

		config WLAN1_FEM_RTK66287_TRI
		bool "RTK66287_TRI (8192XBe)"
		depends on WLAN1_RFE_TYPE_54
endif
endchoice

if RTW_TRIBAND_SUPPORT
choice RFE_WLAN2_CHOICE
	prompt "RFE Type for WLAN2"
	default WLAN2_RFE_TYPE_50

	config WLAN2_RFE_TYPE_50
	bool "Type 50"

	config WLAN2_RFE_TYPE_51
	bool "Type 51"

	config WLAN2_RFE_TYPE_52
	bool "Type 52"

	config WLAN2_RFE_TYPE_53
	bool "Type 53"

	config WLAN2_RFE_TYPE_54
	bool "Type 54"
endchoice

# WLAN2 extension para config for eFEM
choice FEM_WLAN2_CHOICE
	prompt "FEM Type for WLAN2"
		default WLAN2_AP_2G
		depends on WLAN2_RFE_TYPE_50 || WLAN2_RFE_TYPE_51 || WLAN2_RFE_TYPE_52 || WLAN2_RFE_TYPE_53 || WLAN2_RFE_TYPE_54

		config WLAN2_AP_5G
		bool "AP (5G)"
		depends on WLAN2_RFE_TYPE_50

		config WLAN2_AP_2G
		bool "AP (2G)"
		depends on WLAN2_RFE_TYPE_50

if RTL8852AE
		config WLAN2_FEM_VC5333
		bool "VC5333 (2G)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_SKY85333
		bool "SKY85333 (2G)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_SKY85747
		bool "SKY85747 (5G)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_RTC66204
		bool "RTC66204 (2G)"
		depends on WLAN2_RFE_TYPE_52

		config WLAN2_FEM_RTC66504
		bool "RTC66504 (5G)"
		depends on WLAN2_RFE_TYPE_52

		config WLAN2_FEM_KCT8575HE
		bool "KCT8575HE"
		depends on WLAN2_RFE_TYPE_53
endif

if RTL8852CE
		config WLAN2_FEM_SKY85791
		bool "SKY85791 (8852CRe)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_KTC8570N
		bool "KTC8570N (8852CRe)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_RTC66506
		bool "RTC66506 (8852CRe)"
		depends on WLAN2_RFE_TYPE_52

		config WLAN2_FEM_KCT8539HE
		bool "KCT8539HE (8852CRe)"
		depends on WLAN2_RFE_TYPE_53

		config WLAN2_FEM_RTK66587
		bool "RTK66587 (8852CRe)"
		depends on WLAN2_RFE_TYPE_54

		config WLAN2_FEM_RTK66587_TRI
		bool "RTK66587_TRI (8852CRe)"
		depends on WLAN2_RFE_TYPE_54

		config WLAN2_FEM_RTC7676D
		bool "RTC7676D (8852CRe)"
		depends on WLAN2_RFE_TYPE_54

		config WLAN2_FEM_RTC7676D_08U
		bool "RTC7676D_08U (8852CRe)"
		depends on WLAN2_RFE_TYPE_54
endif

if RTL8832BR
		config WLAN2_FEM_KCT8539HE
		bool "KCT8539HE (8832BRe)"
		depends on WLAN2_RFE_TYPE_53
endif

if RTL8192XB
		config WLAN2_FEM_SKY85340
		bool "SKY85340 (8192XBe)"
		depends on WLAN2_RFE_TYPE_51

		config WLAN2_FEM_VC5337
		bool "VC5337 (8192XBe)"
		depends on WLAN2_RFE_TYPE_53

		config WLAN2_FEM_KCT8239SD
		bool "KCT8239SD (8192XBe)"
		depends on WLAN2_RFE_TYPE_53

		config WLAN2_FEM_RTK66287
		bool "RTK66287 (8192XBe)"
		depends on WLAN2_RFE_TYPE_54

		config WLAN2_FEM_RTK66287_TRI
		bool "RTK66287_TRI (8192XBe)"
		depends on WLAN2_RFE_TYPE_54
endif

endchoice
endif	#CONFIG_RTW_TRIBAND_SUPPORT

config RTW_ANTENNA_DIVERSITY
	bool "Antenna diversity support"
	default n

config 24G_256QAM
	bool "Enable 256 QAM on 2.4G"
        default y

config RTW_80211W_SUPPORT
	bool "Enable WiFi6 80211W"
        default y

config WIFI6_WPA3
	bool "Enable WiFi6 WPA3"
        default y

config RTW_CLIENT_MODE_SUPPORT
        bool "Client Mode Support"
        depends on PCIE || PCI
        default n
        help
          Help message of RTLWIFI6

config RTW_REPEATER_MODE_SUPPORT
        bool "Repeater Mode Support"
        depends on PCIE || PCI
	select RTW_CLIENT_MODE_SUPPORT
        default n
        help
          Help message of RTLWIFI6

config RTW_A4_STA
    bool "A4_STA support"
    default n
    help
        Help message of RTLWIFI6

config APPEND_VENDOR_IE_ENABLE
    bool

config WLAN_EVENT_INDICATE_GENL
	bool "Wlan event indicate support(by genetlink)"
	default n

config RTK_WLAN_EVENT_INDICATE
	bool "Wlan event indicate support"
	depends on !WLAN_EVENT_INDICATE_GENL
	default n
	help
	    Help message of RTLWIFI6

config RTW_SBWC
	bool "station bandwidth control support"
	default n
	help
	    Help message of RTLWIFI6

config RTW_GBWC
	bool "group bandwidth control support"
	default n
	help
	    Help message of RTLWIFI6

config AP_NEIGHBOR_INFO
        bool "Wlan ap neighbor info support"
        default n
        help
            Help message of RTLWIFI6

config RTW_CURRENT_RATE_ACCOUNTING
        bool "current_rate_accounting_support"
        default n
        help
            Help message of RTLWIFI6

config RTW_MULTI_AP
    bool "Multi-AP Support"
    select RTW_A4_STA
    select RTW_CLIENT_MODE_SUPPORT
	select RTW_80211K
	select RTW_80211V
    default n
    help
        Help message of RTLWIFI6

config RTW_MULTI_AP_R1
	depends on RTW_MULTI_AP
    bool "Multi-AP Profile 1"
	default y

config RTW_MULTI_AP_R2
depends on RTW_MULTI_AP
    bool "Multi-AP Profile 2"
	select RTW_MULTI_AP_R1

config RTW_MULTI_AP_R3
depends on RTW_MULTI_AP
    bool "Multi-AP Profile 3"
	select RTW_MULTI_AP_R2

config RTW_MULTI_AP_R4
depends on RTW_MULTI_AP
    bool "Multi-AP Profile 4"
	select RTW_MULTI_AP_R3

config RTW_MULTI_AP_R5
depends on RTW_MULTI_AP
	bool "Multi-AP Profile 5"
	select RTW_MULTI_AP_R4

config RTW_MULTI_AP_LOGO
    bool "Multi-AP Logo Mode"
	depends on RTW_MULTI_AP
	default n

config RTW_80211K
    bool "802.11K Support"
    default n
    help
        Help message of RTLWIFI6

config RTW_80211V
    bool "802.11V Support"
    default n
    help
        Help message of RTLWIFI6

config RTW_80211R
    bool "802.11R Support"
    default n
    help
        Help message of RTLWIFI6

config RTW_OWE
    bool "OWE Support"
    default n
    help
	Help message of RTLWIFI6

config WLAN_MANAGER
	bool "Realtek WLAN Manager support"
	default n
	help
	  Help message of RTLWIFI6

config BAND_STEERING
	bool "Realtek Band Steering suuport"
	default n
	select WLAN_MANAGER
	help
	  Help message of RTLWIFI6
config RTW_CROSSBAND_REPEATER_SUPPORT
	bool "Realtek crossband repeater support"
	default n
	select WLAN_MANAGER
	help
	  Help message of RTLWIFI6

config RTW_COMMON_NETLINK
	bool "Common Netlink Support"
	default n
	select RTW_MULTI_AP
	select WLAN_MANAGER
	help
	  Help message of RTLWIFI6

config RTW_WPS_MULTI_CREDENTIAL_SUPPORT
	bool "wps multi credential support"
	default n
	help
		Help message of RTLWIFI6

config SLOT_1_TX_BEAMFORMING
    bool "TX_BEAMFORMING Support"
    default n
    help
        Help message of RTLWIFI6

config RECORD_CLIENT_HOST
	bool "Record client host support"
        default n
	help
            Help message of RTLWIFI6

config RTW_BL_FASTCON_HOOK
	bool "CMCC blink fast connect"
	default n
	help
		Help message of RTLWIFI6
config RTW_SSID_PRIORITY
	bool "ssid priority support"
	default n
        help
            Help message of RTLWIFI6

config CTC_FEATURE
	bool "Realtek 8852A CTC feature support"
	select WLAN_EVENT_INDICATE_GENL
	select APPEND_VENDOR_IE_ENABLE
	default n
	help
		Help message of RTLWIFI6

config RTW_OPCLASS_CHANNEL_SCAN
        bool "Wlan opClass channel scan"
        default n
        help
            Help message of RTLWIFI6

config RTW_DE_SUPPORT
        bool "Data Element driver support"
        default n
        help
            Support Wi-Fi Alliance Data Element in driver

config RTL_CFG80211_WAPI_SUPPORT
	bool "RTL cfg80211 WAPI support"
	default n

config WIFI_LED_SHARE_WITH_WPS
	bool "WiFi LED share with WPS"
        default n
	help
            Help message of RTLWIFI6

config RTW_BYPASS_DEAMSDU
	bool "Bypass de-AMSDU support"
	default n

config RTW_CUSTOM_PWRLMT
	bool "Enable custom power limit"
	default n
	help
	  Enable transmit power limitations by default
endif
