qcacmn: Add WMI command to set Sub Channel Marking

Introduce a new wmi_send pdev param to enable/disable
"Subchannel Marking" in Firmware (only in  Full Offload)

Change-Id: I3cd4f4f13ebca72c4505b6195cc8dc4856d41671
CRs-Fixed: 2334258
This commit is contained in:
Vignesh Mohan
2018-11-19 14:54:34 +05:30
committed by nshrivas
vanhempi 4974032991
commit cca9e9baaa
5 muutettua tiedostoa jossa 51 lisäystä ja 1 poistoa

Näytä tiedosto

@@ -70,6 +70,7 @@ QDF_STATUS wmi_extract_wlan_radar_event_info(void *wmi_hdl,
uint32_t len);
#endif
#if defined(WLAN_DFS_FULL_OFFLOAD) && defined(QCA_DFS_NOL_OFFLOAD)
/**
* wmi_send_usenol_pdev_param() - function to send usenol pdev param.
* @wmi_hdl: wmi handle
@@ -78,9 +79,22 @@ QDF_STATUS wmi_extract_wlan_radar_event_info(void *wmi_hdl,
*
* Return: QDF_STATUS
*/
#if defined(WLAN_DFS_FULL_OFFLOAD) && defined(QCA_DFS_NOL_OFFLOAD)
QDF_STATUS wmi_send_usenol_pdev_param(void *wmi_hdl, bool usenol,
struct wlan_objmgr_pdev *pdev);
/**
* wmi_send_subchan_marking_pdev_param() - Function to send subchannel
* marking pdev param.
* @wmi_hdl: WMI handle.
* @subchanmark: Value of use subchannel marking.
* @pdev: Pointer to objmgr_pdev structure.
*
* Return: QDF_STATUS
*/
QDF_STATUS
wmi_send_subchan_marking_pdev_param(void *wmi_hdl,
bool subchanmark,
struct wlan_objmgr_pdev *pdev);
#else
static inline QDF_STATUS
wmi_send_usenol_pdev_param(void *wmi_hdl, bool usenol,
@@ -88,5 +102,13 @@ wmi_send_usenol_pdev_param(void *wmi_hdl, bool usenol,
{
return QDF_STATUS_SUCCESS;
}
static inline QDF_STATUS
wmi_send_subchan_marking_pdev_param(void *wmi_hdl,
bool subchanmark,
struct wlan_objmgr_pdev *pdev)
{
return QDF_STATUS_SUCCESS;
}
#endif
#endif /* _WMI_UNIFIED_DFS_API_H_ */

Näytä tiedosto

@@ -4934,6 +4934,7 @@ typedef enum {
wmi_pdev_param_enable_peer_retry_stats,
wmi_pdev_param_ul_trig_int,
wmi_pdev_param_max,
wmi_pdev_param_sub_channel_marking,
} wmi_conv_pdev_params_id;

Näytä tiedosto

@@ -93,4 +93,25 @@ QDF_STATUS wmi_send_usenol_pdev_param(void *wmi_hdl, bool usenol,
return wmi_unified_pdev_param_send(wmi_handle, &pparam, pdev_idx);
}
QDF_STATUS
wmi_send_subchan_marking_pdev_param(void *wmi_hdl,
bool subchanmark,
struct wlan_objmgr_pdev *pdev)
{
struct pdev_params pparam;
int pdev_idx;
struct wmi_unified *wmi_handle = (struct wmi_unified *)wmi_hdl;
pdev_idx = lmac_get_pdev_idx(pdev);
if (pdev_idx < 0)
return QDF_STATUS_E_FAILURE;
qdf_mem_set(&pparam, sizeof(pparam), 0);
pparam.param_id = wmi_pdev_param_sub_channel_marking;
pparam.param_value = subchanmark;
return wmi_unified_pdev_param_send(wmi_handle, &pparam, pdev_idx);
}
#endif

Näytä tiedosto

@@ -12118,6 +12118,8 @@ static void populate_pdev_param_tlv(uint32_t *pdev_param)
/* Trigger interval for all trigger types. */
pdev_param[wmi_pdev_param_ul_trig_int] =
WMI_PDEV_PARAM_SET_UL_BSR_TRIG_INTERVAL;
pdev_param[wmi_pdev_param_sub_channel_marking] =
WMI_PDEV_PARAM_SUB_CHANNEL_MARKING;
}
/**