qcacmn: Find radar found frequency for 11BE Chipset

The "wmi_pdev_dfs_radar_detection_event" has an unused field "chan_freq".
It currently holds the value of primary 20MHz channel. With the
introduction of 11BE chipsets, this field is changed to hold the value of
the center frequency of the channel width on which the radar is found.

This new change is indicated by a wmi service
"wmi_is_radar_found_chan_freq_eq_center_freq".

For the Chipsets that support this service, the radar found frequency
can be calculated by mere addition of the fields "chan_freq" and
"freq_offset" field.

Change-Id: I8d2ce0023e2feb6e749ca8d7d5f547fafc0fdf98
Šī revīzija ir iekļauta:
Vignesh U
2021-09-13 16:56:46 +05:30
revīziju iesūtīja Madan Koyyalamudi
vecāks 47c8c541c2
revīzija 350da55314
5 mainīti faili ar 70 papildinājumiem un 0 dzēšanām

Parādīt failu

@@ -213,6 +213,42 @@ static bool target_if_dfs_offload(struct wlan_objmgr_psoc *psoc)
wmi_service_dfs_phyerr_offload);
}
#ifdef WLAN_FEATURE_11BE
/**
* target_if_dfs_is_radar_found_chan_freq_eq_center_freq: Check whether the
* service of 'radar_found_chan_freq' representing the center frequency of the
* radar segment is supported or not. If the service is not enabled, then
* chan_freq will indicate the channel's primary 20MHz center.
*/
static bool
target_if_dfs_is_radar_found_chan_freq_eq_center_freq(
struct wlan_objmgr_psoc *psoc)
{
wmi_unified_t wmi_handle;
wmi_handle = get_wmi_unified_hdl_from_psoc(psoc);
if (!wmi_handle) {
target_if_err("null wmi_handle");
return false;
}
/*
* Uncomment the following service as soon as it is ready.
*
* return wmi_service_enabled(wmi_handle,
* wmi_is_radar_found_chan_freq_eq_center_freq);
*/
return false;
}
#else
static bool
target_if_dfs_is_radar_found_chan_freq_eq_center_freq(
struct wlan_objmgr_psoc *psoc)
{
return false;
}
#endif
static QDF_STATUS target_if_dfs_get_target_type(struct wlan_objmgr_pdev *pdev,
uint32_t *target_type)
{
@@ -402,6 +438,8 @@ QDF_STATUS target_if_register_dfs_tx_ops(struct wlan_lmac_if_tx_ops *tx_ops)
dfs_tx_ops->dfs_send_avg_radar_params_to_fw =
&target_if_dfs_send_avg_params_to_fw;
dfs_tx_ops->dfs_is_tgt_offload = &target_if_dfs_offload;
dfs_tx_ops->dfs_is_tgt_radar_found_chan_freq_eq_center_freq =
&target_if_dfs_is_radar_found_chan_freq_eq_center_freq;
dfs_tx_ops->dfs_send_usenol_pdev_param =
&target_send_usenol_pdev_param;