|
|
|
@ -592,6 +592,7 @@ static int wl_get_hwmodelist(const char *ifname, int *buf) |
|
|
|
|
if (!wl_ioctl(ifname, WLC_GET_PHYTYPE, &phytype, sizeof(phytype)) && |
|
|
|
|
!wl_ioctl(ifname, WLC_GET_BANDLIST, band, sizeof(band))) |
|
|
|
|
{ |
|
|
|
|
*buf = 0; |
|
|
|
|
switch (phytype) |
|
|
|
|
{ |
|
|
|
|
case WLC_PHY_TYPE_A: |
|
|
|
@ -600,15 +601,16 @@ static int wl_get_hwmodelist(const char *ifname, int *buf) |
|
|
|
|
case WLC_PHY_TYPE_B: |
|
|
|
|
*buf = IWINFO_80211_B; |
|
|
|
|
break; |
|
|
|
|
case WLC_PHY_TYPE_HT: |
|
|
|
|
case WLC_PHY_TYPE_N: |
|
|
|
|
*buf |= IWINFO_80211_N; |
|
|
|
|
case WLC_PHY_TYPE_LP: |
|
|
|
|
case WLC_PHY_TYPE_G: |
|
|
|
|
case WLC_PHY_TYPE_N: |
|
|
|
|
bands = 0; |
|
|
|
|
for (i = 1; i <= band[0]; i++) |
|
|
|
|
{ |
|
|
|
|
bands |= band[i]; |
|
|
|
|
} |
|
|
|
|
*buf = 0; |
|
|
|
|
if (bands & WLC_BAND_5G) |
|
|
|
|
*buf |= IWINFO_80211_A; |
|
|
|
|
if (bands & WLC_BAND_2G) |
|
|
|
@ -616,8 +618,6 @@ static int wl_get_hwmodelist(const char *ifname, int *buf) |
|
|
|
|
*buf |= IWINFO_80211_B; |
|
|
|
|
*buf |= IWINFO_80211_G; |
|
|
|
|
} |
|
|
|
|
if (phytype == WLC_PHY_TYPE_N) |
|
|
|
|
*buf |= IWINFO_80211_N; |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
return -1; |
|
|
|
|