Comment 4 for bug 1126751

Tony Espy (awe) wrote :

So it turns out that the error returned from crda isn't as important, as I get the same thing on my laptop if I run it.

That said, even with crda and wireless-regdb installed on our image, CRDA is still broken.

On my laptop ( as root ) I can run "iw reg set US" and then run "iw reg set 00" and see the update take hold by querying the regdomain using "iw reg get". You can also see this in the kernel:

Feb 26 09:55:19 alien kernel: [16106.288980] cfg80211: Regulatory domain changed to country: US
Feb 26 09:55:19 alien kernel: [16106.288983] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
Feb 26 09:55:19 alien kernel: [16106.288988] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm)
Feb 26 09:55:19 alien kernel: [16106.288993] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 1700 mBm)
Feb 26 09:55:19 alien kernel: [16106.288998] cfg80211: (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
Feb 26 09:55:19 alien kernel: [16106.289003] cfg80211: (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
Feb 26 09:55:19 alien kernel: [16106.289007] cfg80211: (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
Feb 26 09:55:19 alien kernel: [16106.289011] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm)

Whereas on the phone, I only see the initial set:

Feb 26 14:02:44 localhost kernel: [ 0.693359] cfg80211: Calling CRDA to update world regulatory domain

Note I also discovered that CRDA is broken on our Desktop installs ( 12.04+ ) as a default regdomain is not ever set. I've discussed this with cyphermox, and he's going to patch crda to set the default regdomain ( /etc/default/crda ) in the post-install script, based on the timezone set at install time. Long term, there's also discussion to have geoclue set regdomain.

I tried this on the phone ( setting the default in /etc/default/regdomain ) and it has no effect.