]>
Commit | Line | Data |
---|---|---|
ed36323f MY |
1 | menu "Library routines" |
2 | ||
69be8fd1 MS |
3 | config ADDR_MAP |
4 | bool "Enable support for non-identity virtual-physical mappings" | |
5 | help | |
6 | Enables helper code for implementing non-identity virtual-physical | |
7 | memory mappings for 32bit CPUs. | |
8 | ||
e0103158 BM |
9 | This library only works in the post-relocation phase. |
10 | ||
69be8fd1 MS |
11 | config SYS_NUM_ADDR_MAP |
12 | int "Size of the address-map table" | |
13 | depends on ADDR_MAP | |
14 | default 16 | |
15 | help | |
16 | Sets the number of entries in the virtual-physical mapping table. | |
17 | ||
3b8dfc42 TR |
18 | config SYS_TIMER_COUNTS_DOWN |
19 | bool "System timer counts down rathe than up" | |
20 | ||
6405ab7a SG |
21 | config PHYSMEM |
22 | bool "Access to physical memory region (> 4G)" | |
23 | help | |
24 | Some basic support is provided for operations on memory not | |
25 | normally accessible to 32-bit U-Boot - e.g. some architectures | |
26 | support access to more than 4G of memory on 32-bit | |
27 | machines using physical address extension or similar. | |
28 | Enable this to access this basic support, which only supports clearing | |
29 | the memory. | |
30 | ||
6ef2f901 AF |
31 | config BCH |
32 | bool "Enable Software based BCH ECC" | |
33 | help | |
34 | Enables software based BCH ECC algorithm present in lib/bch.c | |
35 | This is used by SoC platforms which do not have built-in ELM | |
36 | hardware engine required for BCH ECC correction. | |
37 | ||
3c10dc95 SG |
38 | config BINMAN_FDT |
39 | bool "Allow access to binman information in the device tree" | |
56e7257c | 40 | depends on BINMAN && DM && OF_CONTROL |
1621d3c4 | 41 | default y if OF_SEPARATE || OF_EMBED |
3c10dc95 SG |
42 | help |
43 | This enables U-Boot to access information about binman entries, | |
44 | stored in the device tree in a binman node. Typical uses are to | |
45 | locate entries in the firmware image. See binman.h for the available | |
46 | functionality. | |
47 | ||
b0928da6 MY |
48 | config CC_OPTIMIZE_LIBS_FOR_SPEED |
49 | bool "Optimize libraries for speed" | |
50 | help | |
51 | Enabling this option will pass "-O2" to gcc when compiling | |
52 | under "lib" directory. | |
53 | ||
54 | If unsure, say N. | |
55 | ||
1a46cb6c SG |
56 | config CHARSET |
57 | bool | |
1a46cb6c | 58 | |
36c1877c FA |
59 | config DYNAMIC_CRC_TABLE |
60 | bool "Enable Dynamic tables for CRC" | |
61 | help | |
62 | Enable this option to calculate entries for CRC tables at runtime. | |
63 | This can be helpful when reducing the size of the build image | |
64 | ||
2895c4b7 BM |
65 | config HAVE_ARCH_IOMAP |
66 | bool | |
67 | help | |
68 | Enable this option if architecture provides io{read,write}{8,16,32} | |
69 | I/O accessor functions. | |
70 | ||
45ccec8f MY |
71 | config HAVE_PRIVATE_LIBGCC |
72 | bool | |
73 | ||
a451bc27 AF |
74 | config LIB_UUID |
75 | bool | |
76 | ||
3b510807 SG |
77 | config SPL_LIB_UUID |
78 | depends on SPL | |
79 | bool | |
80 | ||
1c03ab9f KC |
81 | config SEMIHOSTING |
82 | bool "Support semihosting" | |
ae3527f0 | 83 | depends on ARM || RISCV |
1c03ab9f KC |
84 | help |
85 | Semihosting is a method for a target to communicate with a host | |
86 | debugger. It uses special instructions which the debugger will trap | |
87 | on and interpret. This allows U-Boot to read/write files, print to | |
88 | the console, and execute arbitrary commands on the host system. | |
89 | ||
90 | Enabling this option will add support for reading and writing files | |
91 | on the host system. If you don't have a debugger attached then trying | |
92 | to do this will likely cause U-Boot to hang. Say 'n' if you are unsure. | |
93 | ||
94 | config SEMIHOSTING_FALLBACK | |
95 | bool "Recover gracefully when semihosting fails" | |
ae3527f0 | 96 | depends on SEMIHOSTING && (ARM64 || RISCV) |
1c03ab9f KC |
97 | default y |
98 | help | |
99 | Normally, if U-Boot makes a semihosting call and no debugger is | |
100 | attached, then it will panic due to a synchronous abort | |
101 | exception. This config adds an exception handler which will allow | |
102 | U-Boot to recover. Say 'y' if unsure. | |
103 | ||
104 | config SPL_SEMIHOSTING | |
105 | bool "Support semihosting in SPL" | |
ae3527f0 | 106 | depends on SPL && (ARM || RISCV) |
1c03ab9f KC |
107 | help |
108 | Semihosting is a method for a target to communicate with a host | |
109 | debugger. It uses special instructions which the debugger will trap | |
110 | on and interpret. This allows U-Boot to read/write files, print to | |
111 | the console, and execute arbitrary commands on the host system. | |
112 | ||
113 | Enabling this option will add support for reading and writing files | |
114 | on the host system. If you don't have a debugger attached then trying | |
115 | to do this will likely cause U-Boot to hang. Say 'n' if you are unsure. | |
116 | ||
117 | config SPL_SEMIHOSTING_FALLBACK | |
118 | bool "Recover gracefully when semihosting fails in SPL" | |
ae3527f0 KC |
119 | depends on SPL_SEMIHOSTING && (ARM64 || RISCV) |
120 | select ARMV8_SPL_EXCEPTION_VECTORS if ARM64 | |
1c03ab9f KC |
121 | default y |
122 | help | |
123 | Normally, if U-Boot makes a semihosting call and no debugger is | |
124 | attached, then it will panic due to a synchronous abort | |
125 | exception. This config adds an exception handler which will allow | |
126 | U-Boot to recover. Say 'y' if unsure. | |
127 | ||
14ad44ab AK |
128 | config PRINTF |
129 | bool | |
130 | default y | |
131 | ||
132 | config SPL_PRINTF | |
133 | bool | |
134 | select SPL_SPRINTF | |
27084c03 | 135 | select SPL_STRTO if !SPL_USE_TINY_PRINTF |
14ad44ab AK |
136 | |
137 | config TPL_PRINTF | |
138 | bool | |
139 | select TPL_SPRINTF | |
27084c03 | 140 | select TPL_STRTO if !TPL_USE_TINY_PRINTF |
14ad44ab | 141 | |
747093dd SG |
142 | config VPL_PRINTF |
143 | bool | |
144 | select VPL_SPRINTF | |
145 | select VPL_STRTO if !VPL_USE_TINY_PRINTF | |
146 | ||
14ad44ab AK |
147 | config SPRINTF |
148 | bool | |
149 | default y | |
150 | ||
151 | config SPL_SPRINTF | |
152 | bool | |
153 | ||
154 | config TPL_SPRINTF | |
155 | bool | |
156 | ||
747093dd SG |
157 | config VPL_SPRINTF |
158 | bool | |
159 | ||
e87dfb05 AA |
160 | config SSCANF |
161 | bool | |
e87dfb05 | 162 | |
14ad44ab AK |
163 | config STRTO |
164 | bool | |
165 | default y | |
166 | ||
167 | config SPL_STRTO | |
168 | bool | |
169 | ||
170 | config TPL_STRTO | |
171 | bool | |
172 | ||
747093dd SG |
173 | config VPL_STRTO |
174 | bool | |
175 | ||
c232d14d AK |
176 | config IMAGE_SPARSE |
177 | bool | |
178 | ||
179 | config IMAGE_SPARSE_FILLBUF_SIZE | |
180 | hex "Android sparse image CHUNK_TYPE_FILL buffer size" | |
181 | default 0x80000 | |
182 | depends on IMAGE_SPARSE | |
183 | help | |
184 | Set the size of the fill buffer used when processing CHUNK_TYPE_FILL | |
185 | chunks. | |
186 | ||
45ccec8f MY |
187 | config USE_PRIVATE_LIBGCC |
188 | bool "Use private libgcc" | |
189 | depends on HAVE_PRIVATE_LIBGCC | |
91b86e21 | 190 | default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS) |
45ccec8f MY |
191 | help |
192 | This option allows you to use the built-in libgcc implementation | |
67976306 | 193 | of U-Boot instead of the one provided by the compiler. |
45ccec8f MY |
194 | If unsure, say N. |
195 | ||
8c688bc4 MY |
196 | config SYS_HZ |
197 | int | |
198 | default 1000 | |
199 | help | |
200 | The frequency of the timer returned by get_timer(). | |
201 | get_timer() must operate in milliseconds and this option must be | |
202 | set to 1000. | |
203 | ||
27084c03 | 204 | config SPL_USE_TINY_PRINTF |
37ef1774 | 205 | bool "Enable tiny printf() version in SPL" |
27084c03 | 206 | depends on SPL |
2a51e16b | 207 | default y |
7d9cde10 SR |
208 | help |
209 | This option enables a tiny, stripped down printf version. | |
210 | This should only be used in space limited environments, | |
211 | like SPL versions with hard memory limits. This version | |
212 | reduces the code size by about 2.5KiB on armv7. | |
213 | ||
214 | The supported format specifiers are %c, %s, %u/%d and %x. | |
215 | ||
27084c03 | 216 | config TPL_USE_TINY_PRINTF |
37ef1774 | 217 | bool "Enable tiny printf() version in TPL" |
27084c03 SG |
218 | depends on TPL |
219 | default y if SPL_USE_TINY_PRINTF | |
220 | help | |
221 | This option enables a tiny, stripped down printf version. | |
222 | This should only be used in space limited environments, | |
223 | like SPL versions with hard memory limits. This version | |
224 | reduces the code size by about 2.5KiB on armv7. | |
225 | ||
226 | The supported format specifiers are %c, %s, %u/%d and %x. | |
227 | ||
747093dd SG |
228 | config VPL_USE_TINY_PRINTF |
229 | bool "Enable tiny printf() version for VPL" | |
230 | depends on VPL | |
231 | help | |
232 | This option enables a tiny, stripped down printf version. | |
233 | This should only be used in space limited environments, | |
234 | like SPL versions with hard memory limits. This version | |
235 | reduces the code size by about 2.5KiB on armv7. | |
236 | ||
237 | The supported format specifiers are %c, %s, %u/%d and %x. | |
238 | ||
7e3caa81 MY |
239 | config PANIC_HANG |
240 | bool "Do not reset the system on fatal error" | |
241 | help | |
242 | Define this option to stop the system in case of a fatal error, | |
243 | so that you have to reset it manually. This is probably NOT a good | |
244 | idea for an embedded system where you want the system to reboot | |
245 | automatically as fast as possible, but it may be useful during | |
246 | development since you can try to debug the conditions that lead to | |
247 | the situation. | |
248 | ||
1a60650c JH |
249 | config REGEX |
250 | bool "Enable regular expression support" | |
f7848d90 | 251 | default y if NET |
1a60650c JH |
252 | help |
253 | If this variable is defined, U-Boot is linked against the | |
254 | SLRE (Super Light Regular Expression) library, which adds | |
255 | regex support to some commands, for example "env grep" and | |
256 | "setexpr". | |
257 | ||
a5a37567 AF |
258 | choice |
259 | prompt "Pseudo-random library support type" | |
1611235b | 260 | depends on NET_RANDOM_ETHADDR || RANDOM_UUID || CMD_UUID || \ |
28cef9ca | 261 | RNG_SANDBOX || UT_LIB && AES || FAT_WRITE |
a5a37567 | 262 | default LIB_RAND |
3850dbe8 | 263 | help |
a5a37567 AF |
264 | Select the library to provide pseudo-random number generator |
265 | functions. LIB_HW_RAND supports certain hardware engines that | |
266 | provide this functionality. If in doubt, select LIB_RAND. | |
267 | ||
268 | config LIB_RAND | |
269 | bool "Pseudo-random library support" | |
270 | ||
271 | config LIB_HW_RAND | |
43e442a5 | 272 | bool "HW Engine for random library support" |
a5a37567 AF |
273 | |
274 | endchoice | |
9ba9e85f | 275 | |
e1722fcb SG |
276 | config SUPPORT_ACPI |
277 | bool | |
278 | help | |
279 | Enable this if your arch or board can support generating ACPI | |
280 | (Advanced Configuration and Power Interface) tables. In this case | |
281 | U-Boot can generate these tables and pass them to the Operating | |
282 | System. | |
283 | ||
284 | config GENERATE_ACPI_TABLE | |
285 | bool "Generate an ACPI (Advanced Configuration and Power Interface) table" | |
286 | depends on SUPPORT_ACPI | |
287 | select QFW if QEMU | |
288 | help | |
289 | The Advanced Configuration and Power Interface (ACPI) specification | |
290 | provides an open standard for device configuration and management | |
291 | by the operating system. It defines platform-independent interfaces | |
292 | for configuration and power management monitoring. | |
293 | ||
ab4458bd SG |
294 | config SPL_TINY_MEMSET |
295 | bool "Use a very small memset() in SPL" | |
b340199f | 296 | depends on SPL |
ab4458bd SG |
297 | help |
298 | The faster memset() is the arch-specific one (if available) enabled | |
299 | by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get | |
300 | better performance by writing a word at a time. But in very | |
6e705114 | 301 | size-constrained environments even this may be too big. Enable this |
ab4458bd SG |
302 | option to reduce code size slightly at the cost of some speed. |
303 | ||
96b9082c PT |
304 | config TPL_TINY_MEMSET |
305 | bool "Use a very small memset() in TPL" | |
8bea4bf7 | 306 | depends on TPL |
96b9082c PT |
307 | help |
308 | The faster memset() is the arch-specific one (if available) enabled | |
309 | by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get | |
310 | better performance by writing a word at a time. But in very | |
6e705114 | 311 | size-constrained environments even this may be too big. Enable this |
96b9082c PT |
312 | option to reduce code size slightly at the cost of some speed. |
313 | ||
aa049152 BB |
314 | config RBTREE |
315 | bool | |
316 | ||
da5337a6 NH |
317 | config BITREVERSE |
318 | bool "Bit reverse library from Linux" | |
319 | ||
a24a78d7 SG |
320 | config TRACE |
321 | bool "Support for tracing of function calls and timing" | |
322 | imply CMD_TRACE | |
12619d4e | 323 | imply TIMER_EARLY |
a24a78d7 SG |
324 | help |
325 | Enables function tracing within U-Boot. This allows recording of call | |
326 | traces including timing information. The command can write data to | |
327 | memory for exporting for analysis (e.g. using bootchart). | |
328 | See doc/README.trace for full details. | |
329 | ||
1c6eb075 SG |
330 | config TRACE_BUFFER_SIZE |
331 | hex "Size of trace buffer in U-Boot" | |
332 | depends on TRACE | |
333 | default 0x01000000 | |
334 | help | |
335 | Sets the size of the trace buffer in U-Boot. This is allocated from | |
336 | memory during relocation. If this buffer is too small, the trace | |
337 | history will be truncated, with later records omitted. | |
338 | ||
339 | If early trace is enabled (i.e. before relocation), this buffer must | |
340 | be large enough to include all the data from the early trace buffer as | |
341 | well, since this is copied over to the main buffer during relocation. | |
342 | ||
343 | A trace record is emitted for each function call and each record is | |
344 | 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If | |
345 | the size is too small then 'trace stats' will show a message saying | |
346 | how many records were dropped due to buffer overflow. | |
347 | ||
da0fb5fd HS |
348 | config TRACE_CALL_DEPTH_LIMIT |
349 | int "Trace call depth limit" | |
350 | depends on TRACE | |
351 | default 15 | |
352 | help | |
353 | Sets the maximum call depth up to which function calls are recorded. | |
354 | ||
1c6eb075 SG |
355 | config TRACE_EARLY |
356 | bool "Enable tracing before relocation" | |
357 | depends on TRACE | |
358 | help | |
359 | Sometimes it is helpful to trace execution of U-Boot before | |
360 | relocation. This is possible by using a arch-specific, fixed buffer | |
361 | position in memory. Enable this option to start tracing as early as | |
362 | possible after U-Boot starts. | |
363 | ||
364 | config TRACE_EARLY_SIZE | |
365 | hex "Size of early trace buffer in U-Boot" | |
366 | depends on TRACE_EARLY | |
367 | default 0x00100000 | |
368 | help | |
369 | Sets the size of the early trace buffer in bytes. This is used to hold | |
370 | tracing information before relocation. | |
371 | ||
da0fb5fd HS |
372 | config TRACE_EARLY_CALL_DEPTH_LIMIT |
373 | int "Early trace call depth limit" | |
374 | depends on TRACE_EARLY | |
c33425c6 | 375 | default 15 |
da0fb5fd HS |
376 | help |
377 | Sets the maximum call depth up to which function calls are recorded | |
378 | during early tracing. | |
379 | ||
1c6eb075 SG |
380 | config TRACE_EARLY_ADDR |
381 | hex "Address of early trace buffer in U-Boot" | |
382 | depends on TRACE_EARLY | |
383 | default 0x00100000 | |
384 | help | |
385 | Sets the address of the early trace buffer in U-Boot. This memory | |
386 | must be accessible before relocation. | |
387 | ||
388 | A trace record is emitted for each function call and each record is | |
389 | 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If | |
390 | the size is too small then the message which says the amount of early | |
391 | data being coped will the the same as the | |
392 | ||
334a9b9d LP |
393 | config CIRCBUF |
394 | bool "Enable circular buffer support" | |
395 | ||
d1389403 SG |
396 | source lib/dhry/Kconfig |
397 | ||
b1a873df SG |
398 | menu "Security support" |
399 | ||
400 | config AES | |
401 | bool "Support the AES algorithm" | |
402 | help | |
403 | This provides a means to encrypt and decrypt data using the AES | |
404 | (Advanced Encryption Standard). This algorithm uses a symetric key | |
405 | and is widely used as a streaming cipher. Different key lengths are | |
406 | supported by the algorithm but only a 128-bit key is supported at | |
407 | present. | |
408 | ||
928a8be7 | 409 | source lib/ecdsa/Kconfig |
d9f23c7f | 410 | source lib/rsa/Kconfig |
b4adf627 | 411 | source lib/crypto/Kconfig |
26dd9936 | 412 | source lib/crypt/Kconfig |
c4beb22f | 413 | |
a7d660bc SG |
414 | config TPM |
415 | bool "Trusted Platform Module (TPM) Support" | |
2419cd16 | 416 | depends on DM |
e67ffb5a | 417 | imply DM_RNG |
a7d660bc SG |
418 | help |
419 | This enables support for TPMs which can be used to provide security | |
420 | features for your board. The TPM can be connected via LPC or I2C | |
421 | and a sandbox TPM is provided for testing purposes. Use the 'tpm' | |
422 | command to interactive the TPM. Driver model support is provided | |
423 | for the low-level TPM interface, but only one TPM is supported at | |
424 | a time by the TPM library. | |
425 | ||
6307896c SG |
426 | config SPL_TPM |
427 | bool "Trusted Platform Module (TPM) Support in SPL" | |
428 | depends on SPL_DM | |
0c16fca9 | 429 | imply SPL_CRC8 |
6307896c SG |
430 | help |
431 | This enables support for TPMs which can be used to provide security | |
432 | features for your board. The TPM can be connected via LPC or I2C | |
433 | and a sandbox TPM is provided for testing purposes. Use the 'tpm' | |
434 | command to interactive the TPM. Driver model support is provided | |
435 | for the low-level TPM interface, but only one TPM is supported at | |
436 | a time by the TPM library. | |
437 | ||
438 | config TPL_TPM | |
439 | bool "Trusted Platform Module (TPM) Support in TPL" | |
440 | depends on TPL_DM | |
441 | help | |
442 | This enables support for TPMs which can be used to provide security | |
443 | features for your board. The TPM can be connected via LPC or I2C | |
444 | and a sandbox TPM is provided for testing purposes. Use the 'tpm' | |
445 | command to interactive the TPM. Driver model support is provided | |
446 | for the low-level TPM interface, but only one TPM is supported at | |
447 | a time by the TPM library. | |
448 | ||
747093dd SG |
449 | config VPL_TPM |
450 | bool "Trusted Platform Module (TPM) Support in VPL" | |
451 | depends on VPL_DM | |
452 | help | |
453 | This enables support for TPMs which can be used to provide security | |
454 | features for your board. The TPM can be connected via LPC or I2C | |
455 | and a sandbox TPM is provided for testing purposes. Use the 'tpm' | |
456 | command to interactive the TPM. Driver model support is provided | |
457 | for the low-level TPM interface, but only one TPM is supported at | |
458 | a time by the TPM library. | |
459 | ||
b1a873df SG |
460 | endmenu |
461 | ||
3330584d IO |
462 | menu "Android Verified Boot" |
463 | ||
464 | config LIBAVB | |
465 | bool "Android Verified Boot 2.0 support" | |
466 | depends on ANDROID_BOOT_IMAGE | |
3330584d IO |
467 | help |
468 | This enables support of Android Verified Boot 2.0 which can be used | |
469 | to assure the end user of the integrity of the software running on a | |
470 | device. Introduces such features as boot chain of trust, rollback | |
471 | protection etc. | |
472 | ||
473 | endmenu | |
474 | ||
94e3c8c4 | 475 | menu "Hashing Support" |
476 | ||
7c3fd5c2 QW |
477 | config BLAKE2 |
478 | bool "Enable BLAKE2 support" | |
479 | help | |
480 | This option enables support of hashing using BLAKE2B algorithm. | |
481 | The hash is calculated in software. | |
482 | The BLAKE2 algorithm produces a hash value (digest) between 1 and | |
483 | 64 bytes. | |
484 | ||
94e3c8c4 | 485 | config SHA1 |
486 | bool "Enable SHA1 support" | |
487 | help | |
488 | This option enables support of hashing using SHA1 algorithm. | |
489 | The hash is calculated in software. | |
490 | The SHA1 algorithm produces a 160-bit (20-byte) hash value | |
491 | (digest). | |
492 | ||
493 | config SHA256 | |
494 | bool "Enable SHA256 support" | |
495 | help | |
496 | This option enables support of hashing using SHA256 algorithm. | |
497 | The hash is calculated in software. | |
498 | The SHA256 algorithm produces a 256-bit (32-byte) hash value | |
499 | (digest). | |
500 | ||
d16b38f4 RD |
501 | config SHA512 |
502 | bool "Enable SHA512 support" | |
d16b38f4 RD |
503 | help |
504 | This option enables support of hashing using SHA512 algorithm. | |
505 | The hash is calculated in software. | |
506 | The SHA512 algorithm produces a 512-bit (64-byte) hash value | |
507 | (digest). | |
508 | ||
509 | config SHA384 | |
510 | bool "Enable SHA384 support" | |
e60e4499 | 511 | select SHA512 |
d16b38f4 RD |
512 | help |
513 | This option enables support of hashing using SHA384 algorithm. | |
e60e4499 AG |
514 | The hash is calculated in software. This is also selects SHA512, |
515 | because these implementations share the bulk of the code.. | |
d16b38f4 RD |
516 | The SHA384 algorithm produces a 384-bit (48-byte) hash value |
517 | (digest). | |
518 | ||
94e3c8c4 | 519 | config SHA_HW_ACCEL |
e2ae483c | 520 | bool "Enable hardware acceleration for SHA hash functions" |
94e3c8c4 | 521 | help |
e2ae483c HS |
522 | This option enables hardware acceleration for the SHA1 and SHA256 |
523 | hashing algorithms. This affects the 'hash' command and also the | |
524 | hash_lookup_algo() function. | |
525 | ||
603d15a5 SG |
526 | if SPL |
527 | ||
528 | config SPL_SHA1 | |
529 | bool "Enable SHA1 support in SPL" | |
530 | default y if SHA1 | |
531 | help | |
532 | This option enables support of hashing using SHA1 algorithm. | |
533 | The hash is calculated in software. | |
534 | The SHA1 algorithm produces a 160-bit (20-byte) hash value | |
535 | (digest). | |
536 | ||
537 | config SPL_SHA256 | |
538 | bool "Enable SHA256 support in SPL" | |
539 | default y if SHA256 | |
540 | help | |
541 | This option enables support of hashing using SHA256 algorithm. | |
542 | The hash is calculated in software. | |
543 | The SHA256 algorithm produces a 256-bit (32-byte) hash value | |
544 | (digest). | |
545 | ||
546 | config SPL_SHA512 | |
547 | bool "Enable SHA512 support in SPL" | |
548 | default y if SHA512 | |
549 | help | |
550 | This option enables support of hashing using SHA512 algorithm. | |
551 | The hash is calculated in software. | |
552 | The SHA512 algorithm produces a 512-bit (64-byte) hash value | |
553 | (digest). | |
554 | ||
555 | config SPL_SHA384 | |
556 | bool "Enable SHA384 support in SPL" | |
557 | default y if SHA384 | |
558 | select SPL_SHA512 | |
559 | help | |
560 | This option enables support of hashing using SHA384 algorithm. | |
561 | The hash is calculated in software. This is also selects SHA512, | |
562 | because these implementations share the bulk of the code.. | |
563 | The SHA384 algorithm produces a 384-bit (48-byte) hash value | |
564 | (digest). | |
565 | ||
2c21256b SG |
566 | config SPL_SHA_HW_ACCEL |
567 | bool "Enable hardware acceleration for SHA hash functions" | |
568 | default y if SHA_HW_ACCEL | |
569 | help | |
570 | This option enables hardware acceleration for the SHA1 and SHA256 | |
571 | hashing algorithms. This affects the 'hash' command and also the | |
572 | hash_lookup_algo() function. | |
573 | ||
574 | config SPL_SHA_PROG_HW_ACCEL | |
575 | bool "Enable Progressive hashing support using hardware in SPL" | |
576 | depends on SHA_PROG_HW_ACCEL | |
577 | default y | |
578 | help | |
579 | This option enables hardware-acceleration for SHA progressive | |
580 | hashing. | |
581 | Data can be streamed in a block at a time and the hashing is | |
582 | performed in hardware. | |
583 | ||
603d15a5 SG |
584 | endif |
585 | ||
5a6bc166 SG |
586 | config VPL_SHA1 |
587 | bool "Enable SHA1 support in VPL" | |
588 | depends on VPL | |
589 | default y if SHA1 | |
590 | help | |
591 | This option enables support of hashing using SHA1 algorithm. | |
592 | The hash is calculated in software. | |
593 | The SHA1 algorithm produces a 160-bit (20-byte) hash value | |
594 | (digest). | |
595 | ||
596 | config VPL_SHA256 | |
597 | bool "Enable SHA256 support in VPL" | |
598 | depends on VPL | |
599 | default y if SHA256 | |
600 | help | |
601 | This option enables support of hashing using SHA256 algorithm. | |
602 | The hash is calculated in software. | |
603 | The SHA256 algorithm produces a 256-bit (32-byte) hash value | |
604 | (digest). | |
605 | ||
e2ae483c HS |
606 | if SHA_HW_ACCEL |
607 | ||
608 | config SHA512_HW_ACCEL | |
609 | bool "Enable hardware acceleration for SHA512" | |
e60e4499 | 610 | depends on SHA512 |
e2ae483c HS |
611 | help |
612 | This option enables hardware acceleration for the SHA384 and SHA512 | |
613 | hashing algorithms. This affects the 'hash' command and also the | |
614 | hash_lookup_algo() function. | |
94e3c8c4 | 615 | |
616 | config SHA_PROG_HW_ACCEL | |
617 | bool "Enable Progressive hashing support using hardware" | |
94e3c8c4 | 618 | help |
a479f103 JS |
619 | This option enables hardware-acceleration for SHA progressive |
620 | hashing. | |
621 | Data can be streamed in a block at a time and the hashing is | |
622 | performed in hardware. | |
bea79d7d | 623 | |
e2ae483c HS |
624 | endif |
625 | ||
bea79d7d | 626 | config MD5 |
8239be61 SG |
627 | bool "Support MD5 algorithm" |
628 | help | |
629 | This option enables MD5 support. MD5 is an algorithm designed | |
630 | in 1991 that produces a 16-byte digest (or checksum) from its input | |
631 | data. It has a number of vulnerabilities which preclude its use in | |
632 | security applications, but it can be useful for providing a quick | |
633 | checksum of a block of data. | |
634 | ||
635 | config SPL_MD5 | |
636 | bool "Support MD5 algorithm in SPL" | |
b340199f | 637 | depends on SPL |
8239be61 SG |
638 | help |
639 | This option enables MD5 support in SPL. MD5 is an algorithm designed | |
640 | in 1991 that produces a 16-byte digest (or checksum) from its input | |
641 | data. It has a number of vulnerabilities which preclude its use in | |
642 | security applications, but it can be useful for providing a quick | |
643 | checksum of a block of data. | |
bea79d7d | 644 | |
0c16fca9 SG |
645 | config CRC8 |
646 | def_bool y | |
647 | help | |
648 | Enables CRC8 support in U-Boot. This is normally required. CRC8 is | |
649 | a simple and fast checksumming algorithm which does a bytewise | |
650 | checksum with feedback to produce an 8-bit result. The code is small | |
651 | and it does not require a lookup table (unlike CRC32). | |
652 | ||
653 | config SPL_CRC8 | |
654 | bool "Support CRC8 in SPL" | |
655 | depends on SPL | |
656 | help | |
657 | Enables CRC8 support in SPL. This is not normally required. CRC8 is | |
658 | a simple and fast checksumming algorithm which does a bytewise | |
659 | checksum with feedback to produce an 8-bit result. The code is small | |
660 | and it does not require a lookup table (unlike CRC32). | |
661 | ||
e7d285b2 SG |
662 | config CRC32 |
663 | def_bool y | |
664 | help | |
665 | Enables CRC32 support in U-Boot. This is normally required. | |
666 | ||
85d8bf57 MB |
667 | config CRC32C |
668 | bool | |
669 | ||
83a486b6 MB |
670 | config XXHASH |
671 | bool | |
672 | ||
94e3c8c4 | 673 | endmenu |
674 | ||
027b728d JW |
675 | menu "Compression Support" |
676 | ||
677 | config LZ4 | |
678 | bool "Enable LZ4 decompression support" | |
679 | help | |
680 | If this option is set, support for LZ4 compressed images | |
681 | is included. The LZ4 algorithm can run in-place as long as the | |
682 | compressed image is loaded to the end of the output buffer, and | |
683 | trades lower compression ratios for much faster decompression. | |
4fa0150d | 684 | |
027b728d JW |
685 | NOTE: This implements the release version of the LZ4 frame |
686 | format as generated by default by the 'lz4' command line tool. | |
687 | This is not the same as the outdated, less efficient legacy | |
688 | frame format currently (2015) implemented in the Linux kernel | |
689 | (generated by 'lz4 -l'). The two formats are incompatible. | |
690 | ||
aed998aa SG |
691 | config LZMA |
692 | bool "Enable LZMA decompression support" | |
693 | help | |
694 | This enables support for LZMA (Lempel-Ziv-Markov chain algorithm), | |
695 | a dictionary compression algorithm that provides a high compression | |
696 | ratio and fairly fast decompression speed. See also | |
697 | CONFIG_CMD_LZMADEC which provides a decode command. | |
698 | ||
173aafbf | 699 | config LZO |
d56b4b19 TR |
700 | bool "Enable LZO decompression support" |
701 | help | |
5145bc73 | 702 | This enables support for the LZO compression algorithm. |
7264f292 | 703 | |
95f4bbd5 | 704 | config GZIP |
5132361a | 705 | bool "Enable gzip decompression support" |
95f4bbd5 MV |
706 | select ZLIB |
707 | default y | |
708 | help | |
709 | This enables support for GZIP compression algorithm. | |
2a2119e1 | 710 | |
81014f73 JMC |
711 | config ZLIB_UNCOMPRESS |
712 | bool "Enables zlib's uncompress() functionality" | |
713 | help | |
714 | This enables an extra zlib functionality: the uncompress() function, | |
715 | which decompresses data from a buffer into another, knowing their | |
716 | sizes. Unlike gunzip(), there is no header parsing. | |
717 | ||
eff5a547 MW |
718 | config GZIP_COMPRESSED |
719 | bool | |
720 | select ZLIB | |
721 | ||
2a2119e1 AP |
722 | config BZIP2 |
723 | bool "Enable bzip2 decompression support" | |
724 | help | |
725 | This enables support for BZIP2 compression algorithm. | |
95f4bbd5 MV |
726 | |
727 | config ZLIB | |
728 | bool | |
729 | default y | |
730 | help | |
731 | This enables ZLIB compression lib. | |
732 | ||
8509f22a MB |
733 | config ZSTD |
734 | bool "Enable Zstandard decompression support" | |
735 | select XXHASH | |
736 | help | |
737 | This enables Zstandard decompression library. | |
738 | ||
4b9b25d9 BM |
739 | if ZSTD |
740 | ||
741 | config ZSTD_LIB_MINIFY | |
742 | bool "Minify Zstandard code" | |
743 | default y | |
744 | help | |
745 | This disables various optional components and changes the | |
746 | compilation flags to prioritize space-saving. | |
747 | ||
748 | For detailed info, see zstd's lib/README.md | |
749 | ||
750 | https://github.com/facebook/zstd/blob/dev/lib/README.md | |
751 | ||
752 | endif | |
753 | ||
ae625d92 SG |
754 | config SPL_BZIP2 |
755 | bool "Enable bzip2 decompression support for SPL build" | |
756 | depends on SPL | |
757 | help | |
758 | This enables support for bzip2 compression algorithm for SPL boot. | |
759 | ||
048c6e89 SG |
760 | config SPL_LZ4 |
761 | bool "Enable LZ4 decompression support in SPL" | |
b340199f | 762 | depends on SPL |
048c6e89 | 763 | help |
43e442a5 | 764 | This enables support for the LZ4 decompression algorithm in SPL. LZ4 |
048c6e89 SG |
765 | is a lossless data compression algorithm that is focused on |
766 | fast compression and decompression speed. It belongs to the LZ77 | |
767 | family of byte-oriented compression schemes. | |
768 | ||
04cb3994 WG |
769 | config SPL_LZMA |
770 | bool "Enable LZMA decompression support for SPL build" | |
b340199f | 771 | depends on SPL |
04cb3994 | 772 | help |
43e442a5 | 773 | This enables support for LZMA compression algorithm for SPL boot. |
04cb3994 | 774 | |
747093dd SG |
775 | config VPL_LZMA |
776 | bool "Enable LZMA decompression support for VPL build" | |
777 | default y if LZMA | |
778 | help | |
779 | This enables support for LZMA compression algorithm for VPL boot. | |
780 | ||
f52bdf4b JJH |
781 | config SPL_LZO |
782 | bool "Enable LZO decompression support in SPL" | |
b340199f | 783 | depends on SPL |
f52bdf4b JJH |
784 | help |
785 | This enables support for LZO compression algorithm in the SPL. | |
786 | ||
7264f292 YS |
787 | config SPL_GZIP |
788 | bool "Enable gzip decompression support for SPL build" | |
789 | select SPL_ZLIB | |
790 | help | |
5145bc73 | 791 | This enables support for the GZIP compression algorithm for SPL boot. |
7264f292 YS |
792 | |
793 | config SPL_ZLIB | |
794 | bool | |
795 | help | |
796 | This enables compression lib for SPL boot. | |
797 | ||
8509f22a MB |
798 | config SPL_ZSTD |
799 | bool "Enable Zstandard decompression support in SPL" | |
b340199f | 800 | depends on SPL |
8509f22a MB |
801 | select XXHASH |
802 | help | |
803 | This enables Zstandard decompression library in the SPL. | |
804 | ||
027b728d JW |
805 | endmenu |
806 | ||
6501ff62 PM |
807 | config ERRNO_STR |
808 | bool "Enable function for getting errno-related string message" | |
809 | help | |
810 | The function errno_str(int errno), returns a pointer to the errno | |
811 | corresponding text message: | |
812 | - if errno is null or positive number - a pointer to "Success" message | |
813 | - if errno is negative - a pointer to errno related message | |
814 | ||
f8c987f8 AB |
815 | config HEXDUMP |
816 | bool "Enable hexdump" | |
817 | help | |
818 | This enables functions for printing dumps of binary data. | |
819 | ||
26637e2e SG |
820 | config SPL_HEXDUMP |
821 | bool "Enable hexdump in SPL" | |
fa3f1f1d | 822 | depends on SPL && HEXDUMP |
26637e2e SG |
823 | help |
824 | This enables functions for printing dumps of binary data in | |
825 | SPL. | |
826 | ||
72eda507 SA |
827 | config GETOPT |
828 | bool "Enable getopt" | |
829 | help | |
830 | This enables functions for parsing command-line options. | |
831 | ||
69e173eb SG |
832 | config OF_LIBFDT |
833 | bool "Enable the FDT library" | |
834 | default y if OF_CONTROL | |
835 | help | |
836 | This enables the FDT library (libfdt). It provides functions for | |
837 | accessing binary device tree images in memory, such as adding and | |
f1a7ba1d | 838 | removing nodes and properties, scanning through the tree and finding |
69e173eb SG |
839 | particular compatible nodes. The library operates on a flattened |
840 | version of the device tree. | |
841 | ||
0d76afc0 SG |
842 | config OF_LIBFDT_ASSUME_MASK |
843 | hex "Mask of conditions to assume for libfdt" | |
844 | depends on OF_LIBFDT || FIT | |
845 | default 0 | |
846 | help | |
847 | Use this to change the assumptions made by libfdt about the | |
848 | device tree it is working with. A value of 0 means that no assumptions | |
849 | are made, and libfdt is able to deal with malicious data. A value of | |
850 | 0xff means all assumptions are made and any invalid data may cause | |
851 | unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h | |
852 | ||
ddf67f71 MR |
853 | config OF_LIBFDT_OVERLAY |
854 | bool "Enable the FDT library overlay support" | |
6417572e | 855 | depends on OF_LIBFDT |
58a46f88 | 856 | default y if ARCH_OMAP2PLUS || ARCH_KEYSTONE |
ddf67f71 MR |
857 | help |
858 | This enables the FDT library (libfdt) overlay support. | |
859 | ||
40ed7be4 TR |
860 | config SYS_FDT_PAD |
861 | hex "Maximum size of the FDT memory area passeed to the OS" | |
862 | depends on OF_LIBFDT | |
863 | default 0x13000 if FMAN_ENET || QE || U_QE | |
864 | default 0x3000 | |
865 | help | |
866 | During OS boot, we allocate a region of memory within the bootmap | |
867 | for the FDT. This is the size that we will expand the FDT that we | |
868 | are using will be extended to be, in bytes. | |
869 | ||
aa34fbc0 SG |
870 | config SPL_OF_LIBFDT |
871 | bool "Enable the FDT library for SPL" | |
747093dd | 872 | depends on SPL_LIBGENERIC_SUPPORT |
aa34fbc0 SG |
873 | default y if SPL_OF_CONTROL |
874 | help | |
875 | This enables the FDT library (libfdt). It provides functions for | |
876 | accessing binary device tree images in memory, such as adding and | |
f1a7ba1d | 877 | removing nodes and properties, scanning through the tree and finding |
aa34fbc0 SG |
878 | particular compatible nodes. The library operates on a flattened |
879 | version of the device tree. | |
880 | ||
0d76afc0 SG |
881 | config SPL_OF_LIBFDT_ASSUME_MASK |
882 | hex "Mask of conditions to assume for libfdt" | |
b340199f | 883 | depends on SPL_OF_LIBFDT || (FIT && SPL) |
0d76afc0 SG |
884 | default 0xff |
885 | help | |
886 | Use this to change the assumptions made by libfdt in SPL about the | |
887 | device tree it is working with. A value of 0 means that no assumptions | |
888 | are made, and libfdt is able to deal with malicious data. A value of | |
889 | 0xff means all assumptions are made and any invalid data may cause | |
890 | unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h | |
891 | ||
5592a633 SG |
892 | config TPL_OF_LIBFDT |
893 | bool "Enable the FDT library for TPL" | |
747093dd | 894 | depends on TPL_LIBGENERIC_SUPPORT |
5592a633 SG |
895 | default y if TPL_OF_CONTROL |
896 | help | |
897 | This enables the FDT library (libfdt). It provides functions for | |
898 | accessing binary device tree images in memory, such as adding and | |
899 | removing nodes and properties, scanning through the tree and finding | |
900 | particular compatible nodes. The library operates on a flattened | |
901 | version of the device tree. | |
902 | ||
0d76afc0 SG |
903 | config TPL_OF_LIBFDT_ASSUME_MASK |
904 | hex "Mask of conditions to assume for libfdt" | |
8bea4bf7 | 905 | depends on TPL_OF_LIBFDT || (FIT && TPL) |
0d76afc0 SG |
906 | default 0xff |
907 | help | |
908 | Use this to change the assumptions made by libfdt in TPL about the | |
909 | device tree it is working with. A value of 0 means that no assumptions | |
910 | are made, and libfdt is able to deal with malicious data. A value of | |
911 | 0xff means all assumptions are made and any invalid data may cause | |
912 | unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h | |
913 | ||
747093dd SG |
914 | config VPL_OF_LIBFDT |
915 | bool "Enable the FDT library for VPL" | |
13ce351b | 916 | depends on VPL |
747093dd SG |
917 | default y if VPL_OF_CONTROL && !VPL_OF_PLATDATA |
918 | help | |
919 | This enables the FDT library (libfdt). It provides functions for | |
920 | accessing binary device tree images in memory, such as adding and | |
921 | removing nodes and properties, scanning through the tree and finding | |
922 | particular compatible nodes. The library operates on a flattened | |
923 | version of the device tree. | |
924 | ||
925 | config VPL_OF_LIBFDT_ASSUME_MASK | |
926 | hex "Mask of conditions to assume for libfdt" | |
13ce351b | 927 | depends on VPL_OF_LIBFDT || (FIT && VPL) |
747093dd SG |
928 | default 0xff |
929 | help | |
930 | Use this to change the assumptions made by libfdt in SPL about the | |
931 | device tree it is working with. A value of 0 means that no assumptions | |
932 | are made, and libfdt is able to deal with malicious data. A value of | |
933 | 0xff means all assumptions are made and any invalid data may cause | |
934 | unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h | |
935 | ||
ebf7fff2 HS |
936 | config FDT_FIXUP_PARTITIONS |
937 | bool "overwrite MTD partitions in DTS through defined in 'mtdparts'" | |
938 | depends on OF_LIBFDT | |
ab948cd2 | 939 | depends on CMD_MTDPARTS |
ebf7fff2 HS |
940 | help |
941 | Allow overwriting defined partitions in the device tree blob | |
942 | using partition info defined in the 'mtdparts' environment | |
943 | variable. | |
944 | ||
4b6dddc2 | 945 | menu "System tables" |
e663b350 | 946 | depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER) |
4b6dddc2 | 947 | |
d2cb7a22 SG |
948 | config BLOBLIST_TABLES |
949 | bool "Put tables in a bloblist" | |
f2c1442e | 950 | depends on X86 && BLOBLIST |
d2cb7a22 SG |
951 | help |
952 | Normally tables are placed at address 0xf0000 and can be up to 64KB | |
953 | long. With this option, tables are instead placed in the bloblist | |
954 | with a pointer from 0xf0000. The size can then be larger and the | |
955 | tables can be placed high in memory. | |
956 | ||
4b6dddc2 AG |
957 | config GENERATE_SMBIOS_TABLE |
958 | bool "Generate an SMBIOS (System Management BIOS) table" | |
959 | default y | |
e663b350 | 960 | depends on X86 || EFI_LOADER |
4b6dddc2 AG |
961 | help |
962 | The System Management BIOS (SMBIOS) specification addresses how | |
963 | motherboard and system vendors present management information about | |
964 | their products in a standard format by extending the BIOS interface | |
965 | on Intel architecture systems. | |
966 | ||
967 | Check http://www.dmtf.org/standards/smbios for details. | |
968 | ||
44c74bdd SG |
969 | See also SMBIOS_SYSINFO which allows SMBIOS values to be provided in |
970 | the devicetree. | |
971 | ||
7d0f3fbb TK |
972 | config LIB_RATIONAL |
973 | bool "enable continued fraction calculation routines" | |
974 | ||
975 | config SPL_LIB_RATIONAL | |
976 | bool "enable continued fraction calculation routines for SPL" | |
977 | depends on SPL | |
978 | ||
4b6dddc2 AG |
979 | endmenu |
980 | ||
2b12196d AT |
981 | config ASN1_COMPILER |
982 | bool | |
a0e71d96 PR |
983 | help |
984 | ASN.1 (Abstract Syntax Notation One) is a standard interface | |
985 | description language for defining data structures that can be | |
986 | serialized and deserialized in a cross-platform way. It is | |
987 | broadly used in telecommunications and computer networking, | |
988 | and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1). | |
989 | This option enables the support of the asn1 compiler. | |
2b12196d | 990 | |
ab8a0e06 AT |
991 | config ASN1_DECODER |
992 | bool | |
993 | help | |
a0e71d96 PR |
994 | ASN.1 (Abstract Syntax Notation One) is a standard interface |
995 | description language for defining data structures that can be | |
996 | serialized and deserialized in a cross-platform way. It is | |
997 | broadly used in telecommunications and computer networking, | |
998 | and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1). | |
999 | This option enables the support of the asn1 decoder. | |
ab8a0e06 | 1000 | |
fd210fee PR |
1001 | config SPL_ASN1_DECODER |
1002 | bool | |
1003 | help | |
1004 | ASN.1 (Abstract Syntax Notation One) is a standard interface | |
1005 | description language for defining data structures that can be | |
1006 | serialized and deserialized in a cross-platform way. It is | |
1007 | broadly used in telecommunications and computer networking, | |
1008 | and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1). | |
1009 | This option enables the support of the asn1 decoder in the SPL. | |
1010 | ||
a9b45e6e AT |
1011 | config OID_REGISTRY |
1012 | bool | |
1013 | help | |
7d44a985 PR |
1014 | In computing, object identifiers or OIDs are an identifier mechanism |
1015 | standardized by the International Telecommunication Union (ITU) and | |
1016 | ISO/IEC for naming any object, concept, or "thing" with a globally | |
1017 | unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier). | |
a9b45e6e AT |
1018 | Enable fast lookup object identifier registry. |
1019 | ||
fd210fee PR |
1020 | config SPL_OID_REGISTRY |
1021 | bool | |
1022 | help | |
1023 | In computing, object identifiers or OIDs are an identifier mechanism | |
1024 | standardized by the International Telecommunication Union (ITU) and | |
1025 | ISO/IEC for naming any object, concept, or "thing" with a globally | |
1026 | unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier). | |
1027 | Enable fast lookup object identifier registry in the SPL. | |
1028 | ||
415eab06 CG |
1029 | config SMBIOS_PARSER |
1030 | bool "SMBIOS parser" | |
1031 | help | |
1032 | A simple parser for SMBIOS data. | |
1033 | ||
867a6ac8 | 1034 | source lib/efi/Kconfig |
ed980b8c | 1035 | source lib/efi_loader/Kconfig |
32ce6179 | 1036 | source lib/optee/Kconfig |
867a6ac8 | 1037 | |
54969b40 TR |
1038 | config TEST_FDTDEC |
1039 | bool "enable fdtdec test" | |
1040 | depends on OF_LIBFDT | |
1041 | ||
05429b6c AT |
1042 | config LIB_DATE |
1043 | bool | |
1044 | ||
805b3cac K |
1045 | config LIB_ELF |
1046 | bool | |
1047 | help | |
6205bbb1 PD |
1048 | Support basic elf loading/validating functions. |
1049 | This supports for 32 bit and 64 bit versions. | |
805b3cac | 1050 | |
77b8cfef PD |
1051 | config LMB |
1052 | bool "Enable the logical memory blocks library (lmb)" | |
11232139 | 1053 | default y if ARC || ARM || M68K || MICROBLAZE || MIPS || \ |
77b8cfef PD |
1054 | NIOS2 || PPC || RISCV || SANDBOX || SH || X86 || XTENSA |
1055 | help | |
1056 | Support the library logical memory blocks. | |
1057 | ||
6d66502b | 1058 | config LMB_USE_MAX_REGIONS |
ac7606af | 1059 | bool "Use a common number of memory and reserved regions in lmb lib" |
6d66502b | 1060 | depends on LMB |
948d3999 | 1061 | default y |
6d66502b PD |
1062 | help |
1063 | Define the number of supported memory regions in the library logical | |
1064 | memory blocks. | |
1065 | This feature allow to reduce the lmb library size by using compiler | |
1066 | optimization when LMB_MEMORY_REGIONS == LMB_RESERVED_REGIONS. | |
4fa0150d PD |
1067 | |
1068 | config LMB_MAX_REGIONS | |
1069 | int "Number of memory and reserved regions in lmb lib" | |
6d66502b | 1070 | depends on LMB && LMB_USE_MAX_REGIONS |
2dc16a2c | 1071 | default 16 |
4fa0150d PD |
1072 | help |
1073 | Define the number of supported regions, memory and reserved, in the | |
1074 | library logical memory blocks. | |
6d66502b PD |
1075 | |
1076 | config LMB_MEMORY_REGIONS | |
1077 | int "Number of memory regions in lmb lib" | |
1078 | depends on LMB && !LMB_USE_MAX_REGIONS | |
1079 | default 8 | |
1080 | help | |
1081 | Define the number of supported memory regions in the library logical | |
1082 | memory blocks. | |
1083 | The minimal value is CONFIG_NR_DRAM_BANKS. | |
1084 | ||
1085 | config LMB_RESERVED_REGIONS | |
1086 | int "Number of reserved regions in lmb lib" | |
1087 | depends on LMB && !LMB_USE_MAX_REGIONS | |
1088 | default 8 | |
1089 | help | |
1090 | Define the number of supported reserved regions in the library logical | |
1091 | memory blocks. | |
1092 | ||
ebc1d50a SG |
1093 | config PHANDLE_CHECK_SEQ |
1094 | bool "Enable phandle check while getting sequence number" | |
1095 | help | |
1096 | When there are multiple device tree nodes with same name, | |
1097 | enable this config option to distinguish them using | |
1098 | phandles in fdtdec_get_alias_seq() function. | |
1099 | ||
97f2a749 | 1100 | endmenu |
86794052 SG |
1101 | |
1102 | menu "FWU Multi Bank Updates" | |
1103 | ||
1104 | source lib/fwu_updates/Kconfig | |
1105 | ||
1106 | endmenu |