kernel_wireless_regdb: Add class for embedding regulatory data into older kernel

Linux kernels before v4.15, allowed to be compiled with static
regulatory database if it was put under net/wireless/db.txt.

Add kernel_wireless_regdb class which allows in such cases to embed the
wireless regulatory database directly in the Linux kernel during build
process.

Usage:
1. The class should be inherited by kernel recipe (e.g. in
   linux-yocto_%.bbappend).
2. For Linux kernels up to v4.14, build kernel with CONFIG_EXPERT and
   CONFIG_CFG80211_INTERNAL_REGDB.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Krzysztof Kozlowski
2018-07-05 20:58:12 +02:00
committed by Khem Raj
parent 20e3c3e2e4
commit 8603b7643b
2 changed files with 29 additions and 0 deletions
@@ -0,0 +1,20 @@
# Linux kernels before v4.15, allowed to be compiled with static
# regulatory database if it was put under net/wireless/db.txt.
#
# This class copies the regulatory plaintext database to kernel sources before
# compiling.
#
# Usage:
# 1. The class should be inherited by kernel recipe (e.g. in
# linux-yocto_%.bbappend).
# 2. For Linux kernels up to v4.14, build kernel with CONFIG_EXPERT and
# CONFIG_CFG80211_INTERNAL_REGDB.
DEPENDS += "wireless-regdb-native"
SRCTREECOVEREDTASKS += "do_kernel_add_regdb"
do_kernel_add_regdb() {
cp ${STAGING_LIBDIR_NATIVE}/crda/db.txt ${S}/net/wireless/db.txt
}
do_kernel_add_regdb[dirs] = "${S}"
addtask kernel_add_regdb before do_build after do_configure