linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>
To: Arik Nemtsov <arik@wizery.com>
Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com>,
	Johannes Berg <johannes@sipsolutions.net>,
	linux-wireless <linux-wireless@vger.kernel.org>,
	Arik Nemtsov <arikx.nemtsov@intel.com>
Subject: Re: [PATCH 3/7] cfg80211: allow drivers to provide regulatory settings
Date: Tue, 20 May 2014 02:53:17 -0700	[thread overview]
Message-ID: <CAB=NE6U2Uy8qjEzZu2ZZqP393=wGNk7wUPOe=VwhHBB6+x56Hg@mail.gmail.com> (raw)
In-Reply-To: <CA+XVXfdFZAFih=YStSofJCaNgLQYDPxBsEPbovWufWt7O0vbPQ@mail.gmail.com>

On Tue, May 20, 2014 at 2:12 AM, Arik Nemtsov <arik@wizery.com> wrote:
> On Tue, May 20, 2014 at 11:44 AM, Luis R. Rodriguez
> <mcgrof@do-not-panic.com> wrote:
>> On Sun, May 11, 2014 at 1:50 AM, Emmanuel Grumbach
>> <emmanuel.grumbach@intel.com> wrote:
>>> From: Arik Nemtsov <arik@wizery.com>
>>> +       struct ieee80211_regdomain * (*get_regd)(struct wiphy *wiphy,
>>> +                                                const char *alpha2);
>>> +
>>>         /* fields below are read-only, assigned by cfg80211 */
>>>
>>>         const struct ieee80211_regdomain __rcu *regd;
>>
>> The driver should be able to dump a regdomain it needs when it needs
>> it and use the internal callbacks wiphy_apply_custom_regulatory()
>> which tons of drivers already use when it needs to upon
>> initialization. As for country IE data you can ignore country IEs,
>> there's a flag for this, and do what you want on firmware just as that
>> crappy non-upstream vendor qualcomm driver does. Apart from that its
>> unclear in this patch why instead any delta observed on wireless-regdb
>> is addressed publicly I'd like for this to be considered as a sane
>> alternative. Additionally keeping regulatory data in firmware is very
>> bug prone and it also doesn't let us grow mature the architecture on
>> cfg80211, Intel's firmware has historically only had a few world
>> regulatory domains, and historically this is why not much
>> contributions from Intel have gone into wireless-regdb, if there is a
>> need to support specific countries now on firmware I'd encourage the
>> firmware bloat strategy to be seriously reconsidered in light of the
>> issues that could arise.
>
> The wiphy_apply_custom_regulatory() option is to be used before
> registering the wiphy. We want to be able to accept country code
> changes at runtime, with the driver supplying the regdomain.

For which cases exactly at run time? This is already being handled on
other drivers without changing APIs, so its unclear why you need this
and to expose this to cfg80211. To be clear, a few drivers other than
Intel already had this strategy and they managed to just use the
reg_notifier() and do what it needs by using the flag that ignores
country IEs, and doing everything else on the driver side. Please
explore this avenue.

> As for why this was chosen - I think you're barking up the wrong tree :)
> The regulatory folks at Intel decided to store the data in FW,

This has been done for a long time but the main reason why this was
done that way was that Intel had no need to have tons of regulatory
domains, and instead had only 4 world regulatory domains, that's all,
if things have changed it'd be good to understand this and also the
reasons why things are being done.

> I don't  have any say here. I think this is more legal than technology reasons.

Asking these questions, understanding them, and addressing concerns
are the questions that need to be asked to help advance wireless on
Linux, it was not asking these questions that got us into trouble in
the first place, we don't want to go back to that. So even if it is
non technical and purely regulatory we obviously should ask why.

> Would this patch be acceptable with the documentation changed to kdoc format?
> Again, this is a different way of doing things, but it's largely
> compatible to the way reg.c already works.

Not yet, you have to explain if you've explored all other avenues
which others have before you have with similar architecture.

  Luis

  reply	other threads:[~2014-05-20  9:53 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-11  8:50 [PATCH 0/7] regulatory enhancements Emmanuel Grumbach
2014-05-11  8:50 ` [PATCH 1/7] cfg80211: don't set reg timeout for user-handled hint Emmanuel Grumbach
2014-05-12  6:47   ` Kalle Valo
2014-05-12  6:49     ` Grumbach, Emmanuel
2014-05-12  7:48       ` Johannes Berg
2014-05-20  8:09   ` Luis R. Rodriguez
2014-05-20 13:21   ` Johannes Berg
2014-05-11  8:50 ` [PATCH 2/7] cfg80211: introduce regulatory flags controlling bw Emmanuel Grumbach
2014-05-20  8:26   ` Luis R. Rodriguez
2014-05-20  8:33     ` Arik Nemtsov
2014-05-20  8:51       ` Luis R. Rodriguez
2014-05-20  9:25         ` Arik Nemtsov
2014-05-20  9:54           ` Luis R. Rodriguez
2014-05-20 12:31             ` Arik Nemtsov
2014-06-10 21:28               ` Luis R. Rodriguez
2014-06-11  5:24                 ` Arik Nemtsov
2014-06-11  6:21                   ` Janusz Dziedzic
2014-06-11  6:38                     ` Arik Nemtsov
2014-06-18 21:50                   ` Luis R. Rodriguez
2014-05-11  8:50 ` [PATCH 3/7] cfg80211: allow drivers to provide regulatory settings Emmanuel Grumbach
2014-05-20  8:44   ` Luis R. Rodriguez
2014-05-20  9:12     ` Arik Nemtsov
2014-05-20  9:53       ` Luis R. Rodriguez [this message]
2014-05-20 12:00         ` Arik Nemtsov
2014-06-10 21:43           ` Luis R. Rodriguez
2014-06-11  5:51             ` Arik Nemtsov
2014-05-11  8:50 ` [PATCH 4/7] cfg80211: treat the special "unknown" alpha2 as valid Emmanuel Grumbach
2014-05-11  8:50 ` [PATCH 5/7] cfg80211: accept world/same regdom from driver/user hints Emmanuel Grumbach
2014-05-11  8:50 ` [PATCH 6/7] cfg80211: leave invalid channels on regdomain change Emmanuel Grumbach
2014-05-11  8:50 ` [PATCH 7/7] regulatory: add NULL to alpha2 Emmanuel Grumbach
2014-05-20  8:48 ` [PATCH 0/7] regulatory enhancements Luis R. Rodriguez
2014-06-10 21:44   ` Luis R. Rodriguez
2014-06-11  5:20     ` Arik Nemtsov

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='CAB=NE6U2Uy8qjEzZu2ZZqP393=wGNk7wUPOe=VwhHBB6+x56Hg@mail.gmail.com' \
    --to=mcgrof@do-not-panic.com \
    --cc=arik@wizery.com \
    --cc=arikx.nemtsov@intel.com \
    --cc=emmanuel.grumbach@intel.com \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.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).