summaryrefslogtreecommitdiff
path: root/package/iwinfo/src/iwinfo_cli.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-12-04 20:37:01 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-12-04 20:37:01 +0000
commit3a9d303059a1689ad9ff856e430fef04bd3fb7f5 (patch)
treeb17658b91c9b0e70814987b4deb882da2a416ff7 /package/iwinfo/src/iwinfo_cli.c
parent33750dc3e93e6d2279b9f39ce7c46e8a1e1f1c48 (diff)
downloadmtk-20170518-3a9d303059a1689ad9ff856e430fef04bd3fb7f5.zip
mtk-20170518-3a9d303059a1689ad9ff856e430fef04bd3fb7f5.tar.gz
mtk-20170518-3a9d303059a1689ad9ff856e430fef04bd3fb7f5.tar.bz2
iwinfo: expose txpower and frequency offset information
SVN-Revision: 29425
Diffstat (limited to 'package/iwinfo/src/iwinfo_cli.c')
-rw-r--r--package/iwinfo/src/iwinfo_cli.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/package/iwinfo/src/iwinfo_cli.c b/package/iwinfo/src/iwinfo_cli.c
index bfa1d88..d5be084 100644
--- a/package/iwinfo/src/iwinfo_cli.c
+++ b/package/iwinfo/src/iwinfo_cli.c
@@ -311,6 +311,36 @@ static char * print_hardware_name(const struct iwinfo_ops *iw, const char *ifnam
return buf;
}
+static char * print_txpower_offset(const struct iwinfo_ops *iw, const char *ifname)
+{
+ int off;
+ static char buf[12];
+
+ if (iw->txpower_offset(ifname, &off))
+ snprintf(buf, sizeof(buf), "unknown");
+ else if (off != 0)
+ snprintf(buf, sizeof(buf), "%d dB", off);
+ else
+ snprintf(buf, sizeof(buf), "none");
+
+ return buf;
+}
+
+static char * print_frequency_offset(const struct iwinfo_ops *iw, const char *ifname)
+{
+ int off;
+ static char buf[12];
+
+ if (iw->frequency_offset(ifname, &off))
+ snprintf(buf, sizeof(buf), "unknown");
+ else if (off != 0)
+ snprintf(buf, sizeof(buf), "%.3f GHz", ((float)off / 1000.0));
+ else
+ snprintf(buf, sizeof(buf), "none");
+
+ return buf;
+}
+
static char * print_ssid(const struct iwinfo_ops *iw, const char *ifname)
{
char buf[IWINFO_ESSID_MAX_SIZE+1] = { 0 };
@@ -473,6 +503,10 @@ static void print_info(const struct iwinfo_ops *iw, const char *ifname)
printf(" Hardware: %s [%s]\n",
print_hardware_id(iw, ifname),
print_hardware_name(iw, ifname));
+ printf(" TX power offset: %s\n",
+ print_txpower_offset(iw, ifname));
+ printf(" Frequency offset: %s\n",
+ print_frequency_offset(iw, ifname));
printf(" Supports VAPs: %s\n",
print_mbssid_supp(iw, ifname));
}