qcacld-3.0: Fix enum wlan_phymode to include proper phymode value
Few phymode are missing from enum wlan_phymode and many are not valid phymode, e.g for 5ghz 40minus and 40plus are not valid. So add the missing enums and remove invalid enums from enum wlan_phymode. Change-Id: I56710c6a04ac365a54e2c4ba138e0e887fbdd960 CRs-Fixed: 2531859
This commit is contained in:
parent
3a7059c08e
commit
7b2fb960c3
@ -741,7 +741,7 @@ struct wma_txrx_node {
|
||||
uint8_t llbCoexist;
|
||||
uint8_t shortSlotTimeSupported;
|
||||
uint8_t dtimPeriod;
|
||||
WMI_HOST_WLAN_PHY_MODE chanmode;
|
||||
uint32_t chanmode;
|
||||
A_UINT32 mhz;
|
||||
enum phy_ch_width chan_width;
|
||||
bool vdev_active;
|
||||
|
@ -1063,30 +1063,34 @@ static void wma_mask_tx_ht_rate(tp_wma_handle wma, uint8_t *mcs_set)
|
||||
* Return: one of the 11ax values defined in enum wlan_phymode;
|
||||
* or WLAN_PHYMODE_AUTO if the input is not an 11ax phymode
|
||||
*/
|
||||
static enum wlan_phymode wma_fw_to_host_phymode_11ax(WLAN_PHY_MODE phymode)
|
||||
static enum wlan_phymode
|
||||
wma_fw_to_host_phymode_11ax(WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
switch (phymode) {
|
||||
default:
|
||||
return WLAN_PHYMODE_AUTO;
|
||||
case MODE_11AX_HE20:
|
||||
case WMI_HOST_MODE_11AX_HE20:
|
||||
return WLAN_PHYMODE_11AXA_HE20;
|
||||
case MODE_11AX_HE40:
|
||||
case WMI_HOST_MODE_11AX_HE40:
|
||||
return WLAN_PHYMODE_11AXA_HE40;
|
||||
case MODE_11AX_HE80:
|
||||
case WMI_HOST_MODE_11AX_HE80:
|
||||
return WLAN_PHYMODE_11AXA_HE80;
|
||||
case MODE_11AX_HE80_80:
|
||||
case WMI_HOST_MODE_11AX_HE80_80:
|
||||
return WLAN_PHYMODE_11AXA_HE80_80;
|
||||
case MODE_11AX_HE160:
|
||||
case WMI_HOST_MODE_11AX_HE160:
|
||||
return WLAN_PHYMODE_11AXA_HE160;
|
||||
case MODE_11AX_HE20_2G:
|
||||
case WMI_HOST_MODE_11AX_HE20_2G:
|
||||
return WLAN_PHYMODE_11AXG_HE20;
|
||||
case MODE_11AX_HE40_2G:
|
||||
case WMI_HOST_MODE_11AX_HE40_2G:
|
||||
return WLAN_PHYMODE_11AXG_HE40;
|
||||
case WMI_HOST_MODE_11AX_HE80_2G:
|
||||
return WLAN_PHYMODE_11AXG_HE80;
|
||||
}
|
||||
return WLAN_PHYMODE_AUTO;
|
||||
}
|
||||
#else
|
||||
static enum wlan_phymode wma_fw_to_host_phymode_11ax(WLAN_PHY_MODE phymode)
|
||||
static enum wlan_phymode
|
||||
wma_fw_to_host_phymode_11ax(WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
return WLAN_PHYMODE_AUTO;
|
||||
}
|
||||
@ -1101,23 +1105,26 @@ static enum wlan_phymode wma_fw_to_host_phymode_11ax(WLAN_PHY_MODE phymode)
|
||||
* Return: one of the 160 mhz values defined in enum wlan_phymode;
|
||||
* or WLAN_PHYMODE_AUTO if the input is not a 160 mhz phymode
|
||||
*/
|
||||
static enum wlan_phymode wma_fw_to_host_phymode_160(WLAN_PHY_MODE phymode)
|
||||
static enum wlan_phymode
|
||||
wma_fw_to_host_phymode_160(WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
switch (phymode) {
|
||||
default:
|
||||
return WLAN_PHYMODE_AUTO;
|
||||
case MODE_11AC_VHT80_80:
|
||||
case WMI_HOST_MODE_11AC_VHT80_80:
|
||||
return WLAN_PHYMODE_11AC_VHT80_80;
|
||||
case MODE_11AC_VHT160:
|
||||
case WMI_HOST_MODE_11AC_VHT160:
|
||||
return WLAN_PHYMODE_11AC_VHT160;
|
||||
}
|
||||
}
|
||||
#else
|
||||
static enum wlan_phymode wma_fw_to_host_phymode_160(WLAN_PHY_MODE phymode)
|
||||
static enum wlan_phymode
|
||||
wma_fw_to_host_phymode_160(WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
return WLAN_PHYMODE_AUTO;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* wma_fw_to_host_phymode() - convert fw to host phymode
|
||||
* @phymode: phymode to convert
|
||||
@ -1125,7 +1132,7 @@ static enum wlan_phymode wma_fw_to_host_phymode_160(WLAN_PHY_MODE phymode)
|
||||
* Return: one of the values defined in enum wlan_phymode;
|
||||
* or WLAN_PHYMODE_AUTO if the conversion fails
|
||||
*/
|
||||
static enum wlan_phymode wma_fw_to_host_phymode(WLAN_PHY_MODE phymode)
|
||||
static enum wlan_phymode wma_fw_to_host_phymode(WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
enum wlan_phymode host_phymode;
|
||||
switch (phymode) {
|
||||
@ -1134,34 +1141,34 @@ static enum wlan_phymode wma_fw_to_host_phymode(WLAN_PHY_MODE phymode)
|
||||
if (host_phymode != WLAN_PHYMODE_AUTO)
|
||||
return host_phymode;
|
||||
return wma_fw_to_host_phymode_11ax(phymode);
|
||||
case MODE_11A:
|
||||
case WMI_HOST_MODE_11A:
|
||||
return WLAN_PHYMODE_11A;
|
||||
case MODE_11G:
|
||||
case WMI_HOST_MODE_11G:
|
||||
return WLAN_PHYMODE_11G;
|
||||
case MODE_11B:
|
||||
case WMI_HOST_MODE_11B:
|
||||
return WLAN_PHYMODE_11B;
|
||||
case MODE_11GONLY:
|
||||
return WLAN_PHYMODE_11G;
|
||||
case MODE_11NA_HT20:
|
||||
case WMI_HOST_MODE_11GONLY:
|
||||
return WLAN_PHYMODE_11G_ONLY;
|
||||
case WMI_HOST_MODE_11NA_HT20:
|
||||
return WLAN_PHYMODE_11NA_HT20;
|
||||
case MODE_11NG_HT20:
|
||||
case WMI_HOST_MODE_11NG_HT20:
|
||||
return WLAN_PHYMODE_11NG_HT20;
|
||||
case MODE_11NA_HT40:
|
||||
case WMI_HOST_MODE_11NA_HT40:
|
||||
return WLAN_PHYMODE_11NA_HT40;
|
||||
case MODE_11NG_HT40:
|
||||
case WMI_HOST_MODE_11NG_HT40:
|
||||
return WLAN_PHYMODE_11NG_HT40;
|
||||
case MODE_11AC_VHT20:
|
||||
case WMI_HOST_MODE_11AC_VHT20:
|
||||
return WLAN_PHYMODE_11AC_VHT20;
|
||||
case MODE_11AC_VHT40:
|
||||
case WMI_HOST_MODE_11AC_VHT40:
|
||||
return WLAN_PHYMODE_11AC_VHT40;
|
||||
case MODE_11AC_VHT80:
|
||||
return WLAN_PHYMODE_11AC_VHT80;
|
||||
case MODE_11AC_VHT20_2G:
|
||||
return WLAN_PHYMODE_11AC_VHT20;
|
||||
case MODE_11AC_VHT40_2G:
|
||||
return WLAN_PHYMODE_11AC_VHT40;
|
||||
case MODE_11AC_VHT80_2G:
|
||||
case WMI_HOST_MODE_11AC_VHT80:
|
||||
return WLAN_PHYMODE_11AC_VHT80;
|
||||
case WMI_HOST_MODE_11AC_VHT20_2G:
|
||||
return WLAN_PHYMODE_11AC_VHT20_2G;
|
||||
case WMI_HOST_MODE_11AC_VHT40_2G:
|
||||
return WLAN_PHYMODE_11AC_VHT40_2G;
|
||||
case WMI_HOST_MODE_11AC_VHT80_2G:
|
||||
return WLAN_PHYMODE_11AC_VHT80_2G;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1170,24 +1177,26 @@ static enum wlan_phymode wma_fw_to_host_phymode(WLAN_PHY_MODE phymode)
|
||||
* wma_host_to_fw_phymode_160() - convert host to fw phymode for 160 mhz
|
||||
* @host_phymode: phymode to convert
|
||||
*
|
||||
* Return: one of the 160 mhz values defined in enum WLAN_PHY_MODE;
|
||||
* or MODE_UNKNOWN if the input is not a 160 mhz phymode
|
||||
* Return: one of the 160 mhz values defined in enum WMI_HOST_WLAN_PHY_MODE;
|
||||
* or WMI_HOST_MODE_UNKNOWN if the input is not a 160 mhz phymode
|
||||
*/
|
||||
static WLAN_PHY_MODE wma_host_to_fw_phymode_160(enum wlan_phymode host_phymode)
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wma_host_to_fw_phymode_160(enum wlan_phymode host_phymode)
|
||||
{
|
||||
switch (host_phymode) {
|
||||
case WLAN_PHYMODE_11AC_VHT80_80:
|
||||
return MODE_11AC_VHT80_80;
|
||||
return WMI_HOST_MODE_11AC_VHT80_80;
|
||||
case WLAN_PHYMODE_11AC_VHT160:
|
||||
return MODE_11AC_VHT160;
|
||||
return WMI_HOST_MODE_11AC_VHT160;
|
||||
default:
|
||||
return MODE_UNKNOWN;
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
}
|
||||
#else
|
||||
static WLAN_PHY_MODE wma_host_to_fw_phymode_160(enum wlan_phymode host_phymode)
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wma_host_to_fw_phymode_160(enum wlan_phymode host_phymode)
|
||||
{
|
||||
return MODE_UNKNOWN;
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1196,30 +1205,40 @@ static WLAN_PHY_MODE wma_host_to_fw_phymode_160(enum wlan_phymode host_phymode)
|
||||
* wma_host_to_fw_phymode_11ax() - convert host to fw phymode for 11ax phymode
|
||||
* @host_phymode: phymode to convert
|
||||
*
|
||||
* Return: one of the 11ax values defined in enum WLAN_PHY_MODE;
|
||||
* or MODE_UNKNOWN if the input is not an 11ax phymode
|
||||
* Return: one of the 11ax values defined in enum WMI_HOST_WLAN_PHY_MODE;
|
||||
* or WMI_HOST_MODE_UNKNOWN if the input is not an 11ax phymode
|
||||
*/
|
||||
static WLAN_PHY_MODE wma_host_to_fw_phymode_11ax(enum wlan_phymode host_phymode)
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wma_host_to_fw_phymode_11ax(enum wlan_phymode host_phymode)
|
||||
{
|
||||
switch (host_phymode) {
|
||||
case WLAN_PHYMODE_11AXA_HE20:
|
||||
return MODE_11AX_HE20;
|
||||
return WMI_HOST_MODE_11AX_HE20;
|
||||
case WLAN_PHYMODE_11AXA_HE40:
|
||||
return MODE_11AX_HE40;
|
||||
return WMI_HOST_MODE_11AX_HE40;
|
||||
case WLAN_PHYMODE_11AXA_HE80:
|
||||
return MODE_11AX_HE80;
|
||||
return WMI_HOST_MODE_11AX_HE80;
|
||||
case WLAN_PHYMODE_11AXA_HE80_80:
|
||||
return MODE_11AX_HE80_80;
|
||||
return WMI_HOST_MODE_11AX_HE80_80;
|
||||
case WLAN_PHYMODE_11AXA_HE160:
|
||||
return MODE_11AX_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 MODE_UNKNOWN;
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
}
|
||||
#else
|
||||
static WLAN_PHY_MODE wma_host_to_fw_phymode_11ax(enum wlan_phymode host_phymode)
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wma_host_to_fw_phymode_11ax(enum wlan_phymode host_phymode)
|
||||
{
|
||||
return MODE_UNKNOWN;
|
||||
return WMI_HOST_MODE_UNKNOWN;
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1227,37 +1246,50 @@ static WLAN_PHY_MODE wma_host_to_fw_phymode_11ax(enum wlan_phymode host_phymode)
|
||||
* wma_host_to_fw_phymode() - convert host to fw phymode
|
||||
* @host_phymode: phymode to convert
|
||||
*
|
||||
* Return: one of the values defined in enum WLAN_PHY_MODE;
|
||||
* or MODE_UNKNOWN if the conversion fails
|
||||
* Return: one of the values defined in enum WMI_HOST_WLAN_PHY_MODE;
|
||||
* or WMI_HOST_MODE_UNKNOWN if the conversion fails
|
||||
*/
|
||||
static WLAN_PHY_MODE wma_host_to_fw_phymode(enum wlan_phymode host_phymode)
|
||||
static WMI_HOST_WLAN_PHY_MODE
|
||||
wma_host_to_fw_phymode(enum wlan_phymode host_phymode)
|
||||
{
|
||||
WLAN_PHY_MODE fw_phymode;
|
||||
WMI_HOST_WLAN_PHY_MODE fw_phymode;
|
||||
|
||||
switch (host_phymode) {
|
||||
case WLAN_PHYMODE_11A:
|
||||
return MODE_11A;
|
||||
return WMI_HOST_MODE_11A;
|
||||
case WLAN_PHYMODE_11G:
|
||||
return MODE_11G;
|
||||
return WMI_HOST_MODE_11G;
|
||||
case WLAN_PHYMODE_11B:
|
||||
return MODE_11B;
|
||||
return WMI_HOST_MODE_11B;
|
||||
case WLAN_PHYMODE_11G_ONLY:
|
||||
return WMI_HOST_MODE_11GONLY;
|
||||
case WLAN_PHYMODE_11NA_HT20:
|
||||
return MODE_11NA_HT20;
|
||||
return WMI_HOST_MODE_11NA_HT20;
|
||||
case WLAN_PHYMODE_11NG_HT20:
|
||||
return MODE_11NG_HT20;
|
||||
return WMI_HOST_MODE_11NG_HT20;
|
||||
case WLAN_PHYMODE_11NA_HT40:
|
||||
return MODE_11NA_HT40;
|
||||
return WMI_HOST_MODE_11NA_HT40;
|
||||
case WLAN_PHYMODE_11NG_HT40:
|
||||
return MODE_11NG_HT40;
|
||||
case WLAN_PHYMODE_11NG_HT40PLUS:
|
||||
case WLAN_PHYMODE_11NG_HT40MINUS:
|
||||
return WMI_HOST_MODE_11NG_HT40;
|
||||
case WLAN_PHYMODE_11AC_VHT20:
|
||||
return MODE_11AC_VHT20;
|
||||
return WMI_HOST_MODE_11AC_VHT20;
|
||||
case WLAN_PHYMODE_11AC_VHT40:
|
||||
return MODE_11AC_VHT40;
|
||||
return WMI_HOST_MODE_11AC_VHT40;
|
||||
case WLAN_PHYMODE_11AC_VHT80:
|
||||
return MODE_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;
|
||||
default:
|
||||
fw_phymode = wma_host_to_fw_phymode_160(host_phymode);
|
||||
if (fw_phymode != MODE_UNKNOWN)
|
||||
if (fw_phymode != WMI_HOST_MODE_UNKNOWN)
|
||||
return fw_phymode;
|
||||
return wma_host_to_fw_phymode_11ax(host_phymode);
|
||||
}
|
||||
@ -1273,7 +1305,7 @@ static WLAN_PHY_MODE wma_host_to_fw_phymode(enum wlan_phymode host_phymode)
|
||||
*/
|
||||
static void wma_objmgr_set_peer_mlme_phymode(tp_wma_handle wma,
|
||||
uint8_t *mac_addr,
|
||||
WLAN_PHY_MODE phymode)
|
||||
WMI_HOST_WLAN_PHY_MODE phymode)
|
||||
{
|
||||
uint8_t pdev_id;
|
||||
struct wlan_objmgr_peer *peer;
|
||||
|
Loading…
Reference in New Issue
Block a user