[PATCH] ath: add support for special 0x0 regulatory domain

Brian Norris briannorris at chromium.org
Wed Dec 23 13:18:45 EST 2020


On Wed, Dec 23, 2020 at 3:02 AM Kalle Valo <kvalo at codeaurora.org> wrote:
> Brian Norris <briannorris at chromium.org> writes:
> > Kalle is still planning on applying my revert patch someday, I think:
> >
> > https://patchwork.kernel.org/project/linux-wireless/patch/20200527165718.129307-1-briannorris@chromium.org/
> >
> > We just have to wait.
>
> Actually I don't see how I could apply the revert due to the regulatory
> problems explained by Jouni[1]. We cannot break regulatory rules.
>
> [1] https://lore.kernel.org/ath10k/CANe27j+fur52HydqqzLc2hBV3QwC2La8+RTJcV=5W5LkUr=PqQ@mail.gmail.com/

Thanks for pointing that out; I hadn't noticed that thread.

I'm not sure I totally agree with Jouni's logic there, but
(a) I don't have a huge stake in that (because for systems I care
about, I make sure the hardware gets shipped out with the correct
module programming) and
(b) it's probably best if discussion mostly stays on that thread.

But I still can't help myself: that feels like retroactive logic that
doesn't make sense. Jouni seems to imply that every module ever
shipped *must* have a programmed country code in order to comply with
regulations. My understanding is that systems could have been
compliant without such a country code (for example, shipping a
non-upstream driver; or enabling CONFIG_ATH_REG_DYNAMIC_USER_REG_HINTS
and specifying logic from user space; or other creative solutions
[1]). It's probably not ideal (because mainline Linux now doesn't
really know what to do), but possible. It unfortunately leaves a
sticky situation for these users, because they have to figure out how
to retroactively patch back in the original manufacturer's regulatory
strategy.

Brian

[1] I am quite familiar with a line of APs that ships this solution
(i.e., pulling its country code from the Device Tree, because the boot
flash has information about the country it was provisioned for):
https://chromium-review.googlesource.com/425619
I don't know what the module's EEPROM contains, but they're not relying on it.



More information about the ath10k mailing list