qcacmn: Add new API to convert host to fw phymode
Add new util API to convert host phymode into fw phymode. Change-Id: I4edf91f3c4140cf004b2b900cb6ca4290a90b241 CRs-Fixed: 3557258
Šī revīzija ir iekļauta:

revīziju iesūtīja
Rahul Choudhary

vecāks
3cee2d29bb
revīzija
d5bf598373
@@ -3940,4 +3940,13 @@ static inline void wmi_coap_attach_tlv(wmi_unified_t wmi_handle)
|
||||
* Return: host channel width, enum phy_ch_width
|
||||
*/
|
||||
enum phy_ch_width wmi_map_ch_width(A_UINT32 wmi_width);
|
||||
|
||||
/**
|
||||
* wmi_host_to_fw_phymode() - convert host to fw phymode
|
||||
* @host_phymode: phymode to convert
|
||||
*
|
||||
* Return: one of the values defined in enum WMI_HOST_WLAN_PHY_MODE;
|
||||
* or WMI_HOST_MODE_UNKNOWN if the conversion fails
|
||||
*/
|
||||
WMI_HOST_WLAN_PHY_MODE wmi_host_to_fw_phymode(enum wlan_phymode host_phymode);
|
||||
#endif
|
||||
|
@@ -8333,6 +8333,108 @@ enum phy_ch_width wmi_map_ch_width(A_UINT32 wmi_width)
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_11BE
|
||||
/**
|
||||
* wmi_host_to_fw_phymode_11be() - convert host to fw phymode for 11be phymode
|
||||
* @host_phymode: phymode to convert
|
||||
*
|
||||
* Return: one of the 11be values defined in enum WMI_HOST_WLAN_PHY_MODE;
|
||||
* or WMI_HOST_MODE_UNKNOWN if the input is not an 11be phymode
|
||||
*/
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wmi_host_to_fw_phymode_11be(enum wlan_phymode host_phymode)
|
||||
{
|
||||
switch (host_phymode) {
|
||||
case WLAN_PHYMODE_11BEA_EHT20:
|
||||
return WMI_HOST_MODE_11BE_EHT20;
|
||||
case WLAN_PHYMODE_11BEA_EHT40:
|
||||
return WMI_HOST_MODE_11BE_EHT40;
|
||||
case WLAN_PHYMODE_11BEA_EHT80:
|
||||
return WMI_HOST_MODE_11BE_EHT80;
|
||||
case WLAN_PHYMODE_11BEA_EHT160:
|
||||
return WMI_HOST_MODE_11BE_EHT160;
|
||||
case WLAN_PHYMODE_11BEA_EHT320:
|
||||
return WMI_HOST_MODE_11BE_EHT320;
|
||||
case WLAN_PHYMODE_11BEG_EHT20:
|
||||
return WMI_HOST_MODE_11BE_EHT20_2G;
|
||||
case WLAN_PHYMODE_11BEG_EHT40:
|
||||
case WLAN_PHYMODE_11BEG_EHT40PLUS:
|
||||
case WLAN_PHYMODE_11BEG_EHT40MINUS:
|
||||
return WMI_HOST_MODE_11BE_EHT40_2G;
|
||||
default:
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
}
|
||||
#else
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wmi_host_to_fw_phymode_11be(enum wlan_phymode host_phymode)
|
||||
{
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
#endif
|
||||
|
||||
WMI_HOST_WLAN_PHY_MODE wmi_host_to_fw_phymode(enum wlan_phymode host_phymode)
|
||||
{
|
||||
switch (host_phymode) {
|
||||
case WLAN_PHYMODE_11A:
|
||||
return WMI_HOST_MODE_11A;
|
||||
case WLAN_PHYMODE_11G:
|
||||
return WMI_HOST_MODE_11G;
|
||||
case WLAN_PHYMODE_11B:
|
||||
return WMI_HOST_MODE_11B;
|
||||
case WLAN_PHYMODE_11G_ONLY:
|
||||
return WMI_HOST_MODE_11GONLY;
|
||||
case WLAN_PHYMODE_11NA_HT20:
|
||||
return WMI_HOST_MODE_11NA_HT20;
|
||||
case WLAN_PHYMODE_11NG_HT20:
|
||||
return WMI_HOST_MODE_11NG_HT20;
|
||||
case WLAN_PHYMODE_11NA_HT40:
|
||||
return WMI_HOST_MODE_11NA_HT40;
|
||||
case WLAN_PHYMODE_11NG_HT40:
|
||||
case WLAN_PHYMODE_11NG_HT40PLUS:
|
||||
case WLAN_PHYMODE_11NG_HT40MINUS:
|
||||
return WMI_HOST_MODE_11NG_HT40;
|
||||
case WLAN_PHYMODE_11AC_VHT20:
|
||||
return WMI_HOST_MODE_11AC_VHT20;
|
||||
case WLAN_PHYMODE_11AC_VHT40:
|
||||
return WMI_HOST_MODE_11AC_VHT40;
|
||||
case WLAN_PHYMODE_11AC_VHT80:
|
||||
return WMI_HOST_MODE_11AC_VHT80;
|
||||
case WLAN_PHYMODE_11AC_VHT20_2G:
|
||||
return WMI_HOST_MODE_11AC_VHT20_2G;
|
||||
case WLAN_PHYMODE_11AC_VHT40PLUS_2G:
|
||||
case WLAN_PHYMODE_11AC_VHT40MINUS_2G:
|
||||
case WLAN_PHYMODE_11AC_VHT40_2G:
|
||||
return WMI_HOST_MODE_11AC_VHT40_2G;
|
||||
case WLAN_PHYMODE_11AC_VHT80_2G:
|
||||
return WMI_HOST_MODE_11AC_VHT80_2G;
|
||||
case WLAN_PHYMODE_11AC_VHT80_80:
|
||||
return WMI_HOST_MODE_11AC_VHT80_80;
|
||||
case WLAN_PHYMODE_11AC_VHT160:
|
||||
return WMI_HOST_MODE_11AC_VHT160;
|
||||
case WLAN_PHYMODE_11AXA_HE20:
|
||||
return WMI_HOST_MODE_11AX_HE20;
|
||||
case WLAN_PHYMODE_11AXA_HE40:
|
||||
return WMI_HOST_MODE_11AX_HE40;
|
||||
case WLAN_PHYMODE_11AXA_HE80:
|
||||
return WMI_HOST_MODE_11AX_HE80;
|
||||
case WLAN_PHYMODE_11AXA_HE80_80:
|
||||
return WMI_HOST_MODE_11AX_HE80_80;
|
||||
case WLAN_PHYMODE_11AXA_HE160:
|
||||
return WMI_HOST_MODE_11AX_HE160;
|
||||
case WLAN_PHYMODE_11AXG_HE20:
|
||||
return WMI_HOST_MODE_11AX_HE20_2G;
|
||||
case WLAN_PHYMODE_11AXG_HE40:
|
||||
case WLAN_PHYMODE_11AXG_HE40PLUS:
|
||||
case WLAN_PHYMODE_11AXG_HE40MINUS:
|
||||
return WMI_HOST_MODE_11AX_HE40_2G;
|
||||
case WLAN_PHYMODE_11AXG_HE80:
|
||||
return WMI_HOST_MODE_11AX_HE80_2G;
|
||||
default:
|
||||
return wmi_host_to_fw_phymode_11be(host_phymode);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* convert_host_to_target_ch_width()- map host channel width(enum phy_ch_width)
|
||||
* to wmi channel width
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user