qcacmn: Add get channel width from phy mode API

Add get channel width from phy mode API which will be used by
ndp schedule update event.

Change-Id: I13d00c0b818eb0da434c8a5372b2ab7b6693f22a
CRs-Fixed: 2216801
This commit is contained in:
Naveen Rawat
2018-02-02 15:18:33 -08:00
committed by nshrivas
parent 4662d4e744
commit 2630545223

View File

@@ -28,6 +28,38 @@
#include "wmi_unified_param.h"
#include "qdf_module.h"
static const wmi_host_channel_width mode_to_width[WMI_HOST_MODE_MAX] = {
[WMI_HOST_MODE_11A] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11G] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11B] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11GONLY] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11NA_HT20] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11NG_HT20] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11AC_VHT20] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11AC_VHT20_2G] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11NA_HT40] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11NG_HT40] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11AC_VHT40] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11AC_VHT40_2G] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11AC_VHT80] = WMI_HOST_CHAN_WIDTH_80,
[WMI_HOST_MODE_11AC_VHT80_2G] = WMI_HOST_CHAN_WIDTH_80,
#if CONFIG_160MHZ_SUPPORT
[WMI_HOST_MODE_11AC_VHT80_80] = WMI_HOST_CHAN_WIDTH_80P80,
[WMI_HOST_MODE_11AC_VHT160] = WMI_HOST_CHAN_WIDTH_160,
#endif
#if SUPPORT_11AX
[WMI_HOST_MODE_11AX_HE20] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11AX_HE40] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11AX_HE80] = WMI_HOST_CHAN_WIDTH_80,
[WMI_HOST_MODE_11AX_HE80_80] = WMI_HOST_CHAN_WIDTH_80P80,
[WMI_HOST_MODE_11AX_HE160] = WMI_HOST_CHAN_WIDTH_160,
[WMI_HOST_MODE_11AX_HE20_2G] = WMI_HOST_CHAN_WIDTH_20,
[WMI_HOST_MODE_11AX_HE40_2G] = WMI_HOST_CHAN_WIDTH_40,
[WMI_HOST_MODE_11AX_HE80_2G] = WMI_HOST_CHAN_WIDTH_80,
#endif
};
/**
* wmi_unified_vdev_create_send() - send VDEV create command to fw
* @wmi_handle: wmi handle
@@ -7436,3 +7468,17 @@ QDF_STATUS wmi_unified_extract_obss_color_collision_info(void *wmi_hdl,
return QDF_STATUS_E_FAILURE;
}
wmi_host_channel_width wmi_get_ch_width_from_phy_mode(void *wmi_hdl,
WMI_HOST_WLAN_PHY_MODE phymode)
{
/*
* this API does translation between host only strcutres, hence
* does not need separate TLV, non-TLV definitions
*/
if (phymode >= WMI_HOST_MODE_11A && phymode < WMI_HOST_MODE_MAX)
return mode_to_width[phymode];
else
return WMI_HOST_CHAN_WIDTH_20;
}