dhcpcd: install dhcpcd as /usr/sbin/dhcpcd.
[buildroot-gz.git] / linux / Config.in
blobcfb74d45207956d52cc9d01c3c7ae8b8b112664f
1 menu "Kernel"
3 config BR2_LINUX_KERNEL
4         bool "Linux Kernel"
5         help
6           Enable this option if you want to build a Linux kernel for
7           your embedded device
9 if BR2_LINUX_KERNEL
12 # Version selection. We provide the choice between:
14 #  1. A single fairly recent stable kernel version
15 #  2. In case an internal toolchain has been built, the same kernel
16 #     version as the kernel headers
17 #  3. A custom stable version
18 #  4. A custom tarball
20 choice
21         prompt "Kernel version"
23 config BR2_LINUX_KERNEL_LATEST_VERSION
24         bool "3.12.6"
26 config BR2_LINUX_KERNEL_SAME_AS_HEADERS
27         bool "Same as toolchain kernel headers"
28         depends on BR2_TOOLCHAIN_BUILDROOT
29         help
30           This option will re-use the same kernel sources as the one
31           that have been used for the kernel headers of the
32           cross-compiling toolchain. Having the same version for the
33           kernel running on the system and for the kernel headers is
34           not a requirement, but using the same version allows to
35           download only one tarball of the kernel sources.
37 config BR2_LINUX_KERNEL_CUSTOM_VERSION
38         bool "Custom version"
39         help
40           This option allows to use a specific official version from
41           kernel.org, like 2.6.x, 2.6.x.y, 3.x.y, ...
43 config BR2_LINUX_KERNEL_CUSTOM_TARBALL
44         bool "Custom tarball"
45         help
46           This option allows to specify the http or ftp location of a
47           specific kernel source tarball
49 config BR2_LINUX_KERNEL_CUSTOM_GIT
50         bool "Custom Git repository"
51         help
52           This option allows Buildroot to get the Linux kernel source
53           code from a Git repository.
55 config BR2_LINUX_KERNEL_CUSTOM_HG
56         bool "Custom Mercurial repository"
57         help
58           This option allows Buildroot to get the Linux kernel source
59           code from a Mercurial repository.
61 endchoice
63 config BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE
64         string "Kernel version"
65         depends on BR2_LINUX_KERNEL_CUSTOM_VERSION
67 config BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION
68         string "URL of custom kernel tarball"
69         depends on BR2_LINUX_KERNEL_CUSTOM_TARBALL
71 if BR2_LINUX_KERNEL_CUSTOM_GIT || BR2_LINUX_KERNEL_CUSTOM_HG
73 config BR2_LINUX_KERNEL_CUSTOM_REPO_URL
74         string "URL of custom repository"
75         default BR2_LINUX_KERNEL_CUSTOM_GIT_REPO_URL \
76                 if BR2_LINUX_KERNEL_CUSTOM_GIT_REPO_URL != ""  # legacy
78 config BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION
79         string "Custom repository version"
80         default BR2_LINUX_KERNEL_CUSTOM_GIT_VERSION \
81                 if BR2_LINUX_KERNEL_CUSTOM_GIT_VERSION != ""  # legacy
82         help
83           Revision to use in the typical format used by Git/Mercurial
84           E.G. a sha id, a tag, branch, ..
86 endif
88 config BR2_LINUX_KERNEL_VERSION
89         string
90         default "3.12.6" if BR2_LINUX_KERNEL_LATEST_VERSION
91         default BR2_DEFAULT_KERNEL_HEADERS if BR2_LINUX_KERNEL_SAME_AS_HEADERS
92         default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
93                 if BR2_LINUX_KERNEL_CUSTOM_VERSION
94         default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
95         default BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION \
96                 if BR2_LINUX_KERNEL_CUSTOM_GIT || BR2_LINUX_KERNEL_CUSTOM_HG
99 # Patch selection
102 config BR2_LINUX_KERNEL_PATCH
103         string "Custom kernel patches"
104         help
105           A space-separated list of patches to apply to the
106           kernel. Each patch can be described as an URL, a local file
107           path, or a directory. In the case of a directory, all files
108           matching linux-*.patch in the directory will be applied.
111 # Configuration selection
114 choice
115         prompt "Kernel configuration"
116         default BR2_LINUX_KERNEL_USE_DEFCONFIG
118 config BR2_LINUX_KERNEL_USE_DEFCONFIG
119         bool "Using a defconfig"
121 config BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
122         bool "Using a custom config file"
124 endchoice
126 config BR2_LINUX_KERNEL_DEFCONFIG
127         string "Defconfig name"
128         depends on BR2_LINUX_KERNEL_USE_DEFCONFIG
129         help
130           Name of the kernel defconfig file to use, without the
131           trailing _defconfig.  The defconfig is located in
132           arch/<arch>/configs in the kernel tree.
134 config BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE
135         string "Configuration file path"
136         depends on BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
137         help
138           Path to the kernel configuration file
141 # Binary format
144 config BR2_LINUX_KERNEL_UBOOT_IMAGE
145         bool
147 choice
148         prompt "Kernel binary format"
150 config BR2_LINUX_KERNEL_UIMAGE
151         bool "uImage"
152         depends on BR2_arm || BR2_armeb || BR2_bfin || BR2_powerpc || BR2_avr32 || BR2_sh || BR2_sh64
153         select BR2_LINUX_KERNEL_UBOOT_IMAGE
155 config BR2_LINUX_KERNEL_APPENDED_UIMAGE
156         bool "uImage with appended DT"
157         depends on BR2_arm || BR2_armeb
158         select BR2_LINUX_KERNEL_DTS_SUPPORT
159         select BR2_LINUX_KERNEL_APPENDED_DTB
160         select BR2_LINUX_KERNEL_UBOOT_IMAGE
162 config BR2_LINUX_KERNEL_BZIMAGE
163         bool "bzImage"
164         depends on BR2_i386 || BR2_x86_64
166 config BR2_LINUX_KERNEL_ZIMAGE
167         bool "zImage"
168         depends on BR2_arm || BR2_armeb || BR2_powerpc || BR2_sparc || \
169                    BR2_sh || BR2_sh64 || BR2_xtensa
171 config BR2_LINUX_KERNEL_APPENDED_ZIMAGE
172         bool "zImage with appended DT"
173         depends on BR2_arm || BR2_armeb
174         select BR2_LINUX_KERNEL_DTS_SUPPORT
175         select BR2_LINUX_KERNEL_APPENDED_DTB
177 config BR2_LINUX_KERNEL_CUIMAGE
178         bool "cuImage"
179         depends on BR2_powerpc
180         select BR2_LINUX_KERNEL_UBOOT_IMAGE
181         select BR2_LINUX_KERNEL_DTS_SUPPORT
182         select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
184 config BR2_LINUX_KERNEL_SIMPLEIMAGE
185         bool "simpleImage"
186         depends on BR2_microblaze
187         select BR2_LINUX_KERNEL_UBOOT_IMAGE
188         select BR2_LINUX_KERNEL_DTS_SUPPORT
189         select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
191 config BR2_LINUX_KERNEL_LINUX_BIN
192         bool "linux.bin"
193         depends on BR2_microblaze
194         select BR2_LINUX_KERNEL_UBOOT_IMAGE
195         select BR2_LINUX_KERNEL_DTS_SUPPORT
196         select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
198 config BR2_LINUX_KERNEL_VMLINUX_BIN
199         bool "vmlinux.bin"
200         depends on BR2_mips || BR2_mipsel || BR2_sh || BR2_sh64
202 config BR2_LINUX_KERNEL_VMLINUX
203         bool "vmlinux"
205 config BR2_LINUX_KERNEL_VMLINUZ
206         bool "vmlinuz"
207         depends on BR2_mips || BR2_mipsel
209 config BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
210         bool "custom target"
211         help
212           For certain cases a board-specific target image must be
213           used.  For example, on powerPC where the OpenFirmware
214           description is attached in a board-specific kernel image
215           target like 'cuImage.mpc8379_rdb'.
217           Select this option and specify the make target in "Kernel
218           image target name".
220 endchoice
222 config BR2_LINUX_KERNEL_IMAGE_TARGET_NAME
223         string "Kernel image target name"
224         depends on BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
225         help
226           Specify the kernel make target to build the kernel that you
227           need.
229 config BR2_LINUX_KERNEL_UIMAGE_LOADADDR
230         string "load address (for 3.7+ multi-platform image)"
231         depends on BR2_arm || BR2_armeb
232         depends on BR2_LINUX_KERNEL_UIMAGE || BR2_LINUX_KERNEL_APPENDED_UIMAGE
233         help
234           If your ARM system's Linux kernel is configured with the new (3.7+)
235           multi-architecture support (CONFIG_ARCH_MULTIPLATFORM=y in your
236           kernel config), then it is necessary to specify a kernel load address
237           when building the uImage. This should be a hexadecimal string
238           beginning with 0x, for example: 0x00008000.
240           If unsure, let this option empty.
242 config BR2_LINUX_KERNEL_DTS_SUPPORT
243         bool "Device tree support"
244         help
245           Compile a device tree source into a device tree blob.
246           Select the dts file to compile in the options below.
248 if BR2_LINUX_KERNEL_DTS_SUPPORT
250 # We have mainly three cases when it comes to device tree support:
251 #   1) We don't want any support at all. Then the ..DTS_SUPPORT
252 #      variable won't be set
253 #   2) We want device tree support, so we need the user to enter
254 #      the device tree name or the the path to the custom device
255 #      he uses, but the kernel abstracts this from us and only
256 #      build an image that looks like a regular kernel image. In
257 #      this case, we only need to derive the kernel image name from
258 #      the given device tree name, and all the rest is as usual
259 #   3) We want device tree support, but the kernel requires us to
260 #      build the device tree blob separately. In this case, some
261 #      more logic will be needed.
262 # The variable below address the second case, were you only want
263 # limited actions from buildroot.
264 config BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
265         bool
267 config BR2_LINUX_KERNEL_APPENDED_DTB
268         bool
270 choice
271         prompt "Device tree source"
272         default BR2_LINUX_KERNEL_USE_INTREE_DTS
274 config BR2_LINUX_KERNEL_USE_INTREE_DTS
275         bool "Use a device tree present in the kernel."
276         help
277           Use a device tree source distributed with
278           the kernel sources. The dts files are located
279           in the arch/<arch>/boot/dts folder.
281 config BR2_LINUX_KERNEL_USE_CUSTOM_DTS
282         bool "Use a custom device tree file"
283         help
284           Use a custom device tree file, i.e, a device
285           tree file that does not belong to the kernel
286           source tree.
287 endchoice
289 config BR2_LINUX_KERNEL_INTREE_DTS_NAME
290         string "Device Tree Source file names"
291         depends on BR2_LINUX_KERNEL_USE_INTREE_DTS
292         help
293           Name of the device tree source file, without
294           the trailing .dts. You can provide a list of
295           dts files to build, separated by spaces.
297 config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
298         string "Device Tree Source file path"
299         depends on BR2_LINUX_KERNEL_USE_CUSTOM_DTS
300         help
301           Path to the device tree source file
303 endif
305 config BR2_LINUX_KERNEL_INSTALL_TARGET
306         bool "Install kernel image to /boot in target"
307         depends on !BR2_TARGET_ROOTFS_INITRAMFS
308         help
309           Select this option to have the kernel image installed to
310           /boot in the target root filesystem, as is typically done on
311           x86/x86_64 systems.
313           Note that this option also installs the Device Tree Blobs to
314           /boot if DTBs have been generated by the kernel build
315           process.
317 # Linux extensions
318 source "linux/Config.ext.in"
320 endif # BR2_LINUX_KERNEL
322 endmenu