On Tue, May 22, 2012 at 9:40 PM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > On Tue, 2012-05-22 at 09:45 +0300, Victor Goldenshtein wrote: > >> @@ -388,7 +389,10 @@ static void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo) >> if ((sta->local->hw.flags & IEEE80211_HW_SIGNAL_DBM) || >> (sta->local->hw.flags & IEEE80211_HW_SIGNAL_UNSPEC)) { >> sinfo->filled |= STATION_INFO_SIGNAL | STATION_INFO_SIGNAL_AVG; >> - sinfo->signal = (s8)sta->last_signal; >> + if (local->ops->get_rssi) >> + drv_get_rssi(local, sdata, &sinfo->signal); >> + else >> + sinfo->signal = (s8)sta->last_signal; >> sinfo->signal_avg = (s8) -ewma_read(&sta->avg_signal); >> } > > So .. you're filling a per-station value with a generic per-interface > callback? What were you thinking? ;-) > This is this is for managed only. I can rename the drv_get_rssi() to drv_get_sta_rssi() and to call it only for NL80211_IFTYPE_STATION, I think it would clarify things? -- Victor. -- 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