summaryrefslogtreecommitdiffstats
path: root/platforms/kernel.in
blob: 30b70f28349bb87219716edb47298e34dd526410 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
## SECTION=base_kernel

menuconfig KERNEL
	bool
	default y
	select HOST_U_BOOT_TOOLS	if KERNEL_IMAGE_U || (KERNEL_IMAGE_SIMPLE && ARCH_MICROBLAZE)
	select HOST_ZSTD		if KERNEL_ZSTD
	select HOST_XZ			if KERNEL_XZ
	select HOST_LZOP		if KERNEL_LZOP
	select HOST_LZ4			if KERNEL_LZ4
	select HOST_LIBKMOD		if KERNEL_MODULES
	select HOST_SYSTEM_BC
	select HOST_OPENSSL		if KERNEL_OPENSSL
	select HOST_LIBELF		if KERNEL_LIBELF
	prompt "Linux kernel                  "

if KERNEL

config KERNEL_XPKG
	bool
	help
	  Select this symbol if kernel tools or other non kernel
	  modules are installed.

config KERNEL_INSTALL
	bool
	prompt "install kernel into /boot"
	select KERNEL_XPKG

config KERNEL_MODULES
	bool
	default y
	prompt "build kernel-modules"

config KERNEL_MODULES_INSTALL
	bool
	default y
	prompt "Install modules into /lib/modules"
	depends on KERNEL_MODULES

config KERNEL_VERSION
	prompt "kernel version"
	string
	default "4.15"

config KERNEL_MD5
	prompt "kernel source md5sum"
	string

choice
	prompt "Image Type          "
	default KERNEL_IMAGE_BZ

	config KERNEL_IMAGE_BZ
		bool
		prompt "bzImage"
		help
		 This usually is the target to be used on ia32 platforms. It
		 is not limited in size (to be more precise: Limited up to 4MiB).

	config KERNEL_IMAGE_Z
		bool
		prompt "zImage "
		help
		 This usually is a target to be used on ia32 platforms, it
		 is the older format and limited to about 500k in size due to
		 low memory size restrictions.

	config KERNEL_IMAGE_XIP
		bool
		prompt "xipImage"
		help
		  Create eXecute In Place Image.

	config KERNEL_IMAGE_U
		bool
		prompt "uImage "
		help
		 This is the target for most non ia32 platforms like PowerPC
		 and ARM architectures. Its a compressed image with additional
		 embedded information.

	config KERNEL_IMAGE_VM
		bool
		prompt "vmImage"
		help
		 This is the target for non ia32 platforms like blackfin
		 architectures.

	config KERNEL_IMAGE_VMLINUX
		bool
		prompt "vmlinux"
		help
		 This is the target to get the kernel image as an ELF. Mostly
		 used for debugging purposes.

	config KERNEL_IMAGE_VMLINUZ
		bool
		prompt "vmlinuz"
		help
		 This is the target to get the compressed kernel image as an ELF.
		 Mostly used for debugging purposes or for MIPS.

	config KERNEL_IMAGE_RAW
		bool
		prompt "Image"
		help
		 This is the target to get the kernel image as an raw uncompressed
		 binary file.
	config KERNEL_IMAGE_SIMPLE
		bool
		prompt "simpleImage"
		help
		  Create a simple Image with embedded DTB.
endchoice

if KERNEL_IMAGE_SIMPLE

config KERNEL_IMAGE_SIMPLE_TARGET
	prompt "name of simple image"
	string
	default "virtex405-xup"
	help
	  Name of created simple kernel image e.g.
	  the "virtex405-xup" of "simpleImage.virtex405-xup.elf"

config KERNEL_IMAGE_SIMPLE_DTS
	prompt "path to DTS file"
	string
	default "${PTXDIST_PLATFORMCONFIGDIR}/simpleImage.dts"
	help
	  This specifies the "dts" file used to create your simple
	  image.

	  The default is "${PTXDIST_PLATFORMCONFIGDIR}/simpleImage.dts".

	  The path "${PTXDIST_PLATFORMCONFIGDIR}" is the directory
	  where your platformconfig file is located.

endif

config KERNEL_IMAGE
	string
	default "bzImage"	if KERNEL_IMAGE_BZ
	default "Image.gz"	if KERNEL_IMAGE_Z && ARCH_ARM64
	default "zImage"	if KERNEL_IMAGE_Z
	default "xipImage"	if KERNEL_IMAGE_XIP
	default "uImage"	if KERNEL_IMAGE_U
	default "vmImage"	if KERNEL_IMAGE_VM
	default "vmlinux"	if KERNEL_IMAGE_VMLINUX
	default "vmlinuz"	if KERNEL_IMAGE_VMLINUZ
	default "Image"		if KERNEL_IMAGE_RAW
	default "simpleImage.${PTXCONF_KERNEL_IMAGE_SIMPLE_TARGET}.elf" if KERNEL_IMAGE_SIMPLE

config KERNEL_ZSTD
	prompt "build zstd hosttool"
	bool
	help
	  Select this if you're going to build your kernel compressed
	  with zstd and your host system is lacking the proper tools
	  (the "zstd" package).

	  Select this if you're unsure, as it won't hurt. It just
	  increases the build time.

config KERNEL_XZ
	prompt "build xz-utils hosttool"
	bool
	help
	  Select this if you're going to build your kernel compressed
	  with lzma and your host system is lacking the proper tools
	  ("xz-utils" or the deprecated "lzma" package).

	  Select this if you're unsure, as it won't hurt. It just
	  increases the build time.

config KERNEL_LZOP
	prompt "build lzop hosttool"
	bool
	help
	  Select this if you're going to build your kernel compressed
	  with lzo and your host system is lacking the proper tools
	  (the "lzop" package).

	  Select this if you're unsure, as it won't hurt. It just
	  increases the build time.

config KERNEL_LZ4
	prompt "build lz4 hosttool"
	bool
	help
	  Select this if you're going to build your kernel compressed
	  with lz4 and your host system is lacking the proper tools
	  (the "lz4" package).

	  Select this if you're unsure, as it won't hurt. It just
	  increases the build time.

config KERNEL_OPENSSL
	prompt "build openssl hosttool"
	bool
	help
	  Select this if you're going to build your kernel with support for
	  module signing, IMA etc. where openssl is need as hosttool.

	  Select this if you're unsure, as it won't hurt. It just
	  increases the build time.

config KERNEL_LIBELF
	prompt "build libelf host library"
	bool
	help
	  Select this if you're going to build your kernel with
	  STACK_VALIDATION enabled. Stack validation is used for the orc
	  unwinder for kernel version >= v4.14 on x86_64.

config KERNEL_GCC_PLUGINS
	prompt "allow gcc plugins"
	bool
	help
	  The kernel kconfig options to enable gcc plugins depend on a
	  sufficiently new host compiler. As a result, the kernel config
	  may change with a different host compiler version.
	  If this option is disabled then the environment is manipulated
	  to ensure that the compiler check always fails. This keeps the
	  kernel config stable.
	  Enable this option when the kernel gcc plugins are used.

config KERNEL_CONFIG_BASE_VERSION
	prompt "use base version in the kernelconfig"
	bool
	help
	  When the BSP contains a patch stack for the kernel, then it is
	  often useful to modify EXTRAVERSION with one of the patches. This
	  makes it easier to detect which version of the patch stack was
	  used to build the currently running kernel.
	  However, this means that the comment at the beginning of the
	  kernel config changes with each new revision of the patch stack.

	  When this option is enabled, then the version in the kernel
	  config is overwritten with the version from
	  PTXCONF_KERNEL_VERSION. The version built into the kernel remains
	  unchanged.

menu "patching & configuration      "

config KERNEL_SERIES
	prompt "patch series file"
	string
	default "series"
	help
	  This entry specifies a patch series file which has to live in
	  the kernel patches directory.

	  The series file contains lines with names of patch files which
	  are then being applied to the kernel.

config KERNEL_CONFIG
	prompt "kernel config file"
	string
	default "kernelconfig"
	help
	  This entry specifies the .config file used to compile your kernel.
	  Specify the path relative to the platformconfig directory.

endmenu


comment "Development features"

config KERNEL_EXTRA_MAKEVARS
	string
	default ""
	prompt "Additional kbuild options"
	help
	  Specify extra parameters for the kernel build system here. Useful
	  options include:

	  * CONFIG_DEBUG_SECTION_MISMATCH=y
	  Enable this feature if you want the kernel's buildsystem to check for
	  section mismatches (__devinit/__devexit, __init/__exit). This
	  entry is valid for 2.6.25 kernels and above. Previous kernel versions
	  do this check automatically. Enabling this feature is recommended
	  for kernel development only because it changes how code is inlined.
	  Changing this entry will rebuild the whole kernel.

	  * C=1
	  Run sparse when compiling.

	  * V=1
	  Increase verbosity when compiling.

endif	# KERNEL