android_kernel_xiaomi_sm8350/net/wireless/Kconfig
Luis R. Rodriguez b2e1b30290 cfg80211: Add new wireless regulatory infrastructure
This adds the new wireless regulatory infrastructure. The
main motiviation behind this was to centralize regulatory
code as each driver was implementing their own regulatory solution,
and to replace the initial centralized code we have where:

* only 3 regulatory domains are supported: US, JP and EU
* regulatory domains can only be changed through module parameter
* all rules were built statically in the kernel

We now have support for regulatory domains for many countries
and regulatory domains are now queried through a userspace agent
through udev allowing distributions to update regulatory rules
without updating the kernel.

Each driver can regulatory_hint() a regulatory domain
based on either their EEPROM mapped regulatory domain value to a
respective ISO/IEC 3166-1 country code or pass an internally built
regulatory domain. We also add support to let the user set the
regulatory domain through userspace in case of faulty EEPROMs to
further help compliance.

Support for world roaming will be added soon for cards capable of
this.

For more information see:

http://wireless.kernel.org/en/developers/Regulatory/CRDA

For now we leave an option to enable the old module parameter,
ieee80211_regdom, and to build the 3 old regdomains statically
(US, JP and EU). This option is CONFIG_WIRELESS_OLD_REGULATORY.
These old static definitions and the module parameter is being
scheduled for removal for 2.6.29. Note that if you use this
you won't make use of a world regulatory domain as its pointless.
If you leave this option enabled and if CRDA is present and you
use US or JP we will try to ask CRDA to update us a regulatory
domain for us.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-09-15 16:48:19 -04:00

76 lines
2.6 KiB
Plaintext

config CFG80211
tristate "Improved wireless configuration API"
config NL80211
bool "nl80211 new netlink interface support"
depends on CFG80211
default y
---help---
This option turns on the new netlink interface
(nl80211) support in cfg80211.
If =n, drivers using mac80211 will be configured via
wireless extension support provided by that subsystem.
If unsure, say Y.
config WIRELESS_OLD_REGULATORY
bool "Old wireless static regulatory defintions"
default n
---help---
This option enables the old static regulatory information
and uses it within the new framework. This is available
temporarily as an option to help prevent immediate issues
due to the switch to the new regulatory framework which
does require a new userspace application which has the
database of regulatory information (CRDA) and another for
setting regulatory domains (iw).
For more information see:
http://wireless.kernel.org/en/developers/Regulatory/CRDA
http://wireless.kernel.org/en/users/Documentation/iw
It is important to note though that if you *do* have CRDA present
and if this option is enabled CRDA *will* be called to update the
regulatory domain (for US and JP only). Support for letting the user
set the regulatory domain through iw is also supported. This option
mainly exists to leave around for a kernel release some old static
regulatory domains that were defined and to keep around the old
ieee80211_regdom module parameter. This is being phased out and you
should stop using them ASAP.
Say N unless you cannot install a new userspace application
or have one currently depending on the ieee80211_regdom module
parameter and cannot port it to use the new userspace interfaces.
This is scheduled for removal for 2.6.29.
config WIRELESS_EXT
bool "Wireless extensions"
default n
---help---
This option enables the legacy wireless extensions
(wireless network interface configuration via ioctls.)
Wireless extensions will be replaced by cfg80211 and
will be required only by legacy drivers that implement
wireless extension handlers. This option does not
affect the wireless-extension backward compatibility
code in cfg80211.
Say N (if you can) unless you know you need wireless
extensions for external modules.
config WIRELESS_EXT_SYSFS
bool "Wireless extensions sysfs files"
default y
depends on WIRELESS_EXT && SYSFS
help
This option enables the deprecated wireless statistics
files in /sys/class/net/*/wireless/. The same information
is available via the ioctls as well.
Say Y if you have programs using it, like old versions of
hal.