From: Arend van Spriel <arend@broadcom.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless <linux-wireless@vger.kernel.org>,
Paul Stewart <pstew@chromium.org>, Dan Williams <dcbw@redhat.com>
Subject: Re: [RFC 1/2] nl80211: add extended feature for BSS selection support
Date: Fri, 8 Jan 2016 10:18:47 +0100 [thread overview]
Message-ID: <568F7EF7.2070907@broadcom.com> (raw)
In-Reply-To: <1452177663.3141.9.camel@sipsolutions.net>
On 01/07/2016 03:41 PM, Johannes Berg wrote:
> On Thu, 2016-01-07 at 13:52 +0100, Arend van Spriel wrote:
>>
>> Agree. However, one of the reasons I added the ext_feature is because
>> people gave feedback they wanted it for testing purposes so they know
>> what to expect from the driver. That same argument could used for the
>> supported selection criteria. I have no strong opinion though.
>
> Yeah, that's true - if we play the "advisory" card then we don't really
> need to add it at all... Not sure what to do really. I'd love to
> specify it very clearly if we need to at all.
Yes. If we add something like this it should be a specific as possible.
> Perhaps for features we can add NL80211_ATTR_BSS_SELECT to the wiphy
> information, and within that add each of the supported
> ATTR_BSS_SELECT_* as an NLA_FLAG? That way at least we don't need to
> define all kinds of new flags in the API.
That sounds like a plan.
>>> Right. So realistically, writing this a bit more verbosely, you
>>> have
>>>
>>> 1) rssi_preference, band_preference(band)
>>> 2) rssi_adjust(band, delta), rssi_preference
>>>
>>> and perhaps
>>>
>>> 3) rssi_preference
>>>
>>> as the default?
>>
>> Good point.
>>
>>> As for 1), you said it was "band, rssi" but it seems you really
>>> meant
>>> the other way around since before you said "band" was a tie-
>>> breaker.
>>
>> My bad. When using "band_preference()" the selected BSS is in specified
>> band even though the BSS in other band would be stronger. If there is no
>> proper BSS in the specified band the preference is obviously
>> discarded.
>
> So 1) really becomes just
> 1) band_preference(band)
>
> without any RSSI at all? Ah, I get it. You have to kind of reword that
> in terms of the logic used:
>
> 1) select_highest_rssi_in_band(band), select_highest_rssi()
> 2) adjust_rssi_if_in_band(band, delta), select_highest_rssi()
> 3) select_highest_rssi()
>
> But if you look at that, then "select_highest_rssi_in_band(band)" is
> really the same as "adjust_rssi_if_in_band(band, 1000)" since you can't
> have real RSSI that high, which leaves us with just a single primitive
> and perhaps a standard value for that "1000"?
True. Although I may have a firmware issue with that as RSSI is probably
typed as s8 there. At least the adjustment is so can do up to 127 there,
which would probably be enough as well. I think I prefer an explicit
primitive though.
>>> Perhaps then, the API should just expose the two "primitives"
>>> * band_preference(band)
>>> * rssi_adjust(band, delta)?
>
> I guess it makes even more sense as I just worded it.
>
>>> And for use-case number #3:
>>
>> * rssi_preference(void)
>
> Yeah although you'd assume that's the default anyway?
That kinda depends on the driver I guess. Currently our driver defaults
to rssi_adjust(5g, 8) and we restore to that when no BSS_SELECT
attribute is provided in the .connect() callback.
Regards,
Arend
next prev parent reply other threads:[~2016-01-08 9:18 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-24 12:19 [RFC 0/2] nl80211: allow configuration of BSS selection Arend van Spriel
2015-12-24 12:19 ` [RFC 1/2] nl80211: add extended feature for BSS selection support Arend van Spriel
2016-01-05 9:25 ` Johannes Berg
2016-01-05 9:50 ` Arend van Spriel
2016-01-05 16:31 ` Johannes Berg
2016-01-06 10:16 ` Arend van Spriel
2016-01-06 14:36 ` Johannes Berg
2016-01-06 14:37 ` Johannes Berg
2016-01-07 12:52 ` Arend van Spriel
2016-01-07 14:41 ` Johannes Berg
2016-01-08 9:18 ` Arend van Spriel [this message]
2015-12-24 12:19 ` [RFC 2/2] brcmfmac: add support for nl80211 BSS_SELECT feature Arend van Spriel
2015-12-25 10:08 ` [RFC 0/2] nl80211: allow configuration of BSS selection Arend van Spriel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=568F7EF7.2070907@broadcom.com \
--to=arend@broadcom.com \
--cc=dcbw@redhat.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=pstew@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).