/* * Copyright (c) 2012-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the * above copyright notice and this permission notice appear in all * copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */ /** * DOC: This file contains centralized definitions of converged configuration. */ #ifndef __CFG_MLME_GENERIC_H #define __CFG_MLME_GENERIC_H #define CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE CFG_INI_UINT #define CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE CFG_INI_UINT /** * enum monitor_mode_concurrency - Monitor mode concurrency * @MONITOR_MODE_CONC_NO_SUPPORT: No concurrency supported with monitor mode * @MONITOR_MODE_CONC_STA_SCAN_MON: STA + monitor mode concurrency is supported * @MONITOR_MODE_CONC_AFTER_LAST: last value in enum * @MONITOR_MODE_CONC_MAX: max value supported */ enum monitor_mode_concurrency { MONITOR_MODE_CONC_NO_SUPPORT, MONITOR_MODE_CONC_STA_SCAN_MON, MONITOR_MODE_CONC_AFTER_LAST, MONITOR_MODE_CONC_MAX = MONITOR_MODE_CONC_AFTER_LAST - 1, }; /** * enum wlan_wds_mode - wds mode * @WLAN_WDS_MODE_DISABLED: WDS is disabled * @WLAN_WDS_MODE_REPEATER: WDS repeater mode * @WLAN_WDS_MODE_LAST: last value in enum * @WLAN_WDS_MODE_MAX: max value supported * This is used for 'type' values in wds_mode */ enum wlan_wds_mode { WLAN_WDS_MODE_DISABLED = 0, WLAN_WDS_MODE_REPEATER = 1, /* keep this last */ WLAN_WDS_MODE_LAST, WLAN_WDS_MODE_MAX = WLAN_WDS_MODE_LAST - 1, }; /** * enum wlan_eht_mode - EHT mode of operation * @WLAN_EHT_MODE_DISABLED: EHT is disabled * @WLAN_EHT_MODE_SLO: Single-link operation mode * @WLAN_EHT_MODE_MLSR: Multi-link Single-Radio mode * @WLAN_EHT_MODE_MLMR: Multi-link Multi-Radio mode * @WLAN_EHT_MODE_EMLSR: Enhanced Multi-link Single-Radio mode * @WLAN_EHT_MODE_LAST: last value in enum * @WLAN_EHT_MODE_MAX: max value supported * * This is used for 'type' values in eht_mode */ enum wlan_eht_mode { WLAN_EHT_MODE_DISABLED = 0, WLAN_EHT_MODE_SLO = 1, WLAN_EHT_MODE_MLSR = 2, WLAN_EHT_MODE_MLMR = 3, WLAN_EHT_MODE_EMLSR = 4, /* keep this last */ WLAN_EHT_MODE_LAST, WLAN_EHT_MODE_MAX = WLAN_EHT_MODE_LAST - 1, }; /** * enum wlan_emlsr_action_mode - EMLSR action mode * @WLAN_EMLSR_MODE_DISABLED: EMLSR is disabled * @WLAN_EMLSR_MODE_ENTER: Enter EMLSR operation mode * @WLAN_EMLSR_MODE_EXIT: Exit EMLSR operation mode * @WLAN_EMLSR_MODE_LAST: last value in enum * @WLAN_EMLSR_MODE_MAX: max value supported * * This is used for 'type' values in emlsr_mode */ enum wlan_emlsr_action_mode { WLAN_EMLSR_MODE_DISABLED = 0, WLAN_EMLSR_MODE_ENTER = 1, WLAN_EMLSR_MODE_EXIT = 2, /* keep this last */ WLAN_EMLSR_MODE_LAST, WLAN_EMLSR_MODE_MAX = WLAN_EMLSR_MODE_LAST - 1, }; /** * enum wlan_t2lm_negotiation_support - TID-to-link mapping negotiation support * @WLAN_T2LM_DISABLE: T2LM support is disabled * @WLAN_T2LM_SAME_LINK_SET: Mapping of all TIDs to the same link set, both DL * and UL * @WLAN_T2LM_RESERVED: This value is Reserved * @WLAN_T2LM_SAME_DIFF_LINK_SET: Mapping of each TID to the same or different * link set * @WLAN_T2LM_SUPPORT_LAST: last value in enum * @WLAN_T2LM_SUPPORT_MAX: max value supported * * This is used for 'type' values in T2LM support */ enum wlan_t2lm_negotiation_support { WLAN_T2LM_DISABLE = 0, WLAN_T2LM_SAME_LINK_SET = 1, WLAN_T2LM_RESERVED = 2, WLAN_T2LM_SAME_DIFF_LINK_SET = 3, /* keep this last */ WLAN_T2LM_SUPPORT_LAST, WLAN_T2LM_SUPPORT_MAX = WLAN_T2LM_SUPPORT_LAST - 1, }; /** * enum debug_packet_log_type - Debug packet log type * @DEBUG_PKTLOG_TYPE_NONE: Debug packet log is disabled * @DEBUG_PKTLOG_TYPE_MGMT: Management frames logging is enabled. * @DEBUG_PKTLOG_TYPE_EAPOL: EAPOL packets logging is enabled. * @DEBUG_PKTLOG_TYPE_DHCP: DHCP packets logging is enabled. * @DEBUG_PKTLOG_TYPE_ACTION: Action frames logging is enabled. * @DEBUG_PKTLOG_TYPE_ARP: ARP packets logging is enabled. */ enum debug_packet_log_type { DEBUG_PKTLOG_TYPE_NONE = 0x0, DEBUG_PKTLOG_TYPE_MGMT = 0x1, DEBUG_PKTLOG_TYPE_EAPOL = 0x2, DEBUG_PKTLOG_TYPE_DHCP = 0x4, DEBUG_PKTLOG_TYPE_ACTION = 0x8, DEBUG_PKTLOG_TYPE_ARP = 0x10, }; /** * enum t2lm_negotiation_support: t2lm negotiation supported * @T2LM_NEGOTIATION_DISABLED: T2LM is disabled * @T2LM_NEGOTIATION_ALL_TIDS_TO_SUBSET_OF_LINKS: supports the mapping * of all TIDs to the same link set both DL and UL. * @T2LM_NEGOTIATION_RESERVED: * this mapping value is reserved. * @T2LM_NEGOTIATION_DISJOINT_MAPPING: supports the mapping of * each TID to the same or different link set. * @T2LM_NEGOTIATION_LAST: last value in enum * @T2LM_NEGOTIATION_MAX: max value supported */ enum t2lm_negotiation_support { T2LM_NEGOTIATION_DISABLED = 0, T2LM_NEGOTIATION_ALL_TIDS_TO_SUBSET_OF_LINKS = 1, T2LM_NEGOTIATION_RESERVED = 2, T2LM_NEGOTIATION_DISJOINT_MAPPING = 3, T2LM_NEGOTIATION_LAST, /* keep this last */ T2LM_NEGOTIATION_MAX = T2LM_NEGOTIATION_LAST - 1, }; /** * enum wlan_epcs_capability - EPCS capability * @WLAN_EPCS_CAP_DISABLED: EPCS capability disable * @WLAN_EPCS_CAP_ENABLE: EPCS capability enable * @WLAN_EPCS_CAP_LAST: last value in enum * @WLAN_EPCS_CAP_MAX: max value supported */ enum wlan_epcs_capability { WLAN_EPCS_CAP_DISABLED = 0, WLAN_EPCS_CAP_ENABLE = 1, /* keep this last */ WLAN_EPCS_CAP_LAST, WLAN_EPCS_CAP_MAX = WLAN_EPCS_CAP_LAST - 1, }; /** * enum wlan_epcs_frame - EPCS frame type * @WLAN_EPCS_FRAME_TEARDOWN: EPCS teardown frame * @WLAN_EPCS_FRAME_REQUEST: EPCS request frame * @WLAN_EPCS_FRAME_LAST: last value in enum * @WLAN_EPCS_FRAME_MAX: max value supported */ enum wlan_epcs_frame { WLAN_EPCS_FRAME_TEARDOWN = 0, WLAN_EPCS_FRAME_REQUEST = 1, /* keep this last */ WLAN_EPCS_FRAME_LAST, WLAN_EPCS_FRAME_MAX = WLAN_EPCS_FRAME_LAST - 1, }; /* * pmfSaQueryMaxRetries - Control PMF SA query retries for SAP * @Min: 0 * @Max: 20 * @Default: 5 * * This ini to set the number of PMF SA query retries for SAP * * Related: None. * * Supported Feature: PMF(11W) * */ #define CFG_PMF_SA_QUERY_MAX_RETRIES CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE( \ "pmfSaQueryMaxRetries", \ 0, \ 20, \ 5, \ CFG_VALUE_OR_DEFAULT, \ "PMF SA query retries for SAP") /* * pmfSaQueryRetryInterval - Control PMF SA query retry interval * for SAP in ms * @Min: 10 * @Max: 2000 * @Default: 200 * * This ini to set the PMF SA query retry interval for SAP in ms * * Related: None. * * Supported Feature: PMF(11W) * */ #define CFG_PMF_SA_QUERY_RETRY_INTERVAL CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE( \ "pmfSaQueryRetryInterval", \ 10, \ 2000, \ 200, \ CFG_VALUE_OR_DEFAULT, \ "PMF SA query retry interval for SAP") #ifdef WLAN_FEATURE_11BE /* * oem_eht_mlo_crypto_bitmap - OEM control to allow various EHT connection * options using bitmap based on following ENUM (Name of ENUM to be added) * @Min: 0x0 * @Max: 0xFFFFFFFF * @Default: 0x20008 - To allow MLO WPA2-PMF cap APs and WPA3-SAE w/o H2E cap * * This INI is used to control the driver candidate selection and EHT * connection choice based on OEM configuration. The bitmap follows the * implementation from wlan_crypto_oem_eht_mlo_config enum */ #define CFG_OEM_EHT_MLO_CRYPTO_BITMAP CFG_INI_UINT( \ "oem_eht_mlo_crypto_bitmap", \ 0x0, \ 0xFFFFFFFF, \ 0x20008, \ CFG_VALUE_OR_DEFAULT, \ "OEM control to allow/disallow crypto to EHT configuration") #define CFG_OEM_EHT_MLO_CRYPTO_BITMAP_SUPPORTED \ CFG(CFG_OEM_EHT_MLO_CRYPTO_BITMAP) #else #define CFG_OEM_EHT_MLO_CRYPTO_BITMAP_SUPPORTED #endif /* * * enable_rtt_mac_randomization - Enable/Disable rtt mac randomization * @Min: 0 * @Max: 1 * @Default: 1 * * Usage: External * * */ #define CFG_ENABLE_RTT_MAC_RANDOMIZATION CFG_INI_BOOL( \ "enable_rtt_mac_randomization", \ 1, \ "Enable RTT MAC randomization") #define CFG_RTT3_ENABLE CFG_BOOL( \ "rtt3_enabled", \ 1, \ "RTT3 enable/disable info") /* * * g11hSupportEnabled - Enable 11h support * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to set 11h support flag * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_11H_SUPPORT_ENABLED CFG_INI_BOOL( \ "g11hSupportEnabled", \ 1, \ "11h Enable Flag") /* * * g11dSupportEnabled - Enable 11d support * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to set 11d support flag * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_11D_SUPPORT_ENABLED CFG_INI_BOOL( \ "g11dSupportEnabled", \ 1, \ "11d Enable Flag") /* * rf_test_mode_enabled - Enable rf test mode support * @Min: 0 * @Max: 1 * @Default: 0 * * This cfg is used to set rf test mode support flag * by default 6 G Hz security check will be enabled * with rf test mode as disabled. * * Related: None * * Supported Feature: STA */ #define CFG_RF_TEST_MODE_SUPP_ENABLED CFG_BOOL( \ "rf_test_mode_enabled", \ 0, \ "rf test mode Enable Flag") #ifdef CONFIG_BAND_6GHZ /* * disable_vlp_sta_conn_to_sp_ap - Disable VLP STA connection to SP AP * @Min: 0 * @Max: 1 * @Default: 0 * * This cfg is used to disable connection when AP is operating in 6 GHz * SP mode but STA doesn't support SP mode and supports VLP mode. * * Related: None * * Supported Feature: STA */ #define CFG_DISABLE_VLP_STA_CONN_TO_SP_AP CFG_BOOL( \ "disable_vlp_sta_conn_to_sp_ap", \ 0, \ "disable vlp sta conn to sp ap") #define CFG_DIS_VLP_STA_CONN_TO_SP_AP CFG(CFG_DISABLE_VLP_STA_CONN_TO_SP_AP) #else #define CFG_DIS_VLP_STA_CONN_TO_SP_AP #endif #ifdef CONFIG_BAND_6GHZ /* * standard_6ghz_connection_policy - Enable 6 GHz standard connection policy * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to set standard 6 GHz policies where STA will be * allowed to scan and connect to any 6 GHz AP. * * Related: None * * Supported Feature: STA */ #define CFG_6GHZ_STANDARD_CONNECTION_POLICY CFG_INI_BOOL( \ "standard_6ghz_connection_policy", \ 1, \ "6ghz standard 6 GHZ connection policy") #define CFG_6GHZ_STD_CONN_POLICY CFG(CFG_6GHZ_STANDARD_CONNECTION_POLICY) #else #define CFG_6GHZ_STD_CONN_POLICY #endif #ifdef WLAN_FEATURE_11BE_MLO /* * emlsr_mode_enable - Enable eMLSR mode support * @Min: 0 * @Max: 1 * @Default: 0 * * This cfg is used to enable eMLSR mode * If 0 - MLMR mode (Default mode) * If 1 - eMLSR mode * * Related: None * * Supported Feature: STA */ #define CFG_EMLSR_MODE_ENABLE CFG_BOOL( \ "emlsr_mode_enable", \ 0, \ "eMLSR mode enable flag") #define CFG_EMLSR_MODE_ENABLED CFG(CFG_EMLSR_MODE_ENABLE) #else #define CFG_EMLSR_MODE_ENABLED #endif /* * * BandCapability - Preferred band (0: 2.4G, 5G, and 6G, * 1: 2.4G only, * 2: 5G only, * 3: Both 2.4G and 5G, * 4: 6G only, * 5: Both 2.4G and 6G, * 6: Both 5G and 6G, * 7: 2.4G, 5G, and 6G) * @Min: 0 * @Max: 7 * @Default: 7 * * This ini is used to set default band capability * (0: Both 2.4G and 5G, 1: 2.4G only, 2: 5G only, 3: Both 2.4G and 5G, * 4: 6G only, 5: Both 2.4G and 6G, 6: Both 5G and 6G, 7: 2.4G, 5G, and 6G) * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_BAND_CAPABILITY CFG_INI_UINT( \ "BandCapability", \ 0, \ 7, \ 7, \ CFG_VALUE_OR_DEFAULT, \ "Band Capability") /* * * gPreventLinkDown - Enable to prevent bus link from going down * @Min: 0 * @Max: 1 * @Default: 0 * * Enable to prevent bus link from going down. Useful for platforms that do not * (yet) support link down suspend cases. * * Related: N/A * * Supported Feature: Suspend/Resume * * Usage: Internal * * */ #if defined(QCA_WIFI_EMULATION) || defined(QCA_WIFI_QCA6290) #define CFG_PREVENT_LINK_DOWN CFG_INI_BOOL( \ "gPreventLinkDown", \ 1, \ "Prevent Bus Link Down") #else #define CFG_PREVENT_LINK_DOWN CFG_INI_BOOL( \ "gPreventLinkDown", \ 0, \ "Prevent Bus Link Down") #endif /* QCA_WIFI_EMULATION */ /* * * gSelect5GHzMargin - Sets RSSI preference for 5GHz over 2.4GHz AP. * @Min: 0 * @Max: 60 * @Default: 0 * * Prefer connecting to 5G AP even if its RSSI is lower by gSelect5GHzMargin * dBm than 2.4G AP. This feature requires the dependent cfg.ini * "gRoamPrefer5GHz" set to 1 * * Related: gRoamPrefer5GHz * * Supported Feature: Roaming * * Usage: External * * */ #define CFG_SELECT_5GHZ_MARGIN CFG_INI_UINT( \ "gSelect5GHzMargin", \ 0, \ 60, \ 0, \ CFG_VALUE_OR_DEFAULT, \ "Select 5Ghz Margin") /* * * gEnableMemDeepSleep - Sets Memory Deep Sleep on/off. * @Min: 0 * @Max: 1 * @Default: 1 * * This option enables/disables memory deep sleep. * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_ENABLE_MEM_DEEP_SLEEP CFG_INI_BOOL( \ "gEnableMemDeepSleep", \ 1, \ "Enable Memory Deep Sleep") /* * * * gEnableCckTxFirOverride - Enable/disable CCK TxFIR Override * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 0 (disabled) * * When operating in an 802.11b mode, this configuration item forces a 2x2 radio * configuration into 1x for Tx and 2x for Rx (ie 1x2) for regulatory compliance * reasons. * * Related: enable2x2 * * Supported Feature: 802.11b, 2x2 * * Usage: External * * */ #define CFG_ENABLE_CCK_TX_FIR_OVERRIDE CFG_INI_BOOL( \ "gEnableCckTxFirOverride", \ 0, \ "Enable CCK TX FIR Override") /* * * * gEnableForceTargetAssert - Enable/disable SSR * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 0 (disabled) * * This INI item is used to control subsystem restart(SSR) test framework * Set it's value to 1 to enable APPS triggered SSR testing * * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_ENABLE_CRASH_INJECT CFG_INI_BOOL( \ "gEnableForceTargetAssert", \ 0, \ "Enable Crash Inject") /* * * * gEnableLpassSupport - Enable/disable LPASS Support * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 1 (disabled) if WLAN_FEATURE_LPSS is defined, 0 otherwise * * Related: None * * Supported Feature: General * * Usage: External * * */ #ifdef WLAN_FEATURE_LPSS #define CFG_ENABLE_LPASS_SUPPORT CFG_INI_BOOL( \ "gEnableLpassSupport", \ 1, \ "Enable LPASS Support") #else #define CFG_ENABLE_LPASS_SUPPORT CFG_BOOL( \ "gEnableLpassSupport", \ 0, \ "Enable LPASS Support") #endif /* * * * gEnableSelfRecovery - Enable/disable Self Recovery * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 0 (disabled) * * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_ENABLE_SELF_RECOVERY CFG_INI_BOOL( \ "gEnableSelfRecovery", \ 0, \ "Enable Self Recovery") /* * * * gSapDot11mc - Enable/disable SAP 802.11mc support * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 0 (disabled) * * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_SAP_DOT11MC CFG_INI_BOOL( \ "gSapDot11mc", \ 0, \ "SAP 802.11mc support") /* * * * gEnableFatalEvent - Enable/Disable BUG report in case of fatal event * @Min: 0 (disabled) * @Max: 1 (enabled) * @Default: 1 (enabled) * * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_ENABLE_FATAL_EVENT_TRIGGER CFG_INI_BOOL( \ "gEnableFatalEvent", \ 1, \ "Enable Fatal Event Trigger") /* * * gSub20ChannelWidth - Control sub 20 channel width (5/10 Mhz) * @Min: 0 * @Max: 2 * @Default: 0 * * This ini is used to set the sub 20 channel width. * gSub20ChannelWidth=0: indicates do not use Sub 20 MHz bandwidth * gSub20ChannelWidth=1: Bring up SAP/STA in 5 MHz bandwidth * gSub20ChannelWidth=2: Bring up SAP/STA in 10 MHz bandwidth * * Related: None * * Supported Feature: 5/10 Mhz channel width support * * Usage: External * * */ #define CFG_SUB_20_CHANNEL_WIDTH CFG_INI_UINT( \ "gSub20ChannelWidth", \ 0, \ 2, \ 0, \ CFG_VALUE_OR_DEFAULT, \ "Sub 20 Channel Width") /* * * goptimize_chan_avoid_event - Optimize channel avoidance indication * coming from firmware * @Min: 0 * @Max: 1 * @Default: 0 * * Related: None * * Supported Feature: General * * Usage: External * * */ #define CFG_OPTIMIZE_CA_EVENT CFG_INI_BOOL( \ "goptimize_chan_avoid_event", \ 0, \ "Optimize FW CA Event") /* * * fw_timeout_crash - Enable/Disable BUG ON * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to Trigger host crash when firmware fails to send the * response to host * fw_timeout_crash = 0 Disabled * fw_timeout_crash = 1 Trigger host crash * * Related: None * * Supported Feature: SSR * * Usage: External * * */ #define CFG_CRASH_FW_TIMEOUT CFG_INI_BOOL( \ "fw_timeout_crash", \ 1, \ "Enable FW Timeout Crash") /* * * gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware * @Min: 0 * @Max: 65535 * @Default: 512 * * This INI is the packet drop threshold will trigger disconnect from remote * peer. * * Related: None * * Supported Feature: connection * * Usage: External * * */ #define CFG_DROPPED_PKT_DISCONNECT_THRESHOLD CFG_INI_UINT( \ "gDroppedPktDisconnectTh", \ 0, \ 65535, \ 512, \ CFG_VALUE_OR_DEFAULT, \ "Dropped Pkt Disconnect threshold") /* * * gItoRepeatCount - sets ito repeated count * @Min: 0 * @Max: 5 * @Default: 0 * * This ini sets the ito count in FW * * Usage: External * * */ #define CFG_ITO_REPEAT_COUNT CFG_INI_UINT( \ "gItoRepeatCount", \ 0, \ 5, \ 0, \ CFG_VALUE_OR_DEFAULT, \ "ITO Repeat Count") /* * * gEnableDeauthToDisassocMap - Enables deauth to disassoc map * @Min: 0 * @Max: 1 * @Default: 0 * * This ini is used to set default disassoc map * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP CFG_INI_BOOL( \ "gEnableDeauthToDisassocMap", \ 0, \ "Enables deauth to disassoc map") /* * * gEnableDebugLog - Enable/Disable the Connection related logs * @Min: 0 * @Max: 0xFF * @Default: 0x01 * * This ini is used to enable/disable the connection related logs * 0x1 - Enable mgmt pkt logs (except probe req/rsp, beacons). * 0x2 - Enable EAPOL pkt logs. * 0x4 - Enable DHCP pkt logs. * 0x8 - Enable mgmt action frames logs. * 0x10 - Enable ARP pkt logs. * 0x0 - Disable all the above connection related logs. * The default value of 0x01 will enable all the mgmt logs * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_ENABLE_DEBUG_PACKET_LOG CFG_INI_UINT( \ "gEnableDebugLog", \ 0, 0xFF, 0x01, \ CFG_VALUE_OR_DEFAULT, \ "Enable debug log") /* * * enable_beacon_reception_stats - Enable disable beacon reception stats * @Min: 0 * @Max: 1 * @Default: 0 * * This ini is used to enable/disable the beacon reception stats collected per * vdev and then sent to the driver to be displayed in sysfs * * Related: None * * Supported Feature: Stats * * Usage: External * * */ #define CFG_ENABLE_BEACON_RECEPTION_STATS CFG_INI_BOOL( \ "enable_beacon_reception_stats", \ 0, \ "Enable disable beacon reception stats") /* * * disable_4way_hs_offload - Enable/Disable 4 way handshake offload to firmware * @Min: 0 * @Max: 0x2 * @Default: 0x2 * * 0x0 - 4-way HS to be handled in firmware for the AKMs except for SAE and * OWE roaming the 4way HS is handled in supplicant by default * 0x1 - 4-way HS to be handled in supplicant * 0x2 - 4-way HS to be handled in firmware for the AKMs including the SAE * Roam except for OWE roaming the 4way HS is handled in supplicant * * Based on the requirement the Max value can be increased per AKM. * * Related: None * * Supported Feature: STA Roaming * * Usage: External * * */ #define CFG_DISABLE_4WAY_HS_OFFLOAD CFG_INI_UINT( \ "disable_4way_hs_offload", \ 0, \ 0x2, \ 0x2, \ CFG_VALUE_OR_DEFAULT, \ "Enable/disable 4 way handshake offload to firmware") /* * * mgmt_retry_max - Maximum Retries for mgmt frames * @Min: 0 * @Max: 31 * @Default: 15 * * This ini is used to set maximum retries for mgmt frames * * Supported Feature: STA/SAP * * Usage: External * * */ #define CFG_MGMT_RETRY_MAX CFG_INI_UINT( \ "mgmt_retry_max", \ 0, \ 31, \ 15, \ CFG_VALUE_OR_DEFAULT, \ "Max retries for mgmt frames") /* * * enable_he_mcs0_for_mgmt_6ghz- if disabled FW will use 6Mbps 11A rate * @Min: 0 * @Max: 1 * @Default: 0 * * If this ini is disabled firmware will use 6Mbps 11A rate * * Supported Feature: STA/SAP * * Usage: External * * */ #define CFG_ENABLE_HE_MCS0_MGMT_6GHZ CFG_INI_BOOL( \ "enable_he_mcs0_for_mgmt_6ghz", \ 0, \ "MCS0 rate for 6ghz mgmt frames") /* * * bmiss_skip_full_scan - To decide whether firmware does channel map based * partial scan or partial scan followed by full scan in case no candidate is * found in partial scan. * @Min: 0 * @Max: 1 * @Default: 0 * * 0 : Based on the channel map , firmware does scan to find new AP. if AP is * not found then it does a full scan on all valid channels. * 1 : Firmware does channel map based partial scan only. * * Related: None * * Supported Feature: STA Roaming * * Usage: External * * */ #define CFG_BMISS_SKIP_FULL_SCAN CFG_INI_BOOL("bmiss_skip_full_scan", \ 0, \ "To decide partial/partial scan followed by full scan") /* * * gEnableRingBuffer - Enable Ring Buffer for Bug Report * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to enable Ring Buffer * * Related: None * * Supported Feature: STA/SAP * * Usage: External * * */ #define CFG_ENABLE_RING_BUFFER CFG_INI_BOOL( \ "gEnableRingBuffer", \ 1, \ "To Enable Ring Buffer") /* * * dfs_chan_ageout_time - Set DFS Channel ageout time(in seconds) * @Min: 0 * @Max: 8 * Default: 0 * * Ageout time is the time upto which DFS channel information such as beacon * found is remembered. So that Firmware performs Active scan instead of the * Passive to reduce the Dwell time. * This ini Parameter used to set ageout timer value from host to FW. * If not set, Firmware will disable ageout time. * * Supported Feature: STA scan in DFS channels * * Usage: External * * */ #define CFG_DFS_CHAN_AGEOUT_TIME CFG_INI_UINT("dfs_chan_ageout_time", \ 0, 8, 0, CFG_VALUE_OR_DEFAULT, \ "Set DFS Channel ageout time from host to firmware") /* * * sae_connect_retries - Bit mask to retry Auth and full connection on assoc * timeout to same AP and auth retries during roaming * @Min: 0x0 * @Max: 0x53 * @Default: 0x52 * * This ini is used to set max auth retry in auth phase of roaming and initial * connection and max connection retry in case of assoc timeout. MAX Auth * retries are capped to 3, connection retries are capped to 2 and roam Auth * retry is capped to 1. * Default is 0x52 i.e. 1 roam auth retry, 2 auth retry and 2 full connection * retry. * * Bits Retry Type * BIT[0:2] AUTH retries * BIT[3:5] Connection reties * BIT[6:8] ROAM AUTH retries * * Some Possible values are as below * 0 - NO auth/roam Auth retry and NO full connection retry after * assoc timeout * 0x49 - 1 auth/roam auth retry and 1 full connection retry * 0x52 - 1 roam auth retry, 2 auth retry and 2 full connection retry * 0x1 /0x2 - 0 roam auth retry, 1 or 2 auth retry respectively and NO full * connection retry * 0x8 /0x10 - 0 roam auth retry,NO auth retry and 1 or 2 full connection retry * respectively. * 0x4A - 1 roam auth retry,2 auth retry and 1 full connection retry * 0x51 - 1 auth/roam auth retry and 2 full connection retry * * Related: None * * Supported Feature: STA SAE * * Usage: External * * */ #define CFG_SAE_CONNECION_RETRIES CFG_INI_UINT("sae_connect_retries", \ 0, 0x53, 0x52, CFG_VALUE_OR_DEFAULT, \ "Bit mask to retry Auth and full connection on assoc timeout to same AP for SAE connection") /* * * * wls_6ghz_capable - WiFi Location Service(WLS) is 6Ghz capable * @Min: 0 (WLS 6Ghz non-capable) * @Max: 1 (WLS 6Ghz capable) * @Default: 0 (WLS 6Ghz non-capable) * * Related: None * * Supported Feature: General * * Usage: Internal * * */ #define CFG_WLS_6GHZ_CAPABLE CFG_INI_BOOL( \ "wls_6ghz_capable", \ 0, \ "WiFi Location Service(WLS) is 6Ghz capable or not") /* * * * monitor_mode_conc - Monitor mode concurrency supported * @Min: 0 * @Max: 1 * @Default: 0 * * Related: None * * Monitor mode concurrency supported * 0 - No concurrency supported * 1 - Allow STA scan + Monitor mode concurrency * * Supported Feature: General * * Usage: External * * */ #define CFG_MONITOR_MODE_CONCURRENCY CFG_INI_UINT( \ "monitor_mode_concurrency", \ MONITOR_MODE_CONC_NO_SUPPORT, \ MONITOR_MODE_CONC_MAX, \ MONITOR_MODE_CONC_NO_SUPPORT, \ CFG_VALUE_OR_DEFAULT, \ "Monitor mode concurrency supported") #ifdef FEATURE_WDS /* * * * wds_mode - wds mode supported * @Min: 0 * @Max: 1 * @Default: 0 * * Related: None * * wds mode supported * 0 - wds mode disabled * 1 - wds repeater mode * * Supported Feature: General * * Usage: External * * */ #define CFG_WDS_MODE CFG_INI_UINT( \ "wds_mode", \ WLAN_WDS_MODE_DISABLED, \ WLAN_WDS_MODE_MAX, \ WLAN_WDS_MODE_DISABLED, \ CFG_VALUE_OR_DEFAULT, \ "wds mode supported") #define CFG_WDS_MODE_ALL CFG(CFG_WDS_MODE) #else #define CFG_WDS_MODE_ALL #endif /* * * tx_retry_multiplier - TX retry multiplier * @Min: 0 * @Max: 500 * @Default: 0 * * This ini is used to indicate percentage to max retry limit to fw * which can further be used by fw to multiply counter by * tx_retry_multiplier percent. * * Supported Feature: STA/SAP * * Usage: External * * */ #define CFG_TX_RETRY_MULTIPLIER CFG_INI_UINT( \ "tx_retry_multiplier", \ 0, \ 500, \ 0, \ CFG_VALUE_OR_DEFAULT, \ "percentage of max retry limit") /* * * mgmt_frame_hw_tx_retry_count - Set hw tx retry count for mgmt action * frame * @Min: N/A * @Max: N/A * @Default: N/A * * Set mgmt action frame hw tx retry count, string format looks like below: * frame_hw_tx_retry_count=",,..." * frame type is enum value of mlme_cfg_frame_type. * Retry count max value is 127. * For example: * frame_hw_tx_retry_count="0,64,2,32" * The above input string means: * For p2p go negotiation request fame, hw retry count 64 * For p2p provision discovery request, hw retry count 32 * * Related: None. * * Supported Feature: STA/P2P * * Usage: External * * */ #define MGMT_FRM_HW_TX_RETRY_COUNT_STR_LEN (64) #define CFG_MGMT_FRAME_HW_TX_RETRY_COUNT CFG_INI_STRING( \ "mgmt_frame_hw_tx_retry_count", \ 0, \ MGMT_FRM_HW_TX_RETRY_COUNT_STR_LEN, \ "", \ "Set mgmt action frame hw tx retry count") #if defined(WLAN_FEATURE_SR) /* * * sr_enable_modes - Modes for which SR(Spatial Reuse) feature can be enabled * @Min: 0x00 * @Max: 0xf * @Default: 0x1 * * This ini is used to check for which mode SR feature is enabled * * Bit 0: Enable/Disable SR feature for STA * Bit 1: Enable/Disable SR feature for SAP * Bit 2: Enable/Disable SR feature for P2P CLI * Bit 3: Enable/Disable SR feature for P2P GO * * Related: None * * Supported Feature: STA/SAP * * Usage: External * * */ #define CFG_SR_ENABLE_MODES CFG_INI_UINT( \ "sr_enable_modes",\ 0x0,\ 0xf,\ 0x1,\ CFG_VALUE_OR_DEFAULT, \ "To decide for which mode SR feature is enabled") #define CFG_SR_ENABLE_MODES_ALL CFG(CFG_SR_ENABLE_MODES) #else #define CFG_SR_ENABLE_MODES_ALL #endif #ifdef WLAN_FEATURE_11BE_MLO /* * t2lm_negotiation_support - T2LM negotiation support by STA * @Min: 0 * @Max: 3 * @Default: 1 * * This cfg is used to define t2lm negotiation supported value by STA * If 0 - t2lm negotiation is not supported * If 1 - supports the mapping of all TIDs to the same link set both DL and UL. * If 2 - reserved * If 3 - supports the mapping of each TID to the same or different link set. * * Related: None * * Supported Feature: STA */ #define CFG_T2LM_NEGOTIATION_SUPPORT CFG_INI_UINT( \ "t2lm_negotiation_supported", \ T2LM_NEGOTIATION_DISABLED, \ T2LM_NEGOTIATION_DISJOINT_MAPPING, \ T2LM_NEGOTIATION_ALL_TIDS_TO_SUBSET_OF_LINKS, \ CFG_VALUE_OR_DEFAULT, \ "T2LM negotiation supported value") #define CFG_T2LM_NEGOTIATION_SUPPORTED CFG(CFG_T2LM_NEGOTIATION_SUPPORT) #else #define CFG_T2LM_NEGOTIATION_SUPPORTED #endif #define CFG_GENERIC_ALL \ CFG(CFG_ENABLE_DEBUG_PACKET_LOG) \ CFG(CFG_PMF_SA_QUERY_MAX_RETRIES) \ CFG(CFG_PMF_SA_QUERY_RETRY_INTERVAL) \ CFG_OEM_EHT_MLO_CRYPTO_BITMAP_SUPPORTED \ CFG(CFG_ENABLE_RTT_MAC_RANDOMIZATION) \ CFG(CFG_RTT3_ENABLE) \ CFG(CFG_11H_SUPPORT_ENABLED) \ CFG(CFG_11D_SUPPORT_ENABLED) \ CFG(CFG_BAND_CAPABILITY) \ CFG(CFG_PREVENT_LINK_DOWN) \ CFG(CFG_SELECT_5GHZ_MARGIN) \ CFG(CFG_ENABLE_MEM_DEEP_SLEEP) \ CFG(CFG_ENABLE_CCK_TX_FIR_OVERRIDE) \ CFG(CFG_ENABLE_CRASH_INJECT) \ CFG(CFG_ENABLE_LPASS_SUPPORT) \ CFG(CFG_ENABLE_SELF_RECOVERY) \ CFG(CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP) \ CFG(CFG_DISABLE_4WAY_HS_OFFLOAD) \ CFG(CFG_SAP_DOT11MC) \ CFG(CFG_ENABLE_FATAL_EVENT_TRIGGER) \ CFG(CFG_SUB_20_CHANNEL_WIDTH) \ CFG(CFG_OPTIMIZE_CA_EVENT) \ CFG(CFG_CRASH_FW_TIMEOUT) \ CFG(CFG_DROPPED_PKT_DISCONNECT_THRESHOLD) \ CFG(CFG_ITO_REPEAT_COUNT) \ CFG(CFG_ENABLE_BEACON_RECEPTION_STATS) \ CFG(CFG_MGMT_RETRY_MAX) \ CFG(CFG_ENABLE_HE_MCS0_MGMT_6GHZ) \ CFG(CFG_BMISS_SKIP_FULL_SCAN) \ CFG(CFG_ENABLE_RING_BUFFER) \ CFG(CFG_DFS_CHAN_AGEOUT_TIME) \ CFG(CFG_SAE_CONNECION_RETRIES) \ CFG(CFG_WLS_6GHZ_CAPABLE) \ CFG(CFG_MONITOR_MODE_CONCURRENCY) \ CFG(CFG_RF_TEST_MODE_SUPP_ENABLED) \ CFG_WDS_MODE_ALL \ CFG(CFG_TX_RETRY_MULTIPLIER) \ CFG(CFG_MGMT_FRAME_HW_TX_RETRY_COUNT) \ CFG_6GHZ_STD_CONN_POLICY \ CFG_EMLSR_MODE_ENABLED \ CFG_SR_ENABLE_MODES_ALL \ CFG_T2LM_NEGOTIATION_SUPPORTED\ CFG_DIS_VLP_STA_CONN_TO_SP_AP #endif /* __CFG_MLME_GENERIC_H */