buildroot/linux/Config.ext.in
Nicolas POIROT 4de196a1ce support/scripts/br2-external: add kernel extensions
Buildroot documentation section 9.2.1.6 "Additional kernel extensions"
indicates support for kernel extensions defined in external buildroot
trees but unfortunately, there didn't seem to be any support in
br2-external script.

This patch copies 'init' code support to include external kernel
extensions defined in 'linux' dir at the br2-external root directory as
explained in documentation.

Signed-off-by: Nicolas POIROT <ni.poirot@laposte.net>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-06-22 22:22:30 +02:00

155 lines
4.9 KiB
Plaintext

menu "Linux Kernel Extensions"
#-------------------------------------------------------------------------------
# Xenomai
config BR2_LINUX_KERNEL_EXT_XENOMAI
bool "Adeos/Xenomai Real-time patch"
depends on BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS
depends on BR2_USE_MMU # xenomai
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # xenomai
depends on BR2_TOOLCHAIN_HAS_THREADS # xenomai
depends on !BR2_TOOLCHAIN_USES_MUSL # xenomai
select BR2_PACKAGE_XENOMAI
help
Xenomai is split in two parts: a kernel part and a userspace
part. Enabling this option automatically selects the Xenomai
package and helps in patching the Linux kernel built by
Buildroot with the Xenomai kernel part (ie Adeos/Ipipe).
You can find the currently supported kernel versions by
looking at the available patches in the Xenomai sources
tree: ksrc/arch/$(ARCH)/patches
However, it is recommended to use the latest version of the
Adeos/Ipipe patch available at
https://xenomai.org/downloads/ipipe/
Xenomai is know to support Blackfin, SH4, x86, ARM, NIOS2
and PowerPC architectures.
config BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH
string "Path/URL for Adeos patch file"
depends on BR2_LINUX_KERNEL_EXT_XENOMAI
help
Optionally, explicitly specify where to find the Adeos
patch to use.
Examples:
https://xenomai.org/downloads/ipipe/v4.x/arm/ipipe-core-4.19.33-arm-2.patch
or /home/foo/ipipe-core-4.19.33-arm-2.patch
Please verify that your kernel version in Buildroot matches.
comment "xenomai needs a uClibc or glibc toolchain w/ threads"
depends on BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
#-------------------------------------------------------------------------------
# RTAI
config BR2_LINUX_KERNEL_EXT_RTAI
bool "RTAI Real-time patch"
depends on !BR2_LINUX_KERNEL_LATEST_VERSION
depends on !BR2_LINUX_KERNEL_LATEST_CIP_VERSION
depends on !BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION
select BR2_PACKAGE_RTAI
help
RTAI Kernel part.
#-------------------------------------------------------------------------------
# ev3dev Linux drivers
config BR2_LINUX_KERNEL_EXT_EV3DEV_LINUX_DRIVERS
bool "ev3dev Linux drivers"
select BR2_PACKAGE_EV3DEV_LINUX_DRIVERS
help
Linux drivers for LEGO MINDSTORMS EV3 from the ev3dev project.
https://github.com/ev3dev/lego-linux-drivers
#-------------------------------------------------------------------------------
# fbtft
config BR2_LINUX_KERNEL_EXT_FBTFT
bool "FB TFT drivers"
select BR2_PACKAGE_FBTFT
help
Linux Framebuffer drivers for small TFT LCD display modules,
e.g. Adafruit PiTFT displays for Raspberry Pi (this extra
package is only needed for linux kernels until v3.19, since
v4.0 the drivers are included in the staging area).
To enable fbtft, e.g. for Adafruit 2.8 PiTFT, enable the
following kernel configurations:
- CONFIG_SPI
- CONFIG_GPIOLIB
- CONFIG_FB
- CONFIG_FB_TFT
- CONFIG_FB_TFT_ILI9341
https://github.com/notro/fbtft
# aufs-standalone
config BR2_LINUX_KERNEL_EXT_AUFS
bool "Aufs Filesystem Module patch"
select BR2_PACKAGE_AUFS
help
Aufs is split in two parts: a kernel part and a userspace
part. Enabling this option automatically selects the aufs
standalone (module) package and patches the Linux kernel
built by Buildroot with the aufs kernel part (ie fs/aufs).
It is important to use the correct branch of aufs-standalone.
if BR2_LINUX_KERNEL_EXT_AUFS
choice
bool "aufs-standalone series"
help
Select the major series of this version. This must match the
major version of your kernel (e.g. for kernels 3.x, select
aufs3.x; for kernels 4.x, select aufs4.x; for kernels 5.x,
select aufs5.x ).
Note: neither aufs1.x nor aufs2.x (both for kernels older than
3.x) are supported.
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES_3
bool "aufs3.x"
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES_4
bool "aufs4.x"
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES_5
bool "aufs5.x"
endchoice
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES
int
default 3 if BR2_LINUX_KERNEL_EXT_AUFS_SERIES_3
default 4 if BR2_LINUX_KERNEL_EXT_AUFS_SERIES_4
default 5 if BR2_LINUX_KERNEL_EXT_AUFS_SERIES_5
config BR2_LINUX_KERNEL_EXT_AUFS_VERSION
string "aufs-standalone version"
default ""
help
The version you choose must match that of your kernel.
Usually, the sha1 of the cset you want to use; avoid using a
branch name as this yields non-reproducible builds.
See the following resources to see what versions are
available:
For aufs3.x:
https://sourceforge.net/p/aufs/aufs3-standalone/ref/master/branches/
For aufs4.x:
https://github.com/sfjro/aufs4-standalone/branches/all
For aufs5.x:
https://github.com/sfjro/aufs5-standalone/branches/all
endif # aufs
# kernel extensions from br2-external trees, if any
source "$BR2_BASE_DIR/.br2-external.in.linux"
endmenu