
Add New inis for nss, chains, and disable_diversity values. Change-Id: I837d64f58d3c2386b43ee3cdcc095f7833954c12 CRs-Fixed: 2347385
555 wiersze
13 KiB
C
555 wiersze
13 KiB
C
/*
|
|
* Copyright (c) 2012-2018 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_NSS_CHAINS
|
|
#define __CFG_MLME_NSS_CHAINS
|
|
|
|
/*
|
|
* <ini>
|
|
* num_tx_chains_2g - Config Param to change number of tx
|
|
* chains per vdev for 2.4ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's num tx chains for 2.4ghz connection to 1 each
|
|
* 0x02492492 - change all vdev's num tx chains for 2.4ghz connection to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_TX_CHAINS_2G CFG_INI_UINT( \
|
|
"num_tx_chains_2g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num tx chains 2g")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_tx_chains_5g - Config Param to change number of tx
|
|
* chains per vdev for 5 ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249- change all vdev's tx num chains for 5ghz connection to 1 each
|
|
* 0x02492492 - change all vdev's tx num chains for 5ghz connection to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_TX_CHAINS_5G CFG_INI_UINT( \
|
|
"num_tx_chains_5g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num tx chains 5g")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_rx_chains_2g - Config Param to change number of rx
|
|
* chains per vdev for 2.4 ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's rx num chains for 2.4ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's rx num chains for 2.4ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_RX_CHAINS_2G CFG_INI_UINT( \
|
|
"num_rx_chains_2g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num rx chains 2g")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_rx_chains_5g - Config Param to change number of rx
|
|
* chains per vdev for 5 ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's rx num chains for 5ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's rx num chains for 5ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_RX_CHAINS_5G CFG_INI_UINT( \
|
|
"num_rx_chains_5g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num rx chains 5g")
|
|
|
|
/*
|
|
* <ini>
|
|
* tx_nss_2g - Config Param to change tx nss
|
|
* per vdev for 2.4ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of tx spatial streams for eg:-
|
|
* 0x01249249 - change all vdev's tx nss for 2.4ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's tx nss for 2.4ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_TX_NSS_2G CFG_INI_UINT( \
|
|
"tx_nss_2g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"tx nss 2.4ghz")
|
|
|
|
/*
|
|
* <ini>
|
|
* tx_nss_5g - Config Param to change tx nss
|
|
* per vdev for 5ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of tx spatial streams for eg:-
|
|
* 0x01249249 - change all vdev's tx nss for 5ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's tx nss for 5ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_TX_NSS_5G CFG_INI_UINT( \
|
|
"tx_nss_5g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"tx nss 5ghz")
|
|
|
|
/*
|
|
* <ini>
|
|
* rx_nss_2g - Config Param to change rx nss
|
|
* per vdev for 2.4ghz frequency connections
|
|
*
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of rx spatial streams for eg:-
|
|
* 0x01249249 - change all vdev's rx nss for 2.4ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's rx nss for 2.4ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_RX_NSS_2G CFG_INI_UINT( \
|
|
"rx_nss_2g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"rx nss 2.4ghz")
|
|
|
|
/*
|
|
* <ini>
|
|
* rx_nss_5g - Config Param to change rx nss
|
|
* per vdev for 5ghz frequency connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of rx spatial streams for eg:-
|
|
* 0x01249249 - change all vdev's rx nss for 5ghz connections to 1 each
|
|
* 0x02492492 - change all vdev's rx nss for 5ghz connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_RX_NSS_5G CFG_INI_UINT( \
|
|
"rx_nss_5g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"rx nss 5ghz")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_tx_chains_11b - Config Param to change number of tx
|
|
* chains per vdev for 2.4ghz 11b mode connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's num chains for 11b connections to 1 each
|
|
* 0x02492492 - change all vdev's num chains for 11b connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_TX_CHAINS_11b CFG_INI_UINT( \
|
|
"num_tx_chains_11b", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num tx chains 11b")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_tx_chains_11g - Config Param to change number of tx
|
|
* chains per vdev for 2.4ghz 11g mode connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's num chains for 11g connections to 1 each
|
|
* 0x02492492 - change all vdev's num chains for 11g connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_TX_CHAINS_11g CFG_INI_UINT( \
|
|
"num_tx_chains_11g", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num tx chains 11g")
|
|
|
|
/*
|
|
* <ini>
|
|
* num_tx_chains_11a - Config Param to change number of tx
|
|
* chains per vdev for 5ghz 11a mode connections
|
|
* @Min: 0x01249249
|
|
* @Max: 0x02492492
|
|
* @Default: 0x02492492
|
|
*
|
|
* This ini is used to change the num of chains for eg:-
|
|
* 0x01249249 - change all vdev's num chains for 11a connections to 1 each
|
|
* 0x02492492 - change all vdev's num chains for 11a connections to 2 each
|
|
* Bits VDEV Type
|
|
* BIT[0:2] STA
|
|
* BIT[3:5] SAP
|
|
* BIT[6:8] P2P GO
|
|
* BIT[9:11] P2P Client
|
|
* BIT[12:14] TDLS
|
|
* BIT[15:17] IBSS
|
|
* BIT[18:20] P2P device
|
|
* BIT[21:23] OCB
|
|
* BIT[24:26] NAN
|
|
* BIT[27:31] Reserved
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_NUM_TX_CHAINS_11a CFG_INI_UINT( \
|
|
"num_tx_chains_11a", \
|
|
0x01249249, \
|
|
0x02492492, \
|
|
0x02492492, \
|
|
CFG_VALUE_OR_DEFAULT, \
|
|
"num tx chains 11a")
|
|
|
|
/*
|
|
* <ini>
|
|
* disable_tx_mrc_2g - Config Param to disable 2 chains in 1x1 nss mode
|
|
* @Min: 0
|
|
* @Max: 1
|
|
* @Default: 0
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_DISABLE_TX_MRC_2G CFG_INI_BOOL( \
|
|
"disable_tx_mrc_2g", \
|
|
0, \
|
|
"disable diversity gain tx 2g")
|
|
|
|
/*
|
|
* <ini>
|
|
* disable_rx_mrc_2g - Config Param to disable 2 chains in 1x1 nss mode
|
|
* @Min: 0
|
|
* @Max: 1
|
|
* @Default: 0
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_DISABLE_RX_MRC_2G CFG_INI_BOOL( \
|
|
"disable_rx_mrc_2g", \
|
|
0, \
|
|
"disable diversity gain rx 2g")
|
|
|
|
/*
|
|
* <ini>
|
|
* disable_tx_mrc_5g - Config Param to disable 2 chains in 1x1 nss mode
|
|
* @Min: 0
|
|
* @Max: 1
|
|
* @Default: 0
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_DISABLE_TX_MRC_5G CFG_INI_BOOL( \
|
|
"disable_tx_mrc_5g", \
|
|
0, \
|
|
"disable diversity gain tx 5g")
|
|
|
|
/*
|
|
* <ini>
|
|
* disable_rx_mrc_5g - Config Param to disable 2 chains in 1x1 nss mode
|
|
* @Min: 0
|
|
* @Max: 1
|
|
* @Default: 0
|
|
*
|
|
* Related: STA/SAP/P2P/IBSS/NAN.
|
|
*
|
|
* Supported Feature: Dynamic chainmask
|
|
*
|
|
* Usage: External
|
|
*
|
|
* </ini>
|
|
*/
|
|
#define CFG_DISABLE_RX_MRC_5G CFG_INI_BOOL( \
|
|
"disable_rx_mrc_5g", \
|
|
0, \
|
|
"disable diversity gain rx 5g")
|
|
|
|
#define CFG_NSS_CHAINS_ALL \
|
|
CFG(CFG_NUM_TX_CHAINS_2G) \
|
|
CFG(CFG_NUM_TX_CHAINS_5G) \
|
|
CFG(CFG_NUM_RX_CHAINS_2G) \
|
|
CFG(CFG_NUM_RX_CHAINS_5G) \
|
|
CFG(CFG_TX_NSS_5G) \
|
|
CFG(CFG_TX_NSS_2G) \
|
|
CFG(CFG_RX_NSS_5G) \
|
|
CFG(CFG_RX_NSS_2G) \
|
|
CFG(CFG_NUM_TX_CHAINS_11b) \
|
|
CFG(CFG_NUM_TX_CHAINS_11g) \
|
|
CFG(CFG_NUM_TX_CHAINS_11a) \
|
|
CFG(CFG_DISABLE_TX_MRC_2G) \
|
|
CFG(CFG_DISABLE_RX_MRC_2G) \
|
|
CFG(CFG_DISABLE_TX_MRC_5G) \
|
|
CFG(CFG_DISABLE_RX_MRC_5G)
|
|
|
|
#endif /* __CFG_MLME_NSS_CHAINS */
|
|
|