Your message dated Tue, 20 Jul 2010 18:05:25 +0200
with message-id <[email protected]>
and subject line Re: iw reg set <regioncode> does not work with Atheros AR2413 
on squeeze
has caused the Debian Bug report #577692,
regarding iw reg set <regioncode> does not work with Atheros AR2413 on squeeze
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
577692: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=577692
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: iw
Version: 0.9.14-1
Severity: normal


My Alix 6E2 embedded board is equipped with an Atheros AR2413 miniPCI wireless
 card. At system boot and every time I try do load the kernel modules using 
"modprobe ath5k" I can only use the default US frequency settings. 

When I try to set the regularity settings with "iw" like this everything is 
unchanged:

alix6:~# iw reg get
country US:
        (2402 - 2472 @ 40), (6, 27)
        (5170 - 5190 @ 40), (6, 23)
        (5190 - 5210 @ 40), (6, 23)
        (5210 - 5230 @ 40), (6, 23)
        (5230 - 5330 @ 40), (6, 23)
        (5735 - 5835 @ 40), (6, 30)
alix6:~# iw reg set DE
alix6:~# iw reg get
country US:
        (2402 - 2472 @ 40), (6, 27)
        (5170 - 5190 @ 40), (6, 23)
        (5190 - 5210 @ 40), (6, 23)
        (5210 - 5230 @ 40), (6, 23)
        (5230 - 5330 @ 40), (6, 23)
        (5735 - 5835 @ 40), (6, 30)

I always get the old US settings. No way to change it.

Then I tried to load the module cfg80211 with module options as shown below 
with regulatory settings "EU" and this succeeded. But still no way to set the
 region using "iw reg set <regioncode>"

--- contents of "/etc/modprobe.d/cfg80211.conf"
options cfg80211 ieee80211_regdom="EU"

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i586)

Kernel: Linux 2.6.32-3-486
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages iw depends on:
ii  libc6                         2.10.2-6   Embedded GNU C Library: Shared lib
ii  libnl1                        1.1-5      library for dealing with netlink s

iw recommends no packages.

iw suggests no packages.

-- no debconf information

-- output of lspci
00:01.0 Host bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] Host 
Bridge (rev 33)
00:01.2 Entertainment encryption device: Advanced Micro Devices [AMD] Geode LX 
AES Security Block
00:09.0 Ethernet controller: VIA Technologies, Inc. VT6105M [Rhine-III] (rev 96)
00:0a.0 Ethernet controller: VIA Technologies, Inc. VT6105M [Rhine-III] (rev 96)
00:0c.0 Ethernet controller: Atheros Communications Inc. AR2413 802.11bg NIC 
(rev 01)
00:0f.0 ISA bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] ISA 
(rev 03)
00:0f.2 IDE interface: Advanced Micro Devices [AMD] CS5536 [Geode companion] 
IDE (rev 01)
00:0f.4 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] 
OHC (rev 02)
00:0f.5 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] 
EHC (rev 02)



--- End Message ---
--- Begin Message ---
Hi

On Tue, 13 Apr 2010, you wrote:
> My Alix 6E2 embedded board is equipped with an Atheros AR2413 miniPCI wireless
>  card. At system boot and every time I try do load the kernel modules using 
> "modprobe ath5k" I can only use the default US frequency settings. 
> 
> When I try to set the regularity settings with "iw" like this everything is 
> unchanged:

There may be two different reasons behind your issue:
- iw reg set depends on crda/ wireless-regdb to be installed, neither of
  these is available in Debian. This is nothing the "iw" package could 
  influence, as such it is strictly speaking not a bug in "iw".
  Without crda/ wireless-regdb being present on the target system, "iw reg 
  set" cannot work by design.
- Atheros (and Intel-) hardware strictly enforces the regdomain hint 
  stored, together with calibration information, in the device's EEPROM.
  iw/ crda can only restrict these regulatory domains further to, conform 
  to local laws - it can allow additional frequency ranges not allowed by
  the hardware vendor. Further information can be found at 
  http://wireless.kernel.org/en/users/Drivers/ath#Regulatory
  Unfortunately Debian's kernel (looking at 2.6.35~rc5-1~experimental.1) 
  doesn't set CFG80211_REG_DEBUG, so determining if this is the case is 
  basically guess work. This is a hardware limitation, not a bug in "iw".

