/* * Copyright (c) 2012-2020 The Linux Foundation. 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 #ifdef WLAN_FEATURE_11W #define CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE CFG_INI_UINT #define CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE CFG_INI_UINT #else #define CFG_PMF_SA_QUERY_MAX_RETRIES_TYPE CFG_UINT #define CFG_PMF_SA_QUERY_RETRY_INTERVAL_TYPE CFG_UINT #endif /*WLAN_FEATURE_11W*/ /* * 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") /* * * enable_rtt_mac_randomization - Enable/Disable rtt mac randomization * @Min: 0 * @Max: 1 * @Default: 0 * * Usage: External * * */ #define CFG_ENABLE_RTT_MAC_RANDOMIZATION CFG_INI_BOOL( \ "enable_rtt_mac_randomization", \ 0, \ "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") /* * * BandCapability - Preferred band (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) * @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_NAPIER_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_NAPIER_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 trigerred 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: 0 (disabled) * * Related: None * * Supported Feature: General * * Usage: External * * */ #ifdef WLAN_FEATURE_LPSS #define CFG_ENABLE_LPASS_SUPPORT CFG_INI_BOOL( \ "gEnableLpassSupport", \ 0, \ "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: 0x0F * * This ini is used to enable/disable the connection related logs * 0x1 - Enable mgmt pkt logs (excpet probe req/rsp, beacons). * 0x2 - Enable EAPOL pkt logs. * 0x4 - Enable DHCP pkt logs. * 0x8 - Enable mgmt action frames logs. * 0x0 - Disable all the above connection related logs. * The default value of 0x0F will enable all the above logs * * Related: None * * Supported Feature: STA * * Usage: External * * */ #define CFG_ENABLE_DEBUG_PACKET_LOG CFG_INI_UINT( \ "gEnableDebugLog", \ 0, 0xFF, 0x0F, \ 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") /* * * gRemoveTimeStampSyncCmd - Enable/Disable to remove time stamp sync cmd * @Min: 0 * @Max: 1 * @Default: 1 * * This ini is used to enable/disable the removal of time stamp sync cmd * * Usage: External * * */ #define CFG_REMOVE_TIME_STAMP_SYNC_CMD CFG_INI_BOOL( \ "gRemoveTimeStampSyncCmd", \ 1, \ "Enable to remove time stamp sync cmd") /* * * disable_4way_hs_offload - Enable/Disable 4 way handshake offload to firmware * @Min: 0 * @Max: 1 * @Default: 0 * * 0 4-way HS to be handled in firmware * 1 4-way HS to be handled in supplicant * * Related: None * * Supported Feature: STA Roaming * * Usage: External * * */ #define CFG_DISABLE_4WAY_HS_OFFLOAD CFG_INI_BOOL("disable_4way_hs_offload", \ 0, \ "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") /* * * 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: 0x52 * @Default: 0x49 * * 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 and * connection retries are capped to 2 and roam Auth retry is capped to 1. * Default is 0x49 i.e. 1 retry each. * * 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, 0x52, 0x49, CFG_VALUE_OR_DEFAULT, \ "Bit mask to retry Auth and full connection on assoc timeout to same AP for SAE connection") #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(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_REMOVE_TIME_STAMP_SYNC_CMD) \ CFG(CFG_MGMT_RETRY_MAX) \ CFG(CFG_BMISS_SKIP_FULL_SCAN) \ CFG(CFG_ENABLE_RING_BUFFER) \ CFG(CFG_DFS_CHAN_AGEOUT_TIME) \ CFG(CFG_SAE_CONNECION_RETRIES) #endif /* __CFG_MLME_GENERIC_H */