qcacmn: Set Mcast control parameter for isolation mode

Set Mcast control parameter for isolation mode.

Change-Id: Id582e89d897af609c8584daca774d36f7d889d8c
このコミットが含まれているのは:
Rathees kumar Chinannan
2022-01-18 11:55:55 +05:30
committed by Madan Koyyalamudi
コミット b0f35c7a6c
4個のファイルの変更16行の追加2行の削除

ファイルの表示

@@ -1178,6 +1178,7 @@ enum cdp_peer_param_type {
* @CDP_SET_ATF_STATS_ENABLE: set ATF stats flag
* @CDP_CONFIG_SPECIAL_VAP: Configure Special vap
* @CDP_RESET_SCAN_SPCL_VAP_STATS_ENABLE: Enable scan spcl vap stats reset
* @CDP_ISOLATION: set isolation flag
*/
enum cdp_pdev_param_type {
CDP_CONFIG_DEBUG_SNIFFER,
@@ -1211,6 +1212,7 @@ enum cdp_pdev_param_type {
CDP_CONFIG_SPECIAL_VAP,
CDP_RESET_SCAN_SPCL_VAP_STATS_ENABLE,
CDP_CONFIG_ENHANCED_STATS_ENABLE,
CDP_ISOLATION,
};
/*
@@ -1275,6 +1277,7 @@ enum cdp_pdev_param_type {
* @cdp_pdev_param_monitor_chan: monitor channel
* @cdp_pdev_param_atf_stats_enable: ATF stats enable
* @cdp_pdev_param_config_special_vap: Configure Special vap
* @cdp_pdev_param_isolation : set isolation mode
*
* @cdp_psoc_param_en_rate_stats: set rate stats enable/disable
* @cdp_psoc_param_en_nss_cfg: set nss cfg
@@ -1350,6 +1353,7 @@ typedef union cdp_config_param_t {
bool cdp_pdev_param_config_special_vap;
bool cdp_pdev_param_reset_scan_spcl_vap_stats_enable;
bool cdp_pdev_param_enhanced_stats_enable;
bool cdp_pdev_param_isolation;
/* psoc params */
bool cdp_psoc_param_en_rate_stats;

ファイルの表示

@@ -565,6 +565,7 @@ static QDF_STATUS dp_vdev_attach_be(struct dp_soc *soc, struct dp_vdev *vdev)
{
struct dp_soc_be *be_soc = dp_get_be_soc_from_dp_soc(soc);
struct dp_vdev_be *be_vdev = dp_get_be_vdev_from_dp_vdev(vdev);
struct dp_pdev *pdev = vdev->pdev;
be_vdev->vdev_id_check_en = DP_TX_VDEV_ID_CHECK_ENABLE;
@@ -582,8 +583,12 @@ static QDF_STATUS dp_vdev_attach_be(struct dp_soc *soc, struct dp_vdev *vdev)
vdev->vdev_id,
DP_AST_AGING_TIMER_DEFAULT_MS);
hal_tx_vdev_mcast_ctrl_set(soc->hal_soc, vdev->vdev_id,
HAL_TX_MCAST_CTRL_MEC_NOTIFY);
if (pdev->isolation)
hal_tx_vdev_mcast_ctrl_set(soc->hal_soc, vdev->vdev_id,
HAL_TX_MCAST_CTRL_FW_EXCEPTION);
else
hal_tx_vdev_mcast_ctrl_set(soc->hal_soc, vdev->vdev_id,
HAL_TX_MCAST_CTRL_MEC_NOTIFY);
}
dp_mlo_init_ptnr_list(vdev);

ファイルの表示

@@ -9407,6 +9407,9 @@ static QDF_STATUS dp_set_pdev_param(struct cdp_soc_t *cdp_soc, uint8_t pdev_id,
case CDP_CONFIG_ENHANCED_STATS_ENABLE:
pdev->enhanced_stats_en = val.cdp_pdev_param_enhanced_stats_enable;
break;
case CDP_ISOLATION:
pdev->isolation = val.cdp_pdev_param_isolation;
break;
default:
return QDF_STATUS_E_INVAL;
}

ファイルの表示

@@ -2833,6 +2833,8 @@ struct dp_pdev {
#ifdef WLAN_FEATURE_11BE_MLO
struct dp_mlo_sync_timestamp timestamp;
#endif
/* Is isolation mode enabled */
bool isolation;
};
struct dp_peer;