Re: [PATCH] wifi: mwifiex: ignore ROM regulatory hint on WRT3200ACM/WRT32x
From: George Valkov
Date: Wed Jul 29 2026 - 23:13:20 EST
Hi Jeff,
Initially I wanted to keep changes easy to read and as simple as possible,
hence my current patch is based on device names.
Indeed out openwrt-ai also caught this:
https://github.com/openwrt/openwrt/pull/24458#pullrequestreview-4803923901
I've been thinking about possible options:
1. Use board names "linksys,rango" and "linksys,venom", where
rango is WRT3200ACM, and venom is WRT32x. But a venom dts
is also not available in Linux. We do have it in OpenWrt:
https://github.com/openwrt/openwrt/blob/main/target/linux/mvebu/files
/arch/arm/boot/dts/marvell/armada-385-linksys-venom.dts
2. We could either ignore this or
3. Have another PR with venom board support files, but that will require
much more research and work. I don't have WRT32x hardware, and I'm
uncomfortable doing this without supervision.
4. We can also implement a dts flag, e.g. ignore_reg_hint, which can be
set in the board dts. This might be the best and most flexible option.
My experience with dts is almost zero and I will need help to implement
it.
Georgi
On Thu, 30 Jul 2026 at 05:17, Jeff Chen <chunfan.chen@xxxxxxxxx> wrote:
>
> On Tue, Jul 28, 2026 at 01:35:36 PM +0300, Georgi Valkov wrote:
> > WRT3200ACM and WRT32x routers always report a fixed US regulatory domain
> > from the mwifiex ROM, which conflicts with the platform regulatory
> > configuration on units sold outside the US market. For example:
> > - phy0 mwlwifi 5 GHz, hard-coded region 98 EU mapped to FR
> > - phy1 mwlwifi 2.4 GHz, hard-coded region 98 EU mapped to FR
> > - phy2 mwifiex 2.4 and 5 GHz, hard-coded region US
>
> Hi Georgi,
>
> Thanks for the patch. I have a question about these compatible strings:
>
> > if (country_code &&
> > + !of_machine_is_compatible("linksys,wrt3200acm") &&
> > + !of_machine_is_compatible("linksys,wrt32x") &&
>
> I checked the mainline kernel source, but these names are not found
> in the DTS files under arch/arm/boot/dts/marvell/. Instead, mainline uses
> "linksys,rango" and "linksys,venom".
>
> As a result, this machine check will always fail on a pure mainline kernel,
> making the quirk ineffective.
>
> Jeff