]> git.ipfire.org Git - people/ms/u-boot.git/blame - Kconfig
malloc_simple: Add Kconfig option for using only malloc_simple in the SPL
[people/ms/u-boot.git] / Kconfig
CommitLineData
51631259
MY
1#
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
66afaef2
SG
11# Allow defaults in arch-specific code to override any given here
12source "arch/Kconfig"
13
51631259
MY
14menu "General setup"
15
e91c3c33
MY
16config LOCALVERSION
17 string "Local version - append to U-Boot release"
e91c3c33
MY
18 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"
e91c3c33
MY
28 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
4a8ed8e2
MY
46config CC_OPTIMIZE_FOR_SIZE
47 bool "Optimize for size"
4a8ed8e2
MY
48 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
b724bd7d
SG
55config SYS_MALLOC_F
56 bool "Enable malloc() pool before relocation"
326a6823 57 default y if DM
b724bd7d
SG
58 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
1bf0979f 74menuconfig EXPERT
0aa8a4ad
PM
75 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.
92
93 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
40ad4c4b
MY
100endmenu # General setup
101
e91c3c33
MY
102menu "Boot images"
103
02627356
MY
104config SUPPORT_SPL
105 bool
106
cf6bbe4c
MY
107config SUPPORT_TPL
108 bool
109
51631259
MY
110config SPL
111 bool
02627356 112 depends on SUPPORT_SPL
d648964f 113 prompt "Enable SPL"
51631259
MY
114 help
115 If you want to build SPL as well as the normal image, say Y.
116
1eb0c03c
HG
117config 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
db910353
SG
127config 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
51631259
MY
145config TPL
146 bool
cf6bbe4c 147 depends on SPL && SUPPORT_TPL
d648964f 148 prompt "Enable TPL"
51631259
MY
149 help
150 If you want to build TPL as well as the normal image and SPL, say Y.
151
b6cf4439
MY
152config FIT
153 bool "Support Flattened Image Tree"
b6cf4439
MY
154 help
155 This option allows to boot the new uImage structrure,
156 Flattened Image Tree. FIT is formally a FDT, which can include
157 images of various types (kernel, FDT blob, ramdisk, etc.)
158 in a single blob. To boot this new uImage structure,
1f9ac4a4 159 pass the address of the blob to the "bootm" command.
b6cf4439
MY
160
161config FIT_VERBOSE
162 bool "Display verbose messages on FIT boot"
163 depends on FIT
164
165config FIT_SIGNATURE
c4beb22f 166 bool "Enable signature verification of FIT uImages"
b6cf4439 167 depends on FIT
9009798d 168 depends on DM
c4beb22f 169 select RSA
b6cf4439
MY
170 help
171 This option enables signature verification of FIT uImages,
94e3c8c4 172 using a hash signed and verified using RSA. If
173 CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
174 hashing is available using hardware, RSA library will use it.
b6cf4439
MY
175 See doc/uImage.FIT/signature.txt for more details.
176
51631259
MY
177config SYS_EXTRA_OPTIONS
178 string "Extra Options (DEPRECATED)"
51631259
MY
179 help
180 The old configuration infrastructure (= mkconfig + boards.cfg)
ed36323f 181 provided the extra options field. If you have something like
51631259
MY
182 "HAS_BAR,BAZ=64", the optional options
183 #define CONFIG_HAS
184 #define CONFIG_BAZ 64
185 will be defined in include/config.h.
186 This option was prepared for the smooth migration from the old
187 configuration to Kconfig. Since this option will be removed sometime,
188 new boards should not use this option.
189
7f7563ce 190config SYS_TEXT_BASE
f994bdfe 191 depends on SPARC || ARC || X86 || ARCH_UNIPHIER || ARCH_ZYNQMP
484cce0d 192 depends on !EFI_APP
7f7563ce
MY
193 hex "Text Base"
194 help
195 TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
196
33d88183 197config SYS_CLK_FREQ
e71b422b 198 depends on ARC || ARCH_SUNXI
33d88183
AB
199 int "CPU clock frequency"
200 help
201 TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
202
e91c3c33 203endmenu # Boot images
51631259 204
ed36323f
MY
205source "common/Kconfig"
206
783e6a72
MY
207source "dts/Kconfig"
208
ed36323f
MY
209source "net/Kconfig"
210
211source "drivers/Kconfig"
212
213source "fs/Kconfig"
214
215source "lib/Kconfig"
1967982a
SG
216
217source "test/Kconfig"