Search Linux Wireless

Re: [PATCH] mac80211: add command to get current rssi

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2012-05-23 at 11:51 +0300, Goldenshtein, Victor wrote:
> On Wed, May 23, 2012 at 9:58 AM, Goldenshtein, Victor <victorg@xxxxxx> wrote:
> > 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?
> >
> 
> Alternatively we could leave it as general callback "drv_get_rssi()",
> add the peer address and let the driver decide if it supports
> retrieval of the rssi for the given peer.  Thus, allowing us to do
> something like:
> 
> if (!local->ops->get_rssi) || (drv_get_rssi(local, sdata,
> sta->sta.addr, &sinfo->signal))
>         sinfo->signal = (s8)sta->last_signal;

That's probably better.

johannes

--
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


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux