iwinfo: detect HT PHY for broadcom-wl
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn+ssh://svn.openwrt.org/openwrt/trunk@42760 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
fe7133f7e5
commit
9853abe33a
2 changed files with 5 additions and 4 deletions
|
@ -55,6 +55,7 @@
|
||||||
#define WLC_PHY_TYPE_G 2
|
#define WLC_PHY_TYPE_G 2
|
||||||
#define WLC_PHY_TYPE_N 4
|
#define WLC_PHY_TYPE_N 4
|
||||||
#define WLC_PHY_TYPE_LP 5
|
#define WLC_PHY_TYPE_LP 5
|
||||||
|
#define WLC_PHY_TYPE_HT 7
|
||||||
|
|
||||||
#define WLC_BAND_5G 1
|
#define WLC_BAND_5G 1
|
||||||
#define WLC_BAND_2G 2
|
#define WLC_BAND_2G 2
|
||||||
|
|
|
@ -592,6 +592,7 @@ static int wl_get_hwmodelist(const char *ifname, int *buf)
|
||||||
if (!wl_ioctl(ifname, WLC_GET_PHYTYPE, &phytype, sizeof(phytype)) &&
|
if (!wl_ioctl(ifname, WLC_GET_PHYTYPE, &phytype, sizeof(phytype)) &&
|
||||||
!wl_ioctl(ifname, WLC_GET_BANDLIST, band, sizeof(band)))
|
!wl_ioctl(ifname, WLC_GET_BANDLIST, band, sizeof(band)))
|
||||||
{
|
{
|
||||||
|
*buf = 0;
|
||||||
switch (phytype)
|
switch (phytype)
|
||||||
{
|
{
|
||||||
case WLC_PHY_TYPE_A:
|
case WLC_PHY_TYPE_A:
|
||||||
|
@ -600,15 +601,16 @@ static int wl_get_hwmodelist(const char *ifname, int *buf)
|
||||||
case WLC_PHY_TYPE_B:
|
case WLC_PHY_TYPE_B:
|
||||||
*buf = IWINFO_80211_B;
|
*buf = IWINFO_80211_B;
|
||||||
break;
|
break;
|
||||||
|
case WLC_PHY_TYPE_HT:
|
||||||
|
case WLC_PHY_TYPE_N:
|
||||||
|
*buf |= IWINFO_80211_N;
|
||||||
case WLC_PHY_TYPE_LP:
|
case WLC_PHY_TYPE_LP:
|
||||||
case WLC_PHY_TYPE_G:
|
case WLC_PHY_TYPE_G:
|
||||||
case WLC_PHY_TYPE_N:
|
|
||||||
bands = 0;
|
bands = 0;
|
||||||
for (i = 1; i <= band[0]; i++)
|
for (i = 1; i <= band[0]; i++)
|
||||||
{
|
{
|
||||||
bands |= band[i];
|
bands |= band[i];
|
||||||
}
|
}
|
||||||
*buf = 0;
|
|
||||||
if (bands & WLC_BAND_5G)
|
if (bands & WLC_BAND_5G)
|
||||||
*buf |= IWINFO_80211_A;
|
*buf |= IWINFO_80211_A;
|
||||||
if (bands & WLC_BAND_2G)
|
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_B;
|
||||||
*buf |= IWINFO_80211_G;
|
*buf |= IWINFO_80211_G;
|
||||||
}
|
}
|
||||||
if (phytype == WLC_PHY_TYPE_N)
|
|
||||||
*buf |= IWINFO_80211_N;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return -1;
|
return -1;
|
||||||
|
|
Loading…
Reference in a new issue