diff --git a/target_if/spectral/target_if_spectral.c b/target_if/spectral/target_if_spectral.c index 6ae4748133..1e690c4227 100644 --- a/target_if/spectral/target_if_spectral.c +++ b/target_if/spectral/target_if_spectral.c @@ -4435,7 +4435,8 @@ target_if_is_aspectral_prohibited_by_adfs(struct wlan_objmgr_psoc *psoc, { bool *is_aspectral_prohibited = arg; struct wlan_objmgr_pdev *cur_pdev = object; - bool is_agile_dfs_enabled_cur_pdev = false; + bool is_agile_precac_enabled_cur_pdev = false; + bool is_agile_rcac_enabled_cur_pdev = false; QDF_STATUS status; qdf_assert_always(is_aspectral_prohibited); @@ -4447,15 +4448,27 @@ target_if_is_aspectral_prohibited_by_adfs(struct wlan_objmgr_psoc *psoc, status = ucfg_dfs_get_agile_precac_enable (cur_pdev, - &is_agile_dfs_enabled_cur_pdev); + &is_agile_precac_enabled_cur_pdev); if (QDF_IS_STATUS_ERROR(status)) { spectral_err("Get agile precac failed, prohibiting aSpectral"); *is_aspectral_prohibited = true; return; } - if (is_agile_dfs_enabled_cur_pdev) { - spectral_err("aDFS is in progress on one of the pdevs"); + status = ucfg_dfs_get_rcac_enable(cur_pdev, + &is_agile_rcac_enabled_cur_pdev); + + if (QDF_IS_STATUS_ERROR(status)) { + spectral_err("Get agile RCAC failed, prohibiting aSpectral"); + *is_aspectral_prohibited = true; + return; + } + + if (is_agile_precac_enabled_cur_pdev) { + spectral_err("aDFS preCAC is in progress on one of the pdevs"); + *is_aspectral_prohibited = true; + } else if (is_agile_rcac_enabled_cur_pdev) { + spectral_err("aDFS RCAC is in progress on one of the pdevs"); *is_aspectral_prohibited = true; } }