xref: /OK3568_Linux_fs/u-boot/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#
2*4882a593Smuzhiyun# For a description of the syntax of this configuration file,
3*4882a593Smuzhiyun# see the file Documentation/kbuild/kconfig-language.txt in the
4*4882a593Smuzhiyun# Linux kernel source tree.
5*4882a593Smuzhiyun#
6*4882a593Smuzhiyunmainmenu "U-Boot $UBOOTVERSION Configuration"
7*4882a593Smuzhiyun
8*4882a593Smuzhiyunconfig UBOOTVERSION
9*4882a593Smuzhiyun	string
10*4882a593Smuzhiyun	option env="UBOOTVERSION"
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun# Allow defaults in arch-specific code to override any given here
13*4882a593Smuzhiyunsource "arch/Kconfig"
14*4882a593Smuzhiyun
15*4882a593Smuzhiyunmenu "General setup"
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunconfig BROKEN
18*4882a593Smuzhiyun	bool
19*4882a593Smuzhiyun	help
20*4882a593Smuzhiyun	  This option cannot be enabled. It is used as dependency
21*4882a593Smuzhiyun	  for broken and incomplete features.
22*4882a593Smuzhiyun
23*4882a593Smuzhiyunconfig LOCALVERSION
24*4882a593Smuzhiyun	string "Local version - append to U-Boot release"
25*4882a593Smuzhiyun	help
26*4882a593Smuzhiyun	  Append an extra string to the end of your U-Boot version.
27*4882a593Smuzhiyun	  This will show up in your boot log, for example.
28*4882a593Smuzhiyun	  The string you set here will be appended after the contents of
29*4882a593Smuzhiyun	  any files with a filename matching localversion* in your
30*4882a593Smuzhiyun	  object and source tree, in that order.  Your total string can
31*4882a593Smuzhiyun	  be a maximum of 64 characters.
32*4882a593Smuzhiyun
33*4882a593Smuzhiyunconfig LOCALVERSION_AUTO
34*4882a593Smuzhiyun	bool "Automatically append version information to the version string"
35*4882a593Smuzhiyun	default y
36*4882a593Smuzhiyun	help
37*4882a593Smuzhiyun	  This will try to automatically determine if the current tree is a
38*4882a593Smuzhiyun	  release tree by looking for Git tags that belong to the current
39*4882a593Smuzhiyun	  top of tree revision.
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun	  A string of the format -gxxxxxxxx will be added to the localversion
42*4882a593Smuzhiyun	  if a Git-based tree is found.  The string generated by this will be
43*4882a593Smuzhiyun	  appended after any matching localversion* files, and after the value
44*4882a593Smuzhiyun	  set in CONFIG_LOCALVERSION.
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun	  (The actual string used here is the first eight characters produced
47*4882a593Smuzhiyun	  by running the command:
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun	    $ git rev-parse --verify HEAD
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun	  which is done within the script "scripts/setlocalversion".)
52*4882a593Smuzhiyun
53*4882a593Smuzhiyunconfig CC_OPTIMIZE_FOR_SIZE
54*4882a593Smuzhiyun	bool "Optimize for size"
55*4882a593Smuzhiyun	default y
56*4882a593Smuzhiyun	help
57*4882a593Smuzhiyun	  Enabling this option will pass "-Os" instead of "-O2" to gcc
58*4882a593Smuzhiyun	  resulting in a smaller U-Boot image.
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun	  This option is enabled by default for U-Boot.
61*4882a593Smuzhiyun
62*4882a593Smuzhiyunconfig DISTRO_DEFAULTS
63*4882a593Smuzhiyun	bool "Select defaults suitable for booting general purpose Linux distributions"
64*4882a593Smuzhiyun	default y if ARCH_SUNXI || TEGRA
65*4882a593Smuzhiyun	default y if ARCH_LS2080A
66*4882a593Smuzhiyun	default y if ARCH_MESON
67*4882a593Smuzhiyun	default y if ARCH_ROCKCHIP
68*4882a593Smuzhiyun	default n
69*4882a593Smuzhiyun	select CMD_BOOTZ if ARM && !ARM64
70*4882a593Smuzhiyun	select CMD_BOOTI if ARM64
71*4882a593Smuzhiyun	select CMD_DHCP
72*4882a593Smuzhiyun	imply CMD_PXE
73*4882a593Smuzhiyun	select CMD_EXT2
74*4882a593Smuzhiyun	select CMD_EXT4
75*4882a593Smuzhiyun	select CMD_FAT
76*4882a593Smuzhiyun	select CMD_FS_GENERIC
77*4882a593Smuzhiyun	imply CMD_MII
78*4882a593Smuzhiyun	select CMD_PING
79*4882a593Smuzhiyun	select CMD_PART
80*4882a593Smuzhiyun	select HUSH_PARSER
81*4882a593Smuzhiyun	help
82*4882a593Smuzhiyun	  Select this to enable various options and commands which are suitable
83*4882a593Smuzhiyun	  for building u-boot for booting general purpose Linux distributions.
84*4882a593Smuzhiyun
85*4882a593Smuzhiyunconfig SYS_MALLOC_F
86*4882a593Smuzhiyun	bool "Enable malloc() pool before relocation"
87*4882a593Smuzhiyun	default y if DM
88*4882a593Smuzhiyun	help
89*4882a593Smuzhiyun	  Before relocation, memory is very limited on many platforms. Still,
90*4882a593Smuzhiyun	  we can provide a small malloc() pool if needed. Driver model in
91*4882a593Smuzhiyun	  particular needs this to operate, so that it can allocate the
92*4882a593Smuzhiyun	  initial serial device and any others that are needed.
93*4882a593Smuzhiyun
94*4882a593Smuzhiyunconfig SYS_MALLOC_F_LEN
95*4882a593Smuzhiyun	hex "Size of malloc() pool before relocation"
96*4882a593Smuzhiyun	depends on SYS_MALLOC_F
97*4882a593Smuzhiyun	default 0x400
98*4882a593Smuzhiyun	help
99*4882a593Smuzhiyun	  Before relocation, memory is very limited on many platforms. Still,
100*4882a593Smuzhiyun	  we can provide a small malloc() pool if needed. Driver model in
101*4882a593Smuzhiyun	  particular needs this to operate, so that it can allocate the
102*4882a593Smuzhiyun	  initial serial device and any others that are needed.
103*4882a593Smuzhiyun
104*4882a593Smuzhiyunconfig SPL_SYS_MALLOC_F_LEN
105*4882a593Smuzhiyun        hex "Size of malloc() pool in SPL before relocation"
106*4882a593Smuzhiyun        depends on SYS_MALLOC_F
107*4882a593Smuzhiyun        default SYS_MALLOC_F_LEN
108*4882a593Smuzhiyun        help
109*4882a593Smuzhiyun          Before relocation, memory is very limited on many platforms. Still,
110*4882a593Smuzhiyun          we can provide a small malloc() pool if needed. Driver model in
111*4882a593Smuzhiyun          particular needs this to operate, so that it can allocate the
112*4882a593Smuzhiyun          initial serial device and any others that are needed.
113*4882a593Smuzhiyun
114*4882a593Smuzhiyunconfig TPL_SYS_MALLOC_F_LEN
115*4882a593Smuzhiyun        hex "Size of malloc() pool in TPL before relocation"
116*4882a593Smuzhiyun        depends on SYS_MALLOC_F
117*4882a593Smuzhiyun        default SYS_MALLOC_F_LEN
118*4882a593Smuzhiyun        help
119*4882a593Smuzhiyun          Before relocation, memory is very limited on many platforms. Still,
120*4882a593Smuzhiyun          we can provide a small malloc() pool if needed. Driver model in
121*4882a593Smuzhiyun          particular needs this to operate, so that it can allocate the
122*4882a593Smuzhiyun          initial serial device and any others that are needed.
123*4882a593Smuzhiyun
124*4882a593Smuzhiyunmenuconfig EXPERT
125*4882a593Smuzhiyun	bool "Configure standard U-Boot features (expert users)"
126*4882a593Smuzhiyun	default y
127*4882a593Smuzhiyun	help
128*4882a593Smuzhiyun	  This option allows certain base U-Boot options and settings
129*4882a593Smuzhiyun	  to be disabled or tweaked. This is for specialized
130*4882a593Smuzhiyun	  environments which can tolerate a "non-standard" U-Boot.
131*4882a593Smuzhiyun	  Use this only if you really know what you are doing.
132*4882a593Smuzhiyun
133*4882a593Smuzhiyunif EXPERT
134*4882a593Smuzhiyun	config SYS_MALLOC_CLEAR_ON_INIT
135*4882a593Smuzhiyun	bool "Init with zeros the memory reserved for malloc (slow)"
136*4882a593Smuzhiyun	default y if !ARCH_ROCKCHIP
137*4882a593Smuzhiyun	help
138*4882a593Smuzhiyun	  This setting is enabled by default. The reserved malloc
139*4882a593Smuzhiyun	  memory is initialized with zeros, so first malloc calls
140*4882a593Smuzhiyun	  will return the pointer to the zeroed memory. But this
141*4882a593Smuzhiyun	  slows the boot time.
142*4882a593Smuzhiyun
143*4882a593Smuzhiyun	  It is recommended to disable it, when CONFIG_SYS_MALLOC_LEN
144*4882a593Smuzhiyun	  value, has more than few MiB, e.g. when uses bzip2 or bmp logo.
145*4882a593Smuzhiyun	  Then the boot time can be significantly reduced.
146*4882a593Smuzhiyun	  Warning:
147*4882a593Smuzhiyun	  When disabling this, please check if malloc calls, maybe
148*4882a593Smuzhiyun	  should be replaced by calloc - if one expects zeroed memory.
149*4882a593Smuzhiyun
150*4882a593Smuzhiyunconfig TOOLS_DEBUG
151*4882a593Smuzhiyun	bool "Enable debug information for tools"
152*4882a593Smuzhiyun	help
153*4882a593Smuzhiyun	  Enable generation of debug information for tools such as mkimage.
154*4882a593Smuzhiyun	  This can be used for debugging purposes. With debug information
155*4882a593Smuzhiyun	  it is possible to set breakpoints on particular lines, single-step
156*4882a593Smuzhiyun	  debug through the source code, etc.
157*4882a593Smuzhiyun
158*4882a593Smuzhiyunendif # EXPERT
159*4882a593Smuzhiyun
160*4882a593Smuzhiyunconfig PHYS_64BIT
161*4882a593Smuzhiyun	bool "64bit physical address support"
162*4882a593Smuzhiyun	help
163*4882a593Smuzhiyun	  Say Y here to support 64bit physical memory address.
164*4882a593Smuzhiyun	  This can be used not only for 64bit SoCs, but also for
165*4882a593Smuzhiyun	  large physical address extention on 32bit SoCs.
166*4882a593Smuzhiyun
167*4882a593Smuzhiyunendmenu		# General setup
168*4882a593Smuzhiyun
169*4882a593Smuzhiyunmenu "Boot images"
170*4882a593Smuzhiyun
171*4882a593Smuzhiyunconfig ANDROID_BOOT_IMAGE
172*4882a593Smuzhiyun	bool "Enable support for Android Boot Images"
173*4882a593Smuzhiyun	default y if FASTBOOT
174*4882a593Smuzhiyun	help
175*4882a593Smuzhiyun	  This enables support for booting images which use the Android
176*4882a593Smuzhiyun	  image format header.
177*4882a593Smuzhiyun
178*4882a593Smuzhiyunconfig FIT
179*4882a593Smuzhiyun	bool "Support Flattened Image Tree"
180*4882a593Smuzhiyun	help
181*4882a593Smuzhiyun	  This option allows you to boot the new uImage structure,
182*4882a593Smuzhiyun	  Flattened Image Tree.  FIT is formally a FDT, which can include
183*4882a593Smuzhiyun	  images of various types (kernel, FDT blob, ramdisk, etc.)
184*4882a593Smuzhiyun	  in a single blob.  To boot this new uImage structure,
185*4882a593Smuzhiyun	  pass the address of the blob to the "bootm" command.
186*4882a593Smuzhiyun	  FIT is very flexible, supporting compression, multiple images,
187*4882a593Smuzhiyun	  multiple configurations, verification through hashing and also
188*4882a593Smuzhiyun	  verified boot (secure boot using RSA).
189*4882a593Smuzhiyun
190*4882a593Smuzhiyunif FIT
191*4882a593Smuzhiyun
192*4882a593Smuzhiyunconfig FIT_ENABLE_SHA256_SUPPORT
193*4882a593Smuzhiyun	bool "Support SHA256 checksum of FIT image contents"
194*4882a593Smuzhiyun	select SHA256 if !DM_CRYPTO
195*4882a593Smuzhiyun	default y
196*4882a593Smuzhiyun	help
197*4882a593Smuzhiyun	  Enable this to support SHA256 checksum of FIT image contents. A
198*4882a593Smuzhiyun	  SHA256 checksum is a 256-bit (32-byte) hash value used to check that
199*4882a593Smuzhiyun	  the image contents have not been corrupted. SHA256 is recommended
200*4882a593Smuzhiyun	  for use in secure applications since (as at 2016) there is no known
201*4882a593Smuzhiyun	  feasible attack that could produce a 'collision' with differing
202*4882a593Smuzhiyun	  input data. Use this for the highest security. Note that only the
203*4882a593Smuzhiyun	  SHA256 variant is supported: SHA512 and others are not currently
204*4882a593Smuzhiyun	  supported in U-Boot.
205*4882a593Smuzhiyun
206*4882a593Smuzhiyunconfig FIT_ENABLE_RSA4096_SUPPORT
207*4882a593Smuzhiyun	bool "Support RSA4096 verification of FIT image contents"
208*4882a593Smuzhiyun	select RSA_SOFTWARE_EXP if !DM_CRYPTO
209*4882a593Smuzhiyun	default n
210*4882a593Smuzhiyun	help
211*4882a593Smuzhiyun	  Enable this to support RSA4096 checksum of FIT image contents. A
212*4882a593Smuzhiyun	  RSA4096 is a 4096-bit (512-byte) key used to check that
213*4882a593Smuzhiyun	  check if the content comes from an encryption party. RSA4096 is one
214*4882a593Smuzhiyun	  of algorithms recommended for use in secure applications since (as at 2016)
215*4882a593Smuzhiyun	  there is no known feasible attack that could produce a 'collision' with differing
216*4882a593Smuzhiyun	  input data. Use this for the higher security than RSA2048 in default.
217*4882a593Smuzhiyun
218*4882a593Smuzhiyunconfig FIT_SIGNATURE
219*4882a593Smuzhiyun	bool "Enable signature verification of FIT uImages"
220*4882a593Smuzhiyun	depends on DM
221*4882a593Smuzhiyun	select RSA
222*4882a593Smuzhiyun	select CONSOLE_DISABLE_CLI
223*4882a593Smuzhiyun	help
224*4882a593Smuzhiyun	  This option enables signature verification of FIT uImages,
225*4882a593Smuzhiyun	  using a hash signed and verified using RSA. If
226*4882a593Smuzhiyun	  CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
227*4882a593Smuzhiyun	  hashing is available using hardware, then the RSA library will use
228*4882a593Smuzhiyun	  it. See doc/uImage.FIT/signature.txt for more details.
229*4882a593Smuzhiyun
230*4882a593Smuzhiyun	  WARNING: When relying on signed FIT images with a required signature
231*4882a593Smuzhiyun	  check the legacy image format is disabled by default, so that
232*4882a593Smuzhiyun	  unsigned images cannot be loaded. If a board needs the legacy image
233*4882a593Smuzhiyun	  format support in this case, enable it using
234*4882a593Smuzhiyun	  CONFIG_IMAGE_FORMAT_LEGACY.
235*4882a593Smuzhiyun
236*4882a593Smuzhiyunconfig FIT_ROLLBACK_PROTECT
237*4882a593Smuzhiyun	bool "Enable rollback-index protection for FIT image"
238*4882a593Smuzhiyun	depends on FIT_SIGNATURE
239*4882a593Smuzhiyun	help
240*4882a593Smuzhiyun	  Enable rollback-index protection for FIT image
241*4882a593Smuzhiyun
242*4882a593Smuzhiyunconfig FIT_ENABLE_RSASSA_PSS_SUPPORT
243*4882a593Smuzhiyun	bool "Support rsassa-pss signature scheme of FIT image contents"
244*4882a593Smuzhiyun	depends on FIT_SIGNATURE
245*4882a593Smuzhiyun	default y
246*4882a593Smuzhiyun	help
247*4882a593Smuzhiyun	  Enable this to support the pss padding algorithm as described
248*4882a593Smuzhiyun	  in the rfc8017 (https://tools.ietf.org/html/rfc8017).
249*4882a593Smuzhiyun
250*4882a593Smuzhiyunconfig FIT_VERBOSE
251*4882a593Smuzhiyun	bool "Show verbose messages when FIT images fail"
252*4882a593Smuzhiyun	help
253*4882a593Smuzhiyun	  Generally a system will have valid FIT images so debug messages
254*4882a593Smuzhiyun	  are a waste of code space. If you are debugging your images then
255*4882a593Smuzhiyun	  you can enable this option to get more verbose information about
256*4882a593Smuzhiyun	  failures.
257*4882a593Smuzhiyun
258*4882a593Smuzhiyunconfig FIT_BEST_MATCH
259*4882a593Smuzhiyun	bool "Select the best match for the kernel device tree"
260*4882a593Smuzhiyun	help
261*4882a593Smuzhiyun	  When no configuration is explicitly selected, default to the
262*4882a593Smuzhiyun	  one whose fdt's compatibility field best matches that of
263*4882a593Smuzhiyun	  U-Boot itself. A match is considered "best" if it matches the
264*4882a593Smuzhiyun	  most specific compatibility entry of U-Boot's fdt's root node.
265*4882a593Smuzhiyun	  The order of entries in the configuration's fdt is ignored.
266*4882a593Smuzhiyun
267*4882a593Smuzhiyunconfig FIT_IMAGE_POST_PROCESS
268*4882a593Smuzhiyun	bool "Enable post-processing of FIT artifacts after loading by U-Boot"
269*4882a593Smuzhiyun	help
270*4882a593Smuzhiyun	  Allows doing any sort of manipulation to blobs after they got extracted
271*4882a593Smuzhiyun	  from FIT images like stripping off headers or modifying the size of the
272*4882a593Smuzhiyun	  blob, verification, authentication, decryption etc. in a platform or
273*4882a593Smuzhiyun	  board specific way. In order to use this feature a platform or board-
274*4882a593Smuzhiyun	  specific implementation of board_fit_image_post_process() must be
275*4882a593Smuzhiyun	  provided. Also, anything done during this post-processing step would
276*4882a593Smuzhiyun	  need to be comprehended in how the images were prepared before being
277*4882a593Smuzhiyun	  injected into the FIT creation (i.e. the blobs would have been pre-
278*4882a593Smuzhiyun	  processed before being added to the FIT image).
279*4882a593Smuzhiyun
280*4882a593Smuzhiyunconfig FIT_HW_CRYPTO
281*4882a593Smuzhiyun	bool "Enable hardware crypto for FIT image checksum and rsa verify"
282*4882a593Smuzhiyun	depends on DM_CRYPTO
283*4882a593Smuzhiyun	help
284*4882a593Smuzhiyun	  Enable hardware crypto for FIT image checksum and rsa verify.
285*4882a593Smuzhiyun
286*4882a593Smuzhiyunconfig FIT_PRINT
287*4882a593Smuzhiyun	bool "Enable fit image structure and data print"
288*4882a593Smuzhiyun	default y
289*4882a593Smuzhiyun	help
290*4882a593Smuzhiyun	  Say y here if you want to enable fit image structure and data
291*4882a593Smuzhiyun	  print.
292*4882a593Smuzhiyun
293*4882a593Smuzhiyunconfig FIT_OMIT_UBOOT
294*4882a593Smuzhiyun	bool "Omit u-boot-nodtb.bin and u-boot.dtb when output uboot.itb"
295*4882a593Smuzhiyun
296*4882a593Smuzhiyunif SPL
297*4882a593Smuzhiyun
298*4882a593Smuzhiyunconfig SPL_FIT
299*4882a593Smuzhiyun	bool "Support Flattened Image Tree within SPL"
300*4882a593Smuzhiyun	depends on SPL
301*4882a593Smuzhiyun	select SPL_OF_LIBFDT
302*4882a593Smuzhiyun
303*4882a593Smuzhiyunconfig SPL_FIT_SIGNATURE
304*4882a593Smuzhiyun	bool "Enable signature verification of FIT firmware within SPL"
305*4882a593Smuzhiyun	depends on SPL_DM
306*4882a593Smuzhiyun	select SPL_FIT
307*4882a593Smuzhiyun	select SPL_RSA
308*4882a593Smuzhiyun
309*4882a593Smuzhiyunconfig SPL_FIT_ROLLBACK_PROTECT
310*4882a593Smuzhiyun	bool "Enable SPL rollback-index protection for FIT image"
311*4882a593Smuzhiyun	depends on SPL_FIT_SIGNATURE
312*4882a593Smuzhiyun	help
313*4882a593Smuzhiyun	  Enable SPL rollback-index protection for FIT image
314*4882a593Smuzhiyun
315*4882a593Smuzhiyunconfig SPL_LOAD_FIT
316*4882a593Smuzhiyun	bool "Enable SPL loading U-Boot as a FIT"
317*4882a593Smuzhiyun	select SPL_FIT
318*4882a593Smuzhiyun	help
319*4882a593Smuzhiyun	  Normally with the SPL framework a legacy image is generated as part
320*4882a593Smuzhiyun	  of the build. This contains U-Boot along with information as to
321*4882a593Smuzhiyun	  where it should be loaded. This option instead enables generation
322*4882a593Smuzhiyun	  of a FIT (Flat Image Tree) which provides more flexibility. In
323*4882a593Smuzhiyun	  particular it can handle selecting from multiple device tree
324*4882a593Smuzhiyun	  and passing the correct one to U-Boot.
325*4882a593Smuzhiyun
326*4882a593Smuzhiyunconfig SPL_FIT_IMAGE_POST_PROCESS
327*4882a593Smuzhiyun	bool "Enable post-processing of FIT artifacts after loading by the SPL"
328*4882a593Smuzhiyun	depends on SPL_LOAD_FIT
329*4882a593Smuzhiyun	help
330*4882a593Smuzhiyun	  Allows doing any sort of manipulation to blobs after they got extracted
331*4882a593Smuzhiyun	  from the U-Boot FIT image like stripping off headers or modifying the
332*4882a593Smuzhiyun	  size of the blob, verification, authentication, decryption etc. in a
333*4882a593Smuzhiyun	  platform or board specific way. In order to use this feature a platform
334*4882a593Smuzhiyun	  or board-specific implementation of board_fit_image_post_process() must
335*4882a593Smuzhiyun	  be provided. Also, anything done during this post-processing step would
336*4882a593Smuzhiyun	  need to be comprehended in how the images were prepared before being
337*4882a593Smuzhiyun	  injected into the FIT creation (i.e. the blobs would have been pre-
338*4882a593Smuzhiyun	  processed before being added to the FIT image).
339*4882a593Smuzhiyun
340*4882a593Smuzhiyunconfig SPL_FIT_HW_CRYPTO
341*4882a593Smuzhiyun	bool "Enable SPL hardware crypto for FIT image checksum and rsa verify"
342*4882a593Smuzhiyun	depends on SPL_DM_CRYPTO
343*4882a593Smuzhiyun	help
344*4882a593Smuzhiyun	  Enable SPL hardware crypto for FIT image checksum and rsa verify.
345*4882a593Smuzhiyun
346*4882a593Smuzhiyunconfig SPL_SYS_DCACHE_OFF
347*4882a593Smuzhiyun	bool "Disable SPL dcache"
348*4882a593Smuzhiyun	default y
349*4882a593Smuzhiyun	help
350*4882a593Smuzhiyun	  Disable SPL dcache. Please make sure CONFIG_SPL_SYS_MALLOC_F_LEN
351*4882a593Smuzhiyun	  is large enough to malloc TLB and bd_t buffer while enabling dcache.
352*4882a593Smuzhiyun
353*4882a593Smuzhiyunconfig SPL_FIT_PRINT
354*4882a593Smuzhiyun	bool "Enable fit image structure and data print in SPL"
355*4882a593Smuzhiyun	default n
356*4882a593Smuzhiyun	help
357*4882a593Smuzhiyun	  Say y here if you want to enable fit image structure and data
358*4882a593Smuzhiyun	  print in SPL.
359*4882a593Smuzhiyun
360*4882a593Smuzhiyunendif # SPL
361*4882a593Smuzhiyun
362*4882a593Smuzhiyunconfig SPL_FIT_SOURCE
363*4882a593Smuzhiyun	string ".its source file for U-Boot FIT image"
364*4882a593Smuzhiyun	depends on SPL_FIT || FIT
365*4882a593Smuzhiyun	help
366*4882a593Smuzhiyun	  Specifies a (platform specific) FIT source file to generate the
367*4882a593Smuzhiyun	  U-Boot FIT image. This could specify further image to load and/or
368*4882a593Smuzhiyun	  execute.
369*4882a593Smuzhiyun
370*4882a593Smuzhiyunconfig SPL_FIT_GENERATOR
371*4882a593Smuzhiyun	string ".its file generator script for U-Boot FIT image"
372*4882a593Smuzhiyun	depends on SPL_FIT || FIT
373*4882a593Smuzhiyun	default "board/sunxi/mksunxi_fit_atf.sh" if SPL_LOAD_FIT && ARCH_SUNXI
374*4882a593Smuzhiyun	help
375*4882a593Smuzhiyun	  Specifies a (platform specific) script file to generate the FIT
376*4882a593Smuzhiyun	  source file used to build the U-Boot FIT image file. This gets
377*4882a593Smuzhiyun	  passed a list of supported device tree file stub names to
378*4882a593Smuzhiyun	  include in the generated image.
379*4882a593Smuzhiyun
380*4882a593Smuzhiyunconfig SPL_FIT_IMAGE_KB
381*4882a593Smuzhiyun	int "SPL FIT image size in KiB"
382*4882a593Smuzhiyun	depends on SPL_FIT || FIT
383*4882a593Smuzhiyun	default 2048
384*4882a593Smuzhiyun	help
385*4882a593Smuzhiyun	  SPL FIT image size in KiB, default 2048KB = 1024KB(u-boot) + 1024KB(tee/atf + others).
386*4882a593Smuzhiyun
387*4882a593Smuzhiyunconfig SPL_FIT_IMAGE_MULTIPLE
388*4882a593Smuzhiyun	int "SPL FIT image multiple number"
389*4882a593Smuzhiyun	depends on SPL_FIT || FIT
390*4882a593Smuzhiyun	default 2
391*4882a593Smuzhiyun	help
392*4882a593Smuzhiyun	  SPL FIT image multiple number.
393*4882a593Smuzhiyun
394*4882a593Smuzhiyunendif # FIT
395*4882a593Smuzhiyun
396*4882a593Smuzhiyunconfig OF_BOARD_SETUP
397*4882a593Smuzhiyun	bool "Set up board-specific details in device tree before boot"
398*4882a593Smuzhiyun	depends on OF_LIBFDT
399*4882a593Smuzhiyun	help
400*4882a593Smuzhiyun	  This causes U-Boot to call ft_board_setup() before booting into
401*4882a593Smuzhiyun	  the Operating System. This function can set up various
402*4882a593Smuzhiyun	  board-specific information in the device tree for use by the OS.
403*4882a593Smuzhiyun	  The device tree is then passed to the OS.
404*4882a593Smuzhiyun
405*4882a593Smuzhiyunconfig OF_SYSTEM_SETUP
406*4882a593Smuzhiyun	bool "Set up system-specific details in device tree before boot"
407*4882a593Smuzhiyun	depends on OF_LIBFDT
408*4882a593Smuzhiyun	help
409*4882a593Smuzhiyun	  This causes U-Boot to call ft_system_setup() before booting into
410*4882a593Smuzhiyun	  the Operating System. This function can set up various
411*4882a593Smuzhiyun	  system-specific information in the device tree for use by the OS.
412*4882a593Smuzhiyun	  The device tree is then passed to the OS.
413*4882a593Smuzhiyun
414*4882a593Smuzhiyunconfig OF_STDOUT_VIA_ALIAS
415*4882a593Smuzhiyun	bool "Update the device-tree stdout alias from U-Boot"
416*4882a593Smuzhiyun	depends on OF_LIBFDT
417*4882a593Smuzhiyun	help
418*4882a593Smuzhiyun	  This uses U-Boot's serial alias from the aliases node to update
419*4882a593Smuzhiyun	  the device tree passed to the OS. The "linux,stdout-path" property
420*4882a593Smuzhiyun	  in the chosen node is set to point to the correct serial node.
421*4882a593Smuzhiyun	  This option currently references CONFIG_CONS_INDEX, which is
422*4882a593Smuzhiyun	  incorrect when used with device tree as this option does not
423*4882a593Smuzhiyun	  exist / should not be used.
424*4882a593Smuzhiyun
425*4882a593Smuzhiyunconfig SYS_EXTRA_OPTIONS
426*4882a593Smuzhiyun	string "Extra Options (DEPRECATED)"
427*4882a593Smuzhiyun	help
428*4882a593Smuzhiyun	  The old configuration infrastructure (= mkconfig + boards.cfg)
429*4882a593Smuzhiyun	  provided the extra options field. If you have something like
430*4882a593Smuzhiyun	  "HAS_BAR,BAZ=64", the optional options
431*4882a593Smuzhiyun	    #define CONFIG_HAS
432*4882a593Smuzhiyun	    #define CONFIG_BAZ	64
433*4882a593Smuzhiyun	  will be defined in include/config.h.
434*4882a593Smuzhiyun	  This option was prepared for the smooth migration from the old
435*4882a593Smuzhiyun	  configuration to Kconfig. Since this option will be removed sometime,
436*4882a593Smuzhiyun	  new boards should not use this option.
437*4882a593Smuzhiyun
438*4882a593Smuzhiyunconfig SYS_TEXT_BASE
439*4882a593Smuzhiyun	depends on ARC || X86 || ARCH_UNIPHIER || ARCH_ZYNQMP || \
440*4882a593Smuzhiyun		(M68K && !TARGET_ASTRO_MCF5373L) || MICROBLAZE || MIPS || \
441*4882a593Smuzhiyun		ARCH_ZYNQ || ARCH_KEYSTONE || ARCH_OMAP2PLUS
442*4882a593Smuzhiyun	depends on !EFI_APP
443*4882a593Smuzhiyun	hex "Text Base"
444*4882a593Smuzhiyun	help
445*4882a593Smuzhiyun	  TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
446*4882a593Smuzhiyun
447*4882a593Smuzhiyun	default 0x80800000 if ARCH_OMAP2PLUS
448*4882a593Smuzhiyun
449*4882a593Smuzhiyun
450*4882a593Smuzhiyunconfig SYS_CLK_FREQ
451*4882a593Smuzhiyun	depends on ARC || ARCH_SUNXI
452*4882a593Smuzhiyun	int "CPU clock frequency"
453*4882a593Smuzhiyun	help
454*4882a593Smuzhiyun	  TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
455*4882a593Smuzhiyun
456*4882a593Smuzhiyunconfig ARCH_FIXUP_FDT_MEMORY
457*4882a593Smuzhiyun	bool "Enable arch_fixup_memory_banks() call"
458*4882a593Smuzhiyun	default y
459*4882a593Smuzhiyun	help
460*4882a593Smuzhiyun	  Enable FDT memory map syncup before OS boot. This feature can be
461*4882a593Smuzhiyun	  used for booting OS with different memory setup where the part of
462*4882a593Smuzhiyun	  the memory location should be used for different purpose.
463*4882a593Smuzhiyun
464*4882a593Smuzhiyunendmenu		# Boot images
465*4882a593Smuzhiyun
466*4882a593Smuzhiyunsource "api/Kconfig"
467*4882a593Smuzhiyun
468*4882a593Smuzhiyunsource "common/Kconfig"
469*4882a593Smuzhiyun
470*4882a593Smuzhiyunsource "cmd/Kconfig"
471*4882a593Smuzhiyun
472*4882a593Smuzhiyunsource "disk/Kconfig"
473*4882a593Smuzhiyun
474*4882a593Smuzhiyunsource "dts/Kconfig"
475*4882a593Smuzhiyun
476*4882a593Smuzhiyunsource "env/Kconfig"
477*4882a593Smuzhiyun
478*4882a593Smuzhiyunsource "net/Kconfig"
479*4882a593Smuzhiyun
480*4882a593Smuzhiyunsource "drivers/Kconfig"
481*4882a593Smuzhiyun
482*4882a593Smuzhiyunsource "fs/Kconfig"
483*4882a593Smuzhiyun
484*4882a593Smuzhiyunsource "lib/Kconfig"
485*4882a593Smuzhiyun
486*4882a593Smuzhiyunsource "test/Kconfig"
487