Nevertheless, please look at dmesg for further information. On a system 
with kernel 2.6.35-rc5-git4 with CFG80211_REG_DEBUG enabled and crda/ 
wireless, it would look like this (AR2414's EEPROM indicates WOR5_ETSIC as 
regulatory domain, crda is configured to use "iw reg set DE" while 
booting):

[    5.785514] ath5k 0000:01:07.0: PCI INT A -> Link[APC4] -> GSI 19 (level, 
low) -> IRQ 19
[    5.785589] ath5k 0000:01:07.0: registered as 'phy0'

* the omnipresent default, world regulatory domain; iw/ crda can only 
* restrict this set further (by intersecting the current regd settings with
* the proposed new ones)

[    5.970139] cfg80211: World regulatory domain updated:
[    5.970143]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[    5.970146]     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[    5.970149]     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[    5.970151]     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[    5.970154]     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[    5.970156]     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

* here /lib/udev/rules.d/60-crda.rules kicks in, invokes 
* /lib/crda/setregdomain, which in turn effectively calls "crda reg set DE"

[    6.220671] cfg80211: Calling CRDA for country: DE
[    6.229177] cfg80211: Regulatory domain changed to country: DE
[    6.229180]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[    6.229183]     (2400000 KHz - 2483500 KHz @ 40000 KHz), (N/A, 2000 mBm)
[    6.229186]     (5150000 KHz - 5350000 KHz @ 40000 KHz), (N/A, 2000 mBm)
[    6.229188]     (5470000 KHz - 5725000 KHz @ 40000 KHz), (N/A, 2698 mBm)

* now the hardware EEPROM is read, 0x65 includes 'DE', so iw/ crda don't 
* change the kernel's regd settings again.

[    6.494418] ath: EEPROM regdomain: 0x65
[    6.494420] ath: EEPROM indicates we should expect a direct regpair map
[    6.494424] ath: Country alpha2 being used: 00
[    6.494426] ath: Regpair used: 0x65
[    6.494687] phy0: Selected rate control algorithm 'minstrel'
[    6.495482] ath5k phy0: Atheros AR2414 chip found (MAC: 0x79, PHY: 0x45)

# ifup wlan0 (this associates with an IEEE 802.11d compatible access point,
  sending a country IE for 'DE' (2.4 GHz only) - which intersects away the 
  5 GHz band)

[ 2670.265830] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 2670.265966] cfg80211: Calling CRDA for country: DE
[ 2670.275463] cfg80211: Received country IE:
[ 2670.275471] cfg80211: Regulatory domain: DE
[ 2670.275475]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[ 2670.275482]     (2402000 KHz - 2482000 KHz @ 40000 KHz), (10000 mBi, 2000 
mBm)
[ 2670.275486] cfg80211: CRDA thinks this should applied:
[ 2670.275489] cfg80211: Regulatory domain: DE
[ 2670.275492]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[ 2670.275497]     (2400000 KHz - 2483500 KHz @ 40000 KHz), (N/A, 2000 mBm)
[ 2670.275502]     (5150000 KHz - 5350000 KHz @ 40000 KHz), (N/A, 2000 mBm)
[ 2670.275507]     (5470000 KHz - 5725000 KHz @ 40000 KHz), (N/A, 2698 mBm)
[ 2670.275511] cfg80211: We intersect both of these and get:
[ 2670.275514] cfg80211: Regulatory domain: 98
[ 2670.275517]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[ 2670.275522]     (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm)
[ 2670.275536] cfg80211: Disabling channel 2484 MHz on phy1 due to Country IE
[ 2670.275542] cfg80211: Current regulatory domain updated by AP to: DE
[ 2670.275545]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[ 2670.275550]     (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm)

# iw reg set US

[ 2796.116578] cfg80211: Calling CRDA for country: US
[ 2796.125891] cfg80211: Current regulatory domain intersected:
[ 2796.125898]     (start_freq - end_freq @ bandwidth), (max_antenna_gain, 
max_eirp)
[ 2796.125905]     (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm)

* channel 12/ 13 are gone now, they're not allowed by US regulatory domain 
* laws.

# iw reg get
country 98:
        (2402 - 2472 @ 40), (N/A, 20)

* even if you use "iw reg set DE" again, channel 12/ 13 won't re-appear,
* because the regulatory domain framework doesn't allow relaxing regulatory
* domain settings.

Regards
        Stefan Lippers-Hollmann

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---

Reply via email to