51009b3b42
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
292 lines
8.0 KiB
Plaintext
292 lines
8.0 KiB
Plaintext
menu "Kernel"
|
|
|
|
config BR2_LINUX_KERNEL
|
|
bool "Linux Kernel"
|
|
help
|
|
Enable this option if you want to build a Linux kernel for
|
|
your embedded device
|
|
|
|
if BR2_LINUX_KERNEL
|
|
|
|
#
|
|
# Version selection. We provide the choice between:
|
|
#
|
|
# 1. A single fairly recent stable kernel version
|
|
# 2. In case an internal toolchain has been built, the same kernel
|
|
# version as the kernel headers
|
|
# 3. A custom stable version
|
|
# 4. A custom tarball
|
|
#
|
|
choice
|
|
prompt "Kernel version"
|
|
|
|
config BR2_LINUX_KERNEL_3_6
|
|
bool "3.6"
|
|
|
|
config BR2_LINUX_KERNEL_SAME_AS_HEADERS
|
|
bool "Same as toolchain kernel headers"
|
|
depends on BR2_TOOLCHAIN_BUILDROOT
|
|
help
|
|
This option will re-use the same kernel sources as the one
|
|
that have been used for the kernel headers of the
|
|
cross-compiling toolchain. Having the same version for the
|
|
kernel running on the system and for the kernel headers is
|
|
not a requirement, but using the same version allows to
|
|
download only one tarball of the kernel sources.
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_VERSION
|
|
bool "Custom version"
|
|
help
|
|
This option allows to use a specific 2.6.x or 2.6.x.y
|
|
official versions, as available on kernel.org
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_TARBALL
|
|
bool "Custom tarball"
|
|
help
|
|
This option allows to specify the http or ftp location of a
|
|
specific kernel source tarball
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_GIT
|
|
bool "Custom Git tree"
|
|
help
|
|
This option allows Buildroot to get the Linux kernel source
|
|
code from a Git repository.
|
|
|
|
endchoice
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE
|
|
string "Kernel version"
|
|
depends on BR2_LINUX_KERNEL_CUSTOM_VERSION
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION
|
|
string "URL of custom kernel tarball"
|
|
depends on BR2_LINUX_KERNEL_CUSTOM_TARBALL
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_GIT_REPO_URL
|
|
string "URL of custom Git repository"
|
|
depends on BR2_LINUX_KERNEL_CUSTOM_GIT
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_GIT_VERSION
|
|
string "Custom Git version"
|
|
default "HEAD"
|
|
depends on BR2_LINUX_KERNEL_CUSTOM_GIT
|
|
help
|
|
Git revision to use in the format used by git rev-parse,
|
|
E.G. a sha id, a tag, branch, ..
|
|
|
|
config BR2_LINUX_KERNEL_VERSION
|
|
string
|
|
default "3.6" if BR2_LINUX_KERNEL_3_6
|
|
default BR2_DEFAULT_KERNEL_HEADERS if BR2_LINUX_KERNEL_SAME_AS_HEADERS
|
|
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE if BR2_LINUX_KERNEL_CUSTOM_VERSION
|
|
default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
|
|
default $BR2_LINUX_KERNEL_CUSTOM_GIT_VERSION if BR2_LINUX_KERNEL_CUSTOM_GIT
|
|
|
|
#
|
|
# Patch selection
|
|
#
|
|
|
|
config BR2_LINUX_KERNEL_PATCH
|
|
string "Custom kernel patches"
|
|
help
|
|
A space-separated list of patches to apply to the
|
|
kernel. Each patch can be described as an URL, a local file
|
|
path, or a directory. In the case of a directory, all files
|
|
matching linux-*.patch in the directory will be applied.
|
|
|
|
#
|
|
# Configuration selection
|
|
#
|
|
|
|
choice
|
|
prompt "Kernel configuration"
|
|
default BR2_LINUX_KERNEL_USE_DEFCONFIG
|
|
|
|
config BR2_LINUX_KERNEL_USE_DEFCONFIG
|
|
bool "Using a defconfig"
|
|
|
|
config BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
|
|
bool "Using a custom config file"
|
|
|
|
endchoice
|
|
|
|
config BR2_LINUX_KERNEL_DEFCONFIG
|
|
string "Defconfig name"
|
|
depends on BR2_LINUX_KERNEL_USE_DEFCONFIG
|
|
help
|
|
Name of the kernel defconfig file to use, without the
|
|
trailing _defconfig. The defconfig is located in
|
|
arch/<arch>/configs in the kernel tree.
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE
|
|
string "Configuration file path"
|
|
depends on BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
|
|
help
|
|
Path to the kernel configuration file
|
|
|
|
#
|
|
# Binary format
|
|
#
|
|
|
|
config BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
bool
|
|
|
|
choice
|
|
prompt "Kernel binary format"
|
|
|
|
config BR2_LINUX_KERNEL_UIMAGE
|
|
bool "uImage"
|
|
depends on BR2_arm || BR2_armeb || BR2_bfin || BR2_powerpc || BR2_avr32 || BR2_sh || BR2_sh64
|
|
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
|
|
config BR2_LINUX_KERNEL_APPENDED_UIMAGE
|
|
bool "uImage with appended DT"
|
|
depends on BR2_arm || BR2_armeb
|
|
select BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
select BR2_LINUX_KERNEL_APPENDED_DTB
|
|
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
|
|
config BR2_LINUX_KERNEL_BZIMAGE
|
|
bool "bzImage"
|
|
depends on BR2_i386 || BR2_x86_64
|
|
|
|
config BR2_LINUX_KERNEL_ZIMAGE
|
|
bool "zImage"
|
|
depends on BR2_arm || BR2_armeb || BR2_powerpc || BR2_sparc || BR2_sh || BR2_sh64
|
|
|
|
config BR2_LINUX_KERNEL_APPENDED_ZIMAGE
|
|
bool "zImage with appended DT"
|
|
depends on BR2_arm || BR2_armeb
|
|
select BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
select BR2_LINUX_KERNEL_APPENDED_DTB
|
|
|
|
config BR2_LINUX_KERNEL_CUIMAGE
|
|
bool "cuImage"
|
|
depends on BR2_powerpc
|
|
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
select BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
|
|
|
|
config BR2_LINUX_KERNEL_SIMPLEIMAGE
|
|
bool "simpleImage"
|
|
depends on BR2_microblaze
|
|
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
select BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
|
|
|
|
config BR2_LINUX_KERNEL_LINUX_BIN
|
|
bool "linux.bin"
|
|
depends on BR2_microblaze
|
|
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
|
select BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
|
|
|
|
config BR2_LINUX_KERNEL_VMLINUX_BIN
|
|
bool "vmlinux.bin"
|
|
depends on BR2_mips || BR2_mipsel || BR2_sh || BR2_sh64
|
|
|
|
config BR2_LINUX_KERNEL_VMLINUX
|
|
bool "vmlinux"
|
|
|
|
config BR2_LINUX_KERNEL_VMLINUZ
|
|
bool "vmlinuz"
|
|
depends on BR2_mips || BR2_mipsel
|
|
|
|
config BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
|
|
bool "custom target"
|
|
help
|
|
For certain cases a board-specific target image must be
|
|
used. For example, on powerPC where the OpenFirmware
|
|
description is attached in a board-specific kernel image
|
|
target like 'cuImage.mpc8379_rdb'.
|
|
|
|
Select this option and specify the make target in "Kernel
|
|
image target name".
|
|
|
|
endchoice
|
|
|
|
config BR2_LINUX_KERNEL_IMAGE_TARGET_NAME
|
|
string "Kernel image target name"
|
|
depends on BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
|
|
help
|
|
Specify the kernel make target to build the kernel that you
|
|
need.
|
|
|
|
config BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
bool "Device tree support"
|
|
help
|
|
Compile a device tree source into a device tree blob.
|
|
Select the dts file to compile in the options below.
|
|
|
|
if BR2_LINUX_KERNEL_DTS_SUPPORT
|
|
|
|
# We have mainly three cases when it comes to device tree support:
|
|
# 1) We don't want any support at all. Then the ..DTS_SUPPORT
|
|
# variable won't be set
|
|
# 2) We want device tree support, so we need the user to enter
|
|
# the device tree name or the the path to the custom device
|
|
# he uses, but the kernel abstracts this from us and only
|
|
# build an image that looks like a regular kernel image. In
|
|
# this case, we only need to derive the kernel image name from
|
|
# the given device tree name, and all the rest is as usual
|
|
# 3) We want device tree support, but the kernel requires us to
|
|
# build the device tree blob separately. In this case, some
|
|
# more logic will be needed.
|
|
# The variable below address the second case, were you only want
|
|
# limited actions from buildroot.
|
|
config BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
|
|
bool
|
|
|
|
config BR2_LINUX_KERNEL_APPENDED_DTB
|
|
bool
|
|
|
|
choice
|
|
prompt "Device tree source"
|
|
default BR2_LINUX_KERNEL_USE_INTREE_DTS
|
|
|
|
config BR2_LINUX_KERNEL_USE_INTREE_DTS
|
|
bool "Use a device tree present in the kernel."
|
|
help
|
|
Use a device tree source distributed with
|
|
the kernel sources. The dts files are located
|
|
in the arch/<arch>/boot/dts folder.
|
|
|
|
config BR2_LINUX_KERNEL_USE_CUSTOM_DTS
|
|
bool "Use a custom device tree file"
|
|
help
|
|
Use a custom device tree file, i.e, a device
|
|
tree file that does not belong to the kernel
|
|
source tree.
|
|
endchoice
|
|
|
|
config BR2_LINUX_KERNEL_INTREE_DTS_NAME
|
|
string "Device Tree Source file name"
|
|
depends on BR2_LINUX_KERNEL_USE_INTREE_DTS
|
|
help
|
|
Name of the device tree source file, without
|
|
the trailing .dts
|
|
|
|
config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
|
|
string "Device Tree Source file path"
|
|
depends on BR2_LINUX_KERNEL_USE_CUSTOM_DTS
|
|
help
|
|
Path to the device tree source file
|
|
|
|
endif
|
|
|
|
config BR2_LINUX_KERNEL_INSTALL_TARGET
|
|
bool "Install kernel image to /boot in target"
|
|
depends on !BR2_TARGET_ROOTFS_INITRAMFS
|
|
help
|
|
Select this option to have the kernel image installed to
|
|
/boot in the target root filesystem, as is typically done on
|
|
x86/x86_64 systems.
|
|
|
|
|
|
# Linux extensions
|
|
source "linux/Config.ext.in"
|
|
|
|
endif # BR2_LINUX_KERNEL
|
|
|
|
endmenu
|