qcacld-3.0: Enable/Disable SRD support for vdev
Currently the driver enables the SRD channels support for both P2P_GO and SAP if the SRD master mode is enabled. Have individual ini values to enable/disable the SRD channel for each op-mode as required. Change-Id: If6e66996ed19dacbde7f71a6702f378a7e9a273c CRs-Fixed: 2748446
This commit is contained in:

کامیت شده توسط
snandini

والد
b79fd0c6ec
کامیت
f955b44a6d
@@ -73,14 +73,20 @@
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* etsi13_srd_chan_in_master_mode - Enable/disable ETSI SRD channels in
|
||||
* etsi_srd_chan_in_master_mode - Enable/disable ETSI SRD channels in
|
||||
* master mode PCL and ACS functionality
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
* @Max: 0xFF
|
||||
* @Default: 6
|
||||
*
|
||||
* etsi13_srd_chan_in_master_mode is to enable/disable ETSI SRD channels in
|
||||
* etsi_srd_chan_in_master_mode is to enable/disable ETSI SRD channels in
|
||||
* master mode PCL and ACS functionality
|
||||
* Bit map for enabling the SRD mode in various modes are as follows:-
|
||||
* BIT 0:- Enable/Disable SRD channels for SAP.
|
||||
* BIT 1:- Enable/Disable SRD channels for P2P-GO.
|
||||
* BIT 2:- Enable/Disable SRD channels for NAN.
|
||||
* Rest of the bits are currently reserved for future SRD channel support for
|
||||
* other vdevs.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
@@ -90,9 +96,12 @@
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE CFG_INI_BOOL( \
|
||||
#define CFG_ETSI_SRD_CHAN_IN_MASTER_MODE CFG_INI_UINT( \
|
||||
"etsi13_srd_chan_in_master_mode", \
|
||||
0, \
|
||||
0xff, \
|
||||
6, \
|
||||
CFG_VALUE_OR_DEFAULT, \
|
||||
"enable/disable ETSI SRD channels in master mode")
|
||||
|
||||
/*
|
||||
@@ -323,7 +332,7 @@
|
||||
CFG(CFG_SELF_GEN_FRM_PWR) \
|
||||
CFG(CFG_ENABLE_PENDING_CHAN_LIST_REQ) \
|
||||
CFG(CFG_ENABLE_11D_IN_WORLD_MODE) \
|
||||
CFG(CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE) \
|
||||
CFG(CFG_ETSI_SRD_CHAN_IN_MASTER_MODE) \
|
||||
CFG(CFG_FCC_5DOT9_GHZ_CHAN_IN_MASTER_MODE) \
|
||||
CFG(CFG_RESTART_BEACONING_ON_CH_AVOID) \
|
||||
CFG(CFG_INDOOR_CHANNEL_SUPPORT) \
|
||||
|
@@ -1941,6 +1941,19 @@ QDF_STATUS wlan_mlme_get_vht_tx_mcs_2x2(struct wlan_objmgr_psoc *psoc,
|
||||
QDF_STATUS
|
||||
wlan_mlme_get_vht20_mcs9(struct wlan_objmgr_psoc *psoc, bool *value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_get_srd_master_mode_for_vdev - Get SRD master mode for vdev
|
||||
* @psoc: pointer to psoc object
|
||||
* @vdev_opmode: vdev operating mode
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS
|
||||
wlan_mlme_get_srd_master_mode_for_vdev(struct wlan_objmgr_psoc *psoc,
|
||||
enum QDF_OPMODE vdev_opmode,
|
||||
bool *value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_get_force_sap_enabled() - Get the value of force SAP enabled
|
||||
* @psoc: psoc context
|
||||
|
@@ -2243,11 +2243,23 @@ struct wlan_mlme_mwc {
|
||||
};
|
||||
#endif
|
||||
|
||||
/**
|
||||
* enum mlme_reg_srd_master_modes - Bitmap of SRD master modes supported
|
||||
* @MLME_SRD_MASTER_MODE_SAP: SRD master mode for SAP
|
||||
* @MLME_SRD_MASTER_MODE_P2P_GO: SRD master mode for P2P-GO
|
||||
* @MLME_SRD_MASTER_MODE_NAN: SRD master mode for NAN
|
||||
*/
|
||||
enum mlme_reg_srd_master_modes {
|
||||
MLME_SRD_MASTER_MODE_SAP = 1,
|
||||
MLME_SRD_MASTER_MODE_P2P_GO = 2,
|
||||
MLME_SRD_MASTER_MODE_NAN = 4,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct wlan_mlme_reg - REG related configs
|
||||
* @self_gen_frm_pwr: self-generated frame power in tx chain mask
|
||||
* for CCK rates
|
||||
* @etsi13_srd_chan_in_master_mode: etsi13 srd chan in master mode
|
||||
* @etsi_srd_chan_in_master_mode: etsi srd chan in master mode
|
||||
* @fcc_5dot9_ghz_chan_in_master_mode: fcc 5.9 GHz chan in master mode
|
||||
* @restart_beaconing_on_ch_avoid: restart beaconing on ch avoid
|
||||
* @indoor_channel_support: indoor channel support
|
||||
@@ -2265,7 +2277,7 @@ struct wlan_mlme_mwc {
|
||||
*/
|
||||
struct wlan_mlme_reg {
|
||||
uint32_t self_gen_frm_pwr;
|
||||
bool etsi13_srd_chan_in_master_mode;
|
||||
uint8_t etsi_srd_chan_in_master_mode;
|
||||
bool fcc_5dot9_ghz_chan_in_master_mode;
|
||||
enum restart_beaconing_on_ch_avoid_rule
|
||||
restart_beaconing_on_ch_avoid;
|
||||
|
@@ -3777,7 +3777,7 @@ ucfg_mlme_get_mws_coex_scc_channel_avoid_delay(struct wlan_objmgr_psoc *psoc,
|
||||
#endif
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_etsi13_srd_chan_in_master_mode - get etsi13 srd chan
|
||||
* ucfg_mlme_get_etsi_srd_chan_in_master_mode - get etsi srd chan
|
||||
* in master mode
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
@@ -3785,8 +3785,8 @@ ucfg_mlme_get_mws_coex_scc_channel_avoid_delay(struct wlan_objmgr_psoc *psoc,
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS
|
||||
ucfg_mlme_get_etsi13_srd_chan_in_master_mode(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value);
|
||||
ucfg_mlme_get_etsi_srd_chan_in_master_mode(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t *value);
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_5dot9_ghz_chan_in_master_mode - get fcc 5.9 GHz chan
|
||||
@@ -3800,6 +3800,19 @@ QDF_STATUS
|
||||
ucfg_mlme_get_5dot9_ghz_chan_in_master_mode(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value);
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_srd_master_mode_for_vdev() - Get SRD master mode for vdev
|
||||
* @psoc: pointer to psoc object
|
||||
* @vdev_opmode: vdev opmode
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS
|
||||
ucfg_mlme_get_srd_master_mode_for_vdev(struct wlan_objmgr_psoc *psoc,
|
||||
enum QDF_OPMODE vdev_opmode,
|
||||
bool *value);
|
||||
|
||||
#ifdef SAP_AVOID_ACS_FREQ_LIST
|
||||
/**
|
||||
* ucfg_mlme_get_acs_avoid_freq_list - get acs avoid frequency list
|
||||
|
مرجع در شماره جدید
Block a user