On Wed, 2008-03-19 at 17:08 +0100, Holger Schurig wrote: > [PATCH] store rssi as an int > > Don't store an (hardware base) u8 value in bss_descriptor, but just an > unsigned int (RSSI is really unsigned). Compilers generate more efficent > code for ints than for bytes. > > Signed-off-by: Holger Schurig <hs4233@xxxxxxxxxxxxxxxxxxxx> Acked-by: Dan Williams <dcbw@xxxxxxxxxx> > Index: wireless-testing/drivers/net/wireless/libertas/scan.h > =================================================================== > --- wireless-testing.orig/drivers/net/wireless/libertas/scan.h 2008-03-19 09:04:43.000000000 +0100 > +++ wireless-testing/drivers/net/wireless/libertas/scan.h 2008-03-19 09:05:53.000000000 +0100 > @@ -34,14 +34,9 @@ struct bss_descriptor { > u8 ssid_len; > > u16 capability; > - > - /* receive signal strength in dBm */ > - long rssi; > - > + u32 rssi; > u32 channel; > - > u16 beaconperiod; > - > u32 atimwindow; > > /* IW_MODE_AUTO, IW_MODE_ADHOC, IW_MODE_INFRA */ > Index: wireless-testing/drivers/net/wireless/libertas/scan.c > =================================================================== > --- wireless-testing.orig/drivers/net/wireless/libertas/scan.c 2008-03-19 09:05:48.000000000 +0100 > +++ wireless-testing/drivers/net/wireless/libertas/scan.c 2008-03-19 09:27:55.000000000 +0100 > @@ -602,7 +602,7 @@ static int lbs_scan_networks(struct lbs_ > lbs_deb_scan("scan table:\n"); > list_for_each_entry(iter, &priv->network_list, list) > lbs_deb_scan("%02d: BSSID %s, RSSI %d, SSID '%s'\n", > - i++, print_mac(mac, iter->bssid), (int)iter->rssi, > + i++, print_mac(mac, iter->bssid), iter->rssi, > escape_essid(iter->ssid, iter->ssid_len)); > mutex_unlock(&priv->lock); > #endif > @@ -948,7 +948,7 @@ struct bss_descriptor *lbs_find_ssid_in_ > uint8_t *bssid, uint8_t mode, > int channel) > { > - uint8_t bestrssi = 0; > + u32 bestrssi = 0; > struct bss_descriptor * iter_bss = NULL; > struct bss_descriptor * found_bss = NULL; > struct bss_descriptor * tmp_oldest = NULL; > Index: wireless-testing/drivers/net/wireless/libertas/debugfs.c > =================================================================== > --- wireless-testing.orig/drivers/net/wireless/libertas/debugfs.c 2008-03-19 09:04:43.000000000 +0100 > +++ wireless-testing/drivers/net/wireless/libertas/debugfs.c 2008-03-19 09:05:53.000000000 +0100 > @@ -78,7 +78,7 @@ static ssize_t lbs_getscantable(struct f > u16 spectrum_mgmt = (iter_bss->capability & WLAN_CAPABILITY_SPECTRUM_MGMT); > > pos += snprintf(buf+pos, len-pos, > - "%02u| %03d | %04ld | %s |", > + "%02u| %03d | %04d | %s |", > numscansdone, iter_bss->channel, iter_bss->rssi, > print_mac(mac, iter_bss->bssid)); > pos += snprintf(buf+pos, len-pos, " %04x-", iter_bss->capability); -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html