From 7b39bee1c62dc68c84938cda43115e4d30724d1e Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 8 May 2015 13:14:36 +0200 Subject: iwinfo: add support for querying available HT modes Signed-off-by: Jo-Philipp Wich --- iwinfo_wl.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'iwinfo_wl.c') diff --git a/iwinfo_wl.c b/iwinfo_wl.c index 7cbda96..c7517ec 100644 --- a/iwinfo_wl.c +++ b/iwinfo_wl.c @@ -630,6 +630,29 @@ static int wl_get_hwmodelist(const char *ifname, int *buf) return -1; } +static int wl_get_htmodelist(const char *ifname, int *buf) +{ + int modes; + + if (!wl_get_hwmodelist(ifname, &modes)) + { + *buf = 0; + + /* FIXME: determine real capabilities */ + + if (modes & IWINFO_80211_N) + *buf |= IWINFO_HTMODE_HT20 | IWINFO_HTMODE_HT40; + + if (modes & IWINFO_80211_AC) + *buf |= IWINFO_HTMODE_VHT20 | IWINFO_HTMODE_VHT40 | + IWINFO_HTMODE_VHT80; + + return 0; + } + + return -1; +} + static int wl_get_mbssid_support(const char *ifname, int *buf) { wlc_rev_info_t revinfo; @@ -715,6 +738,7 @@ const struct iwinfo_ops wl_ops = { .quality_max = wl_get_quality_max, .mbssid_support = wl_get_mbssid_support, .hwmodelist = wl_get_hwmodelist, + .htmodelist = wl_get_htmodelist, .mode = wl_get_mode, .ssid = wl_get_ssid, .bssid = wl_get_bssid, -- cgit v1.2.1