Loading Documentation/networking/regulatory.txt +20 −2 Original line number Diff line number Diff line Loading @@ -200,5 +200,23 @@ Then in some part of your code after your wiphy has been registered: Statically compiled regulatory database --------------------------------------- When a database should be fixed into the kernel, it can be provided as a firmware file at build time that is then linked into the kernel. In most situations the userland solution using CRDA as described above is the preferred solution. However in some cases a set of rules built into the kernel itself may be desirable. To account for this situation, a configuration option has been provided (i.e. CONFIG_CFG80211_INTERNAL_REGDB). With this option enabled, the wireless database information contained in net/wireless/db.txt is used to generate a data structure encoded in net/wireless/regdb.c. That option also enables code in net/wireless/reg.c which queries the data in regdb.c as an alternative to using CRDA. The file net/wireless/db.txt should be kept up-to-date with the db.txt file available in the git repository here: git://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git Again, most users in most situations should be using the CRDA package provided with their distribution, and in most other situations users should be building and using CRDA on their own rather than using this option. If you are not absolutely sure that you should be using CONFIG_CFG80211_INTERNAL_REGDB then _DO_NOT_USE_IT_. net/wireless/.gitignore +1 −0 Original line number Diff line number Diff line regdb.c shipped-certs.c extra-certs.c net/wireless/Kconfig +23 −1 Original line number Diff line number Diff line Loading @@ -176,8 +176,30 @@ config CFG80211_DEBUGFS If unsure, say N. config CFG80211_INTERNAL_REGDB bool "use statically compiled regulatory rules database" if EXPERT default n depends on CFG80211 help This option generates an internal data structure representing the wireless regulatory rules described in net/wireless/db.txt and includes code to query that database. This is an alternative to using CRDA for defining regulatory rules for the kernel. Using this option requires some parsing of the db.txt at build time, the parser will be upkept with the latest wireless-regdb updates but older wireless-regdb formats will be ignored. The parser may later be replaced to avoid issues with conflicts on versions of wireless-regdb. For details see: http://wireless.kernel.org/en/developers/Regulatory Most distributions have a CRDA package. So if unsure, say N. config CFG80211_CRDA_SUPPORT bool "support CRDA" if EXPERT bool "support CRDA" if CFG80211_INTERNAL_REGDB default y help You should enable this option unless you know for sure you have no Loading net/wireless/Makefile +7 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,16 @@ cfg80211-y += pmsr.o cfg80211-$(CONFIG_OF) += of.o cfg80211-$(CONFIG_CFG80211_DEBUGFS) += debugfs.o cfg80211-$(CONFIG_CFG80211_WEXT) += wext-compat.o wext-sme.o cfg80211-$(CONFIG_CFG80211_INTERNAL_REGDB) += regdb.o CFLAGS_trace.o := -I$(src) clean-files += shipped-certs.c extra-certs.c $(obj)/regdb.c: $(src)/db.txt $(src)/genregdb.awk @$(AWK) -f $(srctree)/$(src)/genregdb.awk < $< > $@ clean-files := regdb.c cfg80211-$(CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS) += shipped-certs.o ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),) cfg80211-y += extra-certs.o Loading Loading @@ -57,4 +64,3 @@ $(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \ echo 'unsigned int extra_regdb_certs_len = sizeof(extra_regdb_certs);'; \ ) > $@) clean-files += shipped-certs.c extra-certs.c Loading
Documentation/networking/regulatory.txt +20 −2 Original line number Diff line number Diff line Loading @@ -200,5 +200,23 @@ Then in some part of your code after your wiphy has been registered: Statically compiled regulatory database --------------------------------------- When a database should be fixed into the kernel, it can be provided as a firmware file at build time that is then linked into the kernel. In most situations the userland solution using CRDA as described above is the preferred solution. However in some cases a set of rules built into the kernel itself may be desirable. To account for this situation, a configuration option has been provided (i.e. CONFIG_CFG80211_INTERNAL_REGDB). With this option enabled, the wireless database information contained in net/wireless/db.txt is used to generate a data structure encoded in net/wireless/regdb.c. That option also enables code in net/wireless/reg.c which queries the data in regdb.c as an alternative to using CRDA. The file net/wireless/db.txt should be kept up-to-date with the db.txt file available in the git repository here: git://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git Again, most users in most situations should be using the CRDA package provided with their distribution, and in most other situations users should be building and using CRDA on their own rather than using this option. If you are not absolutely sure that you should be using CONFIG_CFG80211_INTERNAL_REGDB then _DO_NOT_USE_IT_.
net/wireless/.gitignore +1 −0 Original line number Diff line number Diff line regdb.c shipped-certs.c extra-certs.c
net/wireless/Kconfig +23 −1 Original line number Diff line number Diff line Loading @@ -176,8 +176,30 @@ config CFG80211_DEBUGFS If unsure, say N. config CFG80211_INTERNAL_REGDB bool "use statically compiled regulatory rules database" if EXPERT default n depends on CFG80211 help This option generates an internal data structure representing the wireless regulatory rules described in net/wireless/db.txt and includes code to query that database. This is an alternative to using CRDA for defining regulatory rules for the kernel. Using this option requires some parsing of the db.txt at build time, the parser will be upkept with the latest wireless-regdb updates but older wireless-regdb formats will be ignored. The parser may later be replaced to avoid issues with conflicts on versions of wireless-regdb. For details see: http://wireless.kernel.org/en/developers/Regulatory Most distributions have a CRDA package. So if unsure, say N. config CFG80211_CRDA_SUPPORT bool "support CRDA" if EXPERT bool "support CRDA" if CFG80211_INTERNAL_REGDB default y help You should enable this option unless you know for sure you have no Loading
net/wireless/Makefile +7 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,16 @@ cfg80211-y += pmsr.o cfg80211-$(CONFIG_OF) += of.o cfg80211-$(CONFIG_CFG80211_DEBUGFS) += debugfs.o cfg80211-$(CONFIG_CFG80211_WEXT) += wext-compat.o wext-sme.o cfg80211-$(CONFIG_CFG80211_INTERNAL_REGDB) += regdb.o CFLAGS_trace.o := -I$(src) clean-files += shipped-certs.c extra-certs.c $(obj)/regdb.c: $(src)/db.txt $(src)/genregdb.awk @$(AWK) -f $(srctree)/$(src)/genregdb.awk < $< > $@ clean-files := regdb.c cfg80211-$(CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS) += shipped-certs.o ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),) cfg80211-y += extra-certs.o Loading Loading @@ -57,4 +64,3 @@ $(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \ echo 'unsigned int extra_regdb_certs_len = sizeof(extra_regdb_certs);'; \ ) > $@) clean-files += shipped-certs.c extra-certs.c