Search Linux Wireless

Re: Regulatory Framework & rt2x00.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 03, 2008 at 01:20:08PM -0700, Gertjan van Wingerde wrote:
> My tests on the Ralink devices I have show that indeed the PCI devices
> do not contain a region indication in EEPROM. However, all the USB
> devices I have do contain such an indication (or one indication per band).

Even if they have one if the docs say to ignore it then I'd ignore it.

> Do you have any sample code available on how the Atheros devices
> interact with the regulatory framework with their EEPROM values?

Nope, not yet, rigth now we register the channels based on our EEPROM,
and the user sets the regulatory domain to enhance regulatory domain
enforcement. Later once we want to allow world roaming and support
parsing Country IEs we will take on registering all our supported
channels and then use the reg_notifier() to review the data passed
for the alpha2.

> OK. I guess that depends on what model we want to have with Linux. For
> me, the user should always have the possibility to override the HW
> settings on region, as he might have taken the HW he bought in one
> region of the world to another.

This should only be possible if the devices were designed to world roam.
Remember that world roaming is part of the IEEE-802.11 specs, and by
default devices should be assumed to not be capable of it.

For example iwl3945 or iwlagn driveres are not capable of world roaming
because as of right now these devices are not designed to allow the
driver to *add* new channels.

Also keep in mind vendors tend to want to respect the EEPROM
map of the regulatory domain. This is to deal with two issues:

1. Rogue APs sending sending a strange channels for an alpha2 through
   a Country IE

2. Vendor's customers tend to like to stick sometimes to frequency
   ranges which may be old in terms of regulatory rules because
   although the device is capable of other frequencies the customer
   may not have tested the device or certified it under the other
   channels even adding a new channel may be seen as a feature.

So it really depends. The answer to these questions *are* really
vendor dependant and I what I would *highly* recommend is to take
a conservative approach unless you have the vendor's blessing
to do things differently, even if the vendor is not being
cooeperative. Keep in mind though that doing this requires
developer effort though so I can see why we won't have all drivers
using regulatory_hint() and a reg_notifier() for example. But
developers are forthcoming to write this then great -- if you
don't get vendor support to enhance this then its really up us
to decide what is best.

> So, as far as I am concerned the EEPROM
> information is just an initial setting, which may be overridden later.

It depends on the vendor and their policies. For ath9k for example
this is not true -- the regulatory infrastructure allows the driver
to use your EEPROM map in case vendors wish to think their map
is the better source of knowledge.

> So, at the moment, I'm not interested in using the notifier.

It requires quite some work so I can understand why you may not
be inclined to use it, but if you do get vendor support I'd
be nice for you to reconsider. Up to you though of course, as
you are doing the work :)

> I'm not entirely sure yet. The basic question I have is that if I have a
> device with has in EEPROM a region setting of US for the 5GHz band and
> EU for the 2GHz band, what do I pass to the regulatory_hint function?

Think about this for a second -- does this make any sense? I don't see
how. Perhaps this is why its not recommended you rely on it. In the end,
you won't know unless you ask the vendor.

  Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux