blob: 3ce5ba1b522effe11d4dfdacf877cba0472ac006 [file] [log] [blame]
Masahiro Yamada804bc5e2014-07-30 14:08:15 +09001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5mainmenu "U-Boot $UBOOTVERSION Configuration"
6
7config UBOOTVERSION
8 string
9 option env="UBOOTVERSION"
10
Simon Glass157c3952015-02-24 22:26:19 +090011# Allow defaults in arch-specific code to override any given here
12source "arch/Kconfig"
13
Masahiro Yamada804bc5e2014-07-30 14:08:15 +090014menu "General setup"
15
Masahiro Yamada6ea06e62014-08-22 19:42:27 +090016config LOCALVERSION
17 string "Local version - append to U-Boot release"
Masahiro Yamada6ea06e62014-08-22 19:42:27 +090018 help
19 Append an extra string to the end of your U-Boot version.
20 This will show up on your boot log, for example.
21 The string you set here will be appended after the contents of
22 any files with a filename matching localversion* in your
23 object and source tree, in that order. Your total string can
24 be a maximum of 64 characters.
25
26config LOCALVERSION_AUTO
27 bool "Automatically append version information to the version string"
Masahiro Yamada6ea06e62014-08-22 19:42:27 +090028 default y
29 help
30 This will try to automatically determine if the current tree is a
31 release tree by looking for git tags that belong to the current
32 top of tree revision.
33
34 A string of the format -gxxxxxxxx will be added to the localversion
35 if a git-based tree is found. The string generated by this will be
36 appended after any matching localversion* files, and after the value
37 set in CONFIG_LOCALVERSION.
38
39 (The actual string used here is the first eight characters produced
40 by running the command:
41
42 $ git rev-parse --verify HEAD
43
44 which is done within the script "scripts/setlocalversion".)
45
Masahiro Yamada8240a4b2014-08-22 19:42:29 +090046config CC_OPTIMIZE_FOR_SIZE
47 bool "Optimize for size"
Masahiro Yamada8240a4b2014-08-22 19:42:29 +090048 default y
49 help
50 Enabling this option will pass "-Os" instead of "-O2" to gcc
51 resulting in a smaller U-Boot image.
52
53 This option is enabled by default for U-Boot.
54
Simon Glass838723b2015-02-11 16:32:59 -070055config SYS_MALLOC_F
56 bool "Enable malloc() pool before relocation"
Masahiro Yamadac6988242015-03-19 19:42:55 +090057 default y if DM
Simon Glass838723b2015-02-11 16:32:59 -070058 help
59 Before relocation memory is very limited on many platforms. Still,
60 we can provide a small malloc() pool if needed. Driver model in
61 particular needs this to operate, so that it can allocate the
62 initial serial device and any others that are needed.
63
64config SYS_MALLOC_F_LEN
65 hex "Size of malloc() pool before relocation"
66 depends on SYS_MALLOC_F
67 default 0x400
68 help
69 Before relocation memory is very limited on many platforms. Still,
70 we can provide a small malloc() pool if needed. Driver model in
71 particular needs this to operate, so that it can allocate the
72 initial serial device and any others that are needed.
73
Tom Rinia50d5b52014-11-14 09:34:29 +010074menuconfig EXPERT
Przemyslaw Marczak88436782015-03-04 14:01:24 +010075 bool "Configure standard U-Boot features (expert users)"
76 default y
77 help
78 This option allows certain base U-Boot options and settings
79 to be disabled or tweaked. This is for specialized
80 environments which can tolerate a "non-standard" U-Boot.
81 Only use this if you really know what you are doing.
82
83if EXPERT
84 config SYS_MALLOC_CLEAR_ON_INIT
85 bool "Init with zeros the memory reserved for malloc (slow)"
86 default y
87 help
88 This setting is enabled by default. The reserved malloc
89 memory is initialized with zeros, so first malloc calls
90 will return the pointer to the zeroed memory. But this
91 slows the boot time.
Tom Rinia50d5b52014-11-14 09:34:29 +010092
Przemyslaw Marczak88436782015-03-04 14:01:24 +010093 It is recommended to disable it, when CONFIG_SYS_MALLOC_LEN
94 value, has more than few MiB, e.g. when uses bzip2 or bmp logo.
95 Then the boot time can be significantly reduced.
96 Warning:
97 When disabling this, please check if malloc calls, maybe
98 should be replaced by calloc - if expects zeroed memory.
99endif
Masahiro Yamada9eeddf22014-11-26 18:42:31 +0900100endmenu # General setup
101
Masahiro Yamada6ea06e62014-08-22 19:42:27 +0900102menu "Boot images"
103
Masahiro Yamada6e0971b2014-10-20 17:45:56 +0900104config SUPPORT_SPL
105 bool
106
Masahiro Yamadaf5ebc992014-10-20 17:45:57 +0900107config SUPPORT_TPL
108 bool
109
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900110config SPL
111 bool
Masahiro Yamada6e0971b2014-10-20 17:45:56 +0900112 depends on SUPPORT_SPL
Masahiro Yamadacfc2f7d2015-02-24 22:26:21 +0900113 prompt "Enable SPL"
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900114 help
115 If you want to build SPL as well as the normal image, say Y.
116
Hans de Goede9f9df6f2015-09-13 14:45:15 +0200117config SPL_SYS_MALLOC_SIMPLE
118 bool
119 depends on SPL
120 prompt "Only use malloc_simple functions in the spl"
121 help
122 Say Y here to only use the *_simple malloc functions from
123 malloc_simple.c, rather then using the versions from dlmalloc.c
124 this will make the SPL binary smaller at the cost of more heap
125 usage as the *_simple malloc functions do not re-use free-ed mem.
126
Simon Glassd8711af2015-03-03 08:03:00 -0700127config SPL_STACK_R
128 depends on SPL
129 bool "Enable SDRAM location for SPL stack"
130 help
131 SPL starts off execution in SRAM and thus typically has only a small
132 stack available. Since SPL sets up DRAM while in its board_init_f()
133 function, it is possible for the stack to move there before
134 board_init_r() is reached. This option enables a special SDRAM
135 location for the SPL stack. U-Boot SPL switches to this after
136 board_init_f() completes, and before board_init_r() starts.
137
138config SPL_STACK_R_ADDR
139 depends on SPL_STACK_R
140 hex "SDRAM location for SPL stack"
141 help
142 Specify the address in SDRAM for the SPL stack. This will be set up
143 before board_init_r() is called.
144
Hans de Goede8f280382015-09-13 15:04:17 +0200145config SPL_STACK_R_MALLOC_SIMPLE_LEN
146 depends on SPL_STACK_R && SPL_SYS_MALLOC_SIMPLE
147 hex "Size of malloc_simple heap after switching to DRAM SPL stack"
148 default 0x100000
149 help
150 Specify the amount of the stack to use as memory pool for
151 malloc_simple after switching the stack to DRAM. This may be set
152 to give board_init_r() a larger heap then the initial heap in
153 SRAM which is limited to SYS_MALLOC_F_LEN bytes.
154
Simon Glass77ec34e2015-10-17 19:41:19 -0600155config SPL_SEPARATE_BSS
156 depends on SPL
157 bool "BSS section is in a different memory region from text"
158 help
159 Some platforms need a large BSS region in SPL and can provide this
160 because RAM is already set up. In this case BSS can be moved to RAM.
161 This option should then be enabled so that the correct device tree
162 location is used. Normally we put the device tree at the end of BSS
163 but with this option enabled, it goes at _image_binary_end.
164
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900165config TPL
166 bool
Masahiro Yamadaf5ebc992014-10-20 17:45:57 +0900167 depends on SPL && SUPPORT_TPL
Masahiro Yamadacfc2f7d2015-02-24 22:26:21 +0900168 prompt "Enable TPL"
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900169 help
170 If you want to build TPL as well as the normal image and SPL, say Y.
171
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900172config FIT
173 bool "Support Flattened Image Tree"
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900174 help
175 This option allows to boot the new uImage structrure,
176 Flattened Image Tree. FIT is formally a FDT, which can include
177 images of various types (kernel, FDT blob, ramdisk, etc.)
178 in a single blob. To boot this new uImage structure,
Igor Grinberge40176b2015-08-26 17:54:45 +0300179 pass the address of the blob to the "bootm" command.
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900180
181config FIT_VERBOSE
182 bool "Display verbose messages on FIT boot"
183 depends on FIT
184
185config FIT_SIGNATURE
Ruchika Gupta2c3822e2015-01-23 16:01:51 +0530186 bool "Enable signature verification of FIT uImages"
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900187 depends on FIT
Chris Kuetheb58cf4f2015-02-04 19:16:14 -0800188 depends on DM
Ruchika Gupta2c3822e2015-01-23 16:01:51 +0530189 select RSA
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900190 help
191 This option enables signature verification of FIT uImages,
gaurav ranaef201592015-02-20 12:51:46 +0530192 using a hash signed and verified using RSA. If
193 CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
194 hashing is available using hardware, RSA library will use it.
Masahiro Yamadaa7fa7462014-11-13 19:29:06 +0900195 See doc/uImage.FIT/signature.txt for more details.
196
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900197config SYS_EXTRA_OPTIONS
198 string "Extra Options (DEPRECATED)"
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900199 help
200 The old configuration infrastructure (= mkconfig + boards.cfg)
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +0900201 provided the extra options field. If you have something like
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900202 "HAS_BAR,BAZ=64", the optional options
203 #define CONFIG_HAS
204 #define CONFIG_BAZ 64
205 will be defined in include/config.h.
206 This option was prepared for the smooth migration from the old
207 configuration to Kconfig. Since this option will be removed sometime,
208 new boards should not use this option.
209
Masahiro Yamadac02a3272014-10-30 15:30:58 +0900210config SYS_TEXT_BASE
Masahiro Yamada39e48a52015-12-11 12:22:24 +0900211 depends on SPARC || ARC || X86 || ARCH_UNIPHIER || ARCH_ZYNQMP || \
Masahiro Yamada91f5d272015-12-11 12:22:26 +0900212 (M68K && !TARGET_ASTRO_MCF5373L) || MICROBLAZE
Ben Stoltzb7e41242015-08-04 12:33:41 -0600213 depends on !EFI_APP
Masahiro Yamadac02a3272014-10-30 15:30:58 +0900214 hex "Text Base"
215 help
216 TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
217
Alexey Brodkin693744a2015-01-13 18:49:01 +0300218config SYS_CLK_FREQ
Iain Paton630df142015-03-28 10:26:38 +0000219 depends on ARC || ARCH_SUNXI
Alexey Brodkin693744a2015-01-13 18:49:01 +0300220 int "CPU clock frequency"
221 help
222 TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
223
Masahiro Yamada6ea06e62014-08-22 19:42:27 +0900224endmenu # Boot images
Masahiro Yamada804bc5e2014-07-30 14:08:15 +0900225
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +0900226source "common/Kconfig"
227
Simon Glass29499a02016-01-17 20:53:51 -0700228source "cmd/Kconfig"
229
Masahiro Yamada9fadbc82014-09-22 19:59:05 +0900230source "dts/Kconfig"
231
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +0900232source "net/Kconfig"
233
234source "drivers/Kconfig"
235
236source "fs/Kconfig"
237
238source "lib/Kconfig"
Simon Glass9dd430d2015-02-05 21:41:37 -0700239
240source "test/Kconfig"