iwinfo: factor tx power offset into power level listing
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 4 Dec 2011 22:04:00 +0000 (22:04 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 4 Dec 2011 22:04:00 +0000 (22:04 +0000)
SVN-Revision: 29430

package/iwinfo/src/iwinfo_cli.c

index d5be084bdb422ca5f23c33ab5176b033a8d56c04..4f8f5612c7a0ff3f98444d1950756f9871f88680 100644 (file)
@@ -553,7 +553,7 @@ static void print_scanlist(const struct iwinfo_ops *iw, const char *ifname)
 
 static void print_txpwrlist(const struct iwinfo_ops *iw, const char *ifname)
 {
-       int len, pwr, i;
+       int len, pwr, off, i;
        char buf[IWINFO_BUFSIZE];
        struct iwinfo_txpwrlist_entry *e;
 
@@ -566,14 +566,17 @@ static void print_txpwrlist(const struct iwinfo_ops *iw, const char *ifname)
        if (iw->txpower(ifname, &pwr))
                pwr = -1;
 
+       if (iw->txpower_offset(ifname, &off))
+               off = 0;
+
        for (i = 0; i < len; i += sizeof(struct iwinfo_txpwrlist_entry))
        {
                e = (struct iwinfo_txpwrlist_entry *) &buf[i];
 
                printf("%s%3d dBm (%4d mW)\n",
                        (pwr == e->dbm) ? "*" : " ",
-                       e->dbm,
-                       e->mw);
+                       e->dbm + off,
+                       iwinfo_dbm2mw(e->dbm + off));
        }
 }