OpenWrt Forum Archive

Topic: Advice on built-in CRDA and regulatory.bin for AA custom build

The content of this topic has been archived on 30 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hello all,

I’m trying to build my own Attitude Adjustment image for a Netgear WNRD3700 v1 router mostly to be able to use wireless channels 12 & 13 on 2.4GHz that are legally allowed in my country but not enabled on the US-centric standard build.

Following this router's specific tutorial I have made -amongst others- the following changes to the default wireless selections in the relevant menuconfig sections:

  • Kernel Modules > Wireless Drivers > kmod-ath > Configuration > Force Atheros driver respect usr regdomain settings = YES

  • Network > CRDA = YES (compile as built-in package with "*")

Now my question: 
Will I be able to update the regulatory DB (I believe it lives in /usr/lib/crda/regulatory.bin) after enabling CRDA as built-in package or should I set it instead as module?

Regards,
D

CRDA is not used anymore, the regdb is directly built into mac80211. Take a look at package/mac80211/files/regdb.txt

jow wrote:

CRDA is not used anymore, the regdb is directly built into mac80211. Take a look at package/mac80211/files/regdb.txt

Thanks for your answer. Please correct/modify if my reasoning below is wrong.

The regdb seems to be statically compiled and since #31954 mac80211 uses this instead of the standard regulatory infrastructure which is based on an external regulatory.bin. As I understand it for any regulatory changes, a recompilation is needed.

With CONFIG_ATH_USER_REGD=y  I can just do  "iw reg set XX" and the kernel will happily ignore the country code burned on the Atheros card EEPROM  ("0x0" --> "US") and will look up instead my XX code in the internal regdb mentioned earlier to get the corresponding frequency parameters to apply. Correct?

So what does the CONFIG_PACKAGE_crda=y do then?

danirod wrote:

Correct?

Yes.

danirod wrote:

So what does the CONFIG_PACKAGE_crda=y do then?

Occupy space.

The discussion might have continued from here.