1 menu "Library routines"
4 bool "Enable support for non-identity virtual-physical mappings"
6 Enables helper code for implementing non-identity virtual-physical
7 memory mappings for 32bit CPUs.
9 This library only works in the post-relocation phase.
11 config SYS_NUM_ADDR_MAP
12 int "Size of the address-map table"
16 Sets the number of entries in the virtual-physical mapping table.
19 bool "Access to physical memory region (> 4G)"
21 Some basic support is provided for operations on memory not
22 normally accessible to 32-bit U-Boot - e.g. some architectures
23 support access to more than 4G of memory on 32-bit
24 machines using physical address extension or similar.
25 Enable this to access this basic support, which only supports clearing
29 bool "Enable Software based BCH ECC"
31 Enables software based BCH ECC algorithm present in lib/bch.c
32 This is used by SoC platforms which do not have built-in ELM
33 hardware engine required for BCH ECC correction.
36 bool "Allow access to binman information in the device tree"
37 depends on BINMAN && DM && OF_CONTROL
38 default y if OF_SEPARATE || OF_EMBED
40 This enables U-Boot to access information about binman entries,
41 stored in the device tree in a binman node. Typical uses are to
42 locate entries in the firmware image. See binman.h for the available
45 config CC_OPTIMIZE_LIBS_FOR_SPEED
46 bool "Optimize libraries for speed"
48 Enabling this option will pass "-O2" to gcc when compiling
49 under "lib" directory.
55 default y if UT_UNICODE || EFI_LOADER || UFS || EFI_APP
57 Enables support for various conversions between different
58 character sets, such as between unicode representations and
59 different 'code pages'.
61 config DYNAMIC_CRC_TABLE
62 bool "Enable Dynamic tables for CRC"
64 Enable this option to calculate entries for CRC tables at runtime.
65 This can be helpful when reducing the size of the build image
67 config HAVE_ARCH_IOMAP
70 Enable this option if architecture provides io{read,write}{8,16,32}
71 I/O accessor functions.
73 config HAVE_PRIVATE_LIBGCC
86 select SPL_STRTO if !SPL_USE_TINY_PRINTF
91 select TPL_STRTO if !TPL_USE_TINY_PRINTF
96 select VPL_STRTO if !VPL_USE_TINY_PRINTF
130 config IMAGE_SPARSE_FILLBUF_SIZE
131 hex "Android sparse image CHUNK_TYPE_FILL buffer size"
133 depends on IMAGE_SPARSE
135 Set the size of the fill buffer used when processing CHUNK_TYPE_FILL
138 config USE_PRIVATE_LIBGCC
139 bool "Use private libgcc"
140 depends on HAVE_PRIVATE_LIBGCC
141 default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS)
143 This option allows you to use the built-in libgcc implementation
144 of U-Boot instead of the one provided by the compiler.
151 The frequency of the timer returned by get_timer().
152 get_timer() must operate in milliseconds and this option must be
155 config SPL_USE_TINY_PRINTF
156 bool "Enable tiny printf() version in SPL"
160 This option enables a tiny, stripped down printf version.
161 This should only be used in space limited environments,
162 like SPL versions with hard memory limits. This version
163 reduces the code size by about 2.5KiB on armv7.
165 The supported format specifiers are %c, %s, %u/%d and %x.
167 config TPL_USE_TINY_PRINTF
168 bool "Enable tiny printf() version in TPL"
170 default y if SPL_USE_TINY_PRINTF
172 This option enables a tiny, stripped down printf version.
173 This should only be used in space limited environments,
174 like SPL versions with hard memory limits. This version
175 reduces the code size by about 2.5KiB on armv7.
177 The supported format specifiers are %c, %s, %u/%d and %x.
179 config VPL_USE_TINY_PRINTF
180 bool "Enable tiny printf() version for VPL"
183 This option enables a tiny, stripped down printf version.
184 This should only be used in space limited environments,
185 like SPL versions with hard memory limits. This version
186 reduces the code size by about 2.5KiB on armv7.
188 The supported format specifiers are %c, %s, %u/%d and %x.
191 bool "Do not reset the system on fatal error"
193 Define this option to stop the system in case of a fatal error,
194 so that you have to reset it manually. This is probably NOT a good
195 idea for an embedded system where you want the system to reboot
196 automatically as fast as possible, but it may be useful during
197 development since you can try to debug the conditions that lead to
201 bool "Enable regular expression support"
204 If this variable is defined, U-Boot is linked against the
205 SLRE (Super Light Regular Expression) library, which adds
206 regex support to some commands, for example "env grep" and
210 prompt "Pseudo-random library support type"
211 depends on NET_RANDOM_ETHADDR || RANDOM_UUID || CMD_UUID || \
212 RNG_SANDBOX || UT_LIB && AES || FAT_WRITE
215 Select the library to provide pseudo-random number generator
216 functions. LIB_HW_RAND supports certain hardware engines that
217 provide this functionality. If in doubt, select LIB_RAND.
220 bool "Pseudo-random library support"
223 bool "HW Engine for random library support"
230 Enable this if your arch or board can support generating ACPI
231 (Advanced Configuration and Power Interface) tables. In this case
232 U-Boot can generate these tables and pass them to the Operating
235 config GENERATE_ACPI_TABLE
236 bool "Generate an ACPI (Advanced Configuration and Power Interface) table"
237 depends on SUPPORT_ACPI
240 The Advanced Configuration and Power Interface (ACPI) specification
241 provides an open standard for device configuration and management
242 by the operating system. It defines platform-independent interfaces
243 for configuration and power management monitoring.
245 config SPL_TINY_MEMSET
246 bool "Use a very small memset() in SPL"
248 The faster memset() is the arch-specific one (if available) enabled
249 by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
250 better performance by writing a word at a time. But in very
251 size-constrained environments even this may be too big. Enable this
252 option to reduce code size slightly at the cost of some speed.
254 config TPL_TINY_MEMSET
255 bool "Use a very small memset() in TPL"
257 The faster memset() is the arch-specific one (if available) enabled
258 by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
259 better performance by writing a word at a time. But in very
260 size-constrained environments even this may be too big. Enable this
261 option to reduce code size slightly at the cost of some speed.
267 bool "Bit reverse library from Linux"
270 bool "Support for tracing of function calls and timing"
274 Enables function tracing within U-Boot. This allows recording of call
275 traces including timing information. The command can write data to
276 memory for exporting for analysis (e.g. using bootchart).
277 See doc/README.trace for full details.
279 config TRACE_BUFFER_SIZE
280 hex "Size of trace buffer in U-Boot"
284 Sets the size of the trace buffer in U-Boot. This is allocated from
285 memory during relocation. If this buffer is too small, the trace
286 history will be truncated, with later records omitted.
288 If early trace is enabled (i.e. before relocation), this buffer must
289 be large enough to include all the data from the early trace buffer as
290 well, since this is copied over to the main buffer during relocation.
292 A trace record is emitted for each function call and each record is
293 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If
294 the size is too small then 'trace stats' will show a message saying
295 how many records were dropped due to buffer overflow.
297 config TRACE_CALL_DEPTH_LIMIT
298 int "Trace call depth limit"
302 Sets the maximum call depth up to which function calls are recorded.
305 bool "Enable tracing before relocation"
308 Sometimes it is helpful to trace execution of U-Boot before
309 relocation. This is possible by using a arch-specific, fixed buffer
310 position in memory. Enable this option to start tracing as early as
311 possible after U-Boot starts.
313 config TRACE_EARLY_SIZE
314 hex "Size of early trace buffer in U-Boot"
315 depends on TRACE_EARLY
318 Sets the size of the early trace buffer in bytes. This is used to hold
319 tracing information before relocation.
321 config TRACE_EARLY_CALL_DEPTH_LIMIT
322 int "Early trace call depth limit"
323 depends on TRACE_EARLY
326 Sets the maximum call depth up to which function calls are recorded
327 during early tracing.
329 config TRACE_EARLY_ADDR
330 hex "Address of early trace buffer in U-Boot"
331 depends on TRACE_EARLY
334 Sets the address of the early trace buffer in U-Boot. This memory
335 must be accessible before relocation.
337 A trace record is emitted for each function call and each record is
338 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If
339 the size is too small then the message which says the amount of early
340 data being coped will the the same as the
343 bool "Enable circular buffer support"
345 source lib/dhry/Kconfig
347 menu "Security support"
350 bool "Support the AES algorithm"
352 This provides a means to encrypt and decrypt data using the AES
353 (Advanced Encryption Standard). This algorithm uses a symetric key
354 and is widely used as a streaming cipher. Different key lengths are
355 supported by the algorithm but only a 128-bit key is supported at
358 source lib/ecdsa/Kconfig
359 source lib/rsa/Kconfig
360 source lib/crypto/Kconfig
361 source lib/crypt/Kconfig
364 bool "Trusted Platform Module (TPM) Support"
367 This enables support for TPMs which can be used to provide security
368 features for your board. The TPM can be connected via LPC or I2C
369 and a sandbox TPM is provided for testing purposes. Use the 'tpm'
370 command to interactive the TPM. Driver model support is provided
371 for the low-level TPM interface, but only one TPM is supported at
372 a time by the TPM library.
375 bool "Trusted Platform Module (TPM) Support in SPL"
378 This enables support for TPMs which can be used to provide security
379 features for your board. The TPM can be connected via LPC or I2C
380 and a sandbox TPM is provided for testing purposes. Use the 'tpm'
381 command to interactive the TPM. Driver model support is provided
382 for the low-level TPM interface, but only one TPM is supported at
383 a time by the TPM library.
386 bool "Trusted Platform Module (TPM) Support in TPL"
389 This enables support for TPMs which can be used to provide security
390 features for your board. The TPM can be connected via LPC or I2C
391 and a sandbox TPM is provided for testing purposes. Use the 'tpm'
392 command to interactive the TPM. Driver model support is provided
393 for the low-level TPM interface, but only one TPM is supported at
394 a time by the TPM library.
397 bool "Trusted Platform Module (TPM) Support in VPL"
400 This enables support for TPMs which can be used to provide security
401 features for your board. The TPM can be connected via LPC or I2C
402 and a sandbox TPM is provided for testing purposes. Use the 'tpm'
403 command to interactive the TPM. Driver model support is provided
404 for the low-level TPM interface, but only one TPM is supported at
405 a time by the TPM library.
409 menu "Android Verified Boot"
412 bool "Android Verified Boot 2.0 support"
413 depends on ANDROID_BOOT_IMAGE
415 This enables support of Android Verified Boot 2.0 which can be used
416 to assure the end user of the integrity of the software running on a
417 device. Introduces such features as boot chain of trust, rollback
422 menu "Hashing Support"
425 bool "Enable BLAKE2 support"
427 This option enables support of hashing using BLAKE2B algorithm.
428 The hash is calculated in software.
429 The BLAKE2 algorithm produces a hash value (digest) between 1 and
433 bool "Enable SHA1 support"
435 This option enables support of hashing using SHA1 algorithm.
436 The hash is calculated in software.
437 The SHA1 algorithm produces a 160-bit (20-byte) hash value
441 bool "Enable SHA256 support"
443 This option enables support of hashing using SHA256 algorithm.
444 The hash is calculated in software.
445 The SHA256 algorithm produces a 256-bit (32-byte) hash value
449 bool "Enable SHA512 support"
451 This option enables support of hashing using SHA512 algorithm.
452 The hash is calculated in software.
453 The SHA512 algorithm produces a 512-bit (64-byte) hash value
457 bool "Enable SHA384 support"
460 This option enables support of hashing using SHA384 algorithm.
461 The hash is calculated in software. This is also selects SHA512,
462 because these implementations share the bulk of the code..
463 The SHA384 algorithm produces a 384-bit (48-byte) hash value
467 bool "Enable hardware acceleration for SHA hash functions"
469 This option enables hardware acceleration for the SHA1 and SHA256
470 hashing algorithms. This affects the 'hash' command and also the
471 hash_lookup_algo() function.
476 bool "Enable SHA1 support in SPL"
479 This option enables support of hashing using SHA1 algorithm.
480 The hash is calculated in software.
481 The SHA1 algorithm produces a 160-bit (20-byte) hash value
485 bool "Enable SHA256 support in SPL"
488 This option enables support of hashing using SHA256 algorithm.
489 The hash is calculated in software.
490 The SHA256 algorithm produces a 256-bit (32-byte) hash value
494 bool "Enable SHA512 support in SPL"
497 This option enables support of hashing using SHA512 algorithm.
498 The hash is calculated in software.
499 The SHA512 algorithm produces a 512-bit (64-byte) hash value
503 bool "Enable SHA384 support in SPL"
507 This option enables support of hashing using SHA384 algorithm.
508 The hash is calculated in software. This is also selects SHA512,
509 because these implementations share the bulk of the code..
510 The SHA384 algorithm produces a 384-bit (48-byte) hash value
513 config SPL_SHA_HW_ACCEL
514 bool "Enable hardware acceleration for SHA hash functions"
515 default y if SHA_HW_ACCEL
517 This option enables hardware acceleration for the SHA1 and SHA256
518 hashing algorithms. This affects the 'hash' command and also the
519 hash_lookup_algo() function.
521 config SPL_SHA_PROG_HW_ACCEL
522 bool "Enable Progressive hashing support using hardware in SPL"
523 depends on SHA_PROG_HW_ACCEL
526 This option enables hardware-acceleration for SHA progressive
528 Data can be streamed in a block at a time and the hashing is
529 performed in hardware.
535 config SHA512_HW_ACCEL
536 bool "Enable hardware acceleration for SHA512"
539 This option enables hardware acceleration for the SHA384 and SHA512
540 hashing algorithms. This affects the 'hash' command and also the
541 hash_lookup_algo() function.
543 config SHA_PROG_HW_ACCEL
544 bool "Enable Progressive hashing support using hardware"
546 This option enables hardware-acceleration for SHA progressive
548 Data can be streamed in a block at a time and the hashing is
549 performed in hardware.
554 bool "Support MD5 algorithm"
556 This option enables MD5 support. MD5 is an algorithm designed
557 in 1991 that produces a 16-byte digest (or checksum) from its input
558 data. It has a number of vulnerabilities which preclude its use in
559 security applications, but it can be useful for providing a quick
560 checksum of a block of data.
563 bool "Support MD5 algorithm in SPL"
565 This option enables MD5 support in SPL. MD5 is an algorithm designed
566 in 1991 that produces a 16-byte digest (or checksum) from its input
567 data. It has a number of vulnerabilities which preclude its use in
568 security applications, but it can be useful for providing a quick
569 checksum of a block of data.
574 Enables CRC32 support in U-Boot. This is normally required.
584 menu "Compression Support"
587 bool "Enable LZ4 decompression support"
589 If this option is set, support for LZ4 compressed images
590 is included. The LZ4 algorithm can run in-place as long as the
591 compressed image is loaded to the end of the output buffer, and
592 trades lower compression ratios for much faster decompression.
594 NOTE: This implements the release version of the LZ4 frame
595 format as generated by default by the 'lz4' command line tool.
596 This is not the same as the outdated, less efficient legacy
597 frame format currently (2015) implemented in the Linux kernel
598 (generated by 'lz4 -l'). The two formats are incompatible.
601 bool "Enable LZMA decompression support"
603 This enables support for LZMA (Lempel-Ziv-Markov chain algorithm),
604 a dictionary compression algorithm that provides a high compression
605 ratio and fairly fast decompression speed. See also
606 CONFIG_CMD_LZMADEC which provides a decode command.
609 bool "Enable LZO decompression support"
611 This enables support for the LZO compression algorithm.
614 bool "Enable gzip decompression support"
618 This enables support for GZIP compression algorithm.
620 config ZLIB_UNCOMPRESS
621 bool "Enables zlib's uncompress() functionality"
623 This enables an extra zlib functionality: the uncompress() function,
624 which decompresses data from a buffer into another, knowing their
625 sizes. Unlike gunzip(), there is no header parsing.
627 config GZIP_COMPRESSED
632 bool "Enable bzip2 decompression support"
634 This enables support for BZIP2 compression algorithm.
640 This enables ZLIB compression lib.
643 bool "Enable Zstandard decompression support"
646 This enables Zstandard decompression library.
649 bool "Enable LZ4 decompression support in SPL"
651 This enables support for the LZ4 decompression algorithm in SPL. LZ4
652 is a lossless data compression algorithm that is focused on
653 fast compression and decompression speed. It belongs to the LZ77
654 family of byte-oriented compression schemes.
657 bool "Enable LZMA decompression support for SPL build"
659 This enables support for LZMA compression algorithm for SPL boot.
662 bool "Enable LZMA decompression support for VPL build"
665 This enables support for LZMA compression algorithm for VPL boot.
668 bool "Enable LZO decompression support in SPL"
670 This enables support for LZO compression algorithm in the SPL.
673 bool "Enable gzip decompression support for SPL build"
676 This enables support for the GZIP compression algorithm for SPL boot.
681 This enables compression lib for SPL boot.
684 bool "Enable Zstandard decompression support in SPL"
687 This enables Zstandard decompression library in the SPL.
692 bool "Enable function for getting errno-related string message"
694 The function errno_str(int errno), returns a pointer to the errno
695 corresponding text message:
696 - if errno is null or positive number - a pointer to "Success" message
697 - if errno is negative - a pointer to errno related message
700 bool "Enable hexdump"
702 This enables functions for printing dumps of binary data.
705 bool "Enable hexdump in SPL"
706 depends on SPL && HEXDUMP
708 This enables functions for printing dumps of binary data in
714 This enables functions for parsing command-line options.
717 bool "Enable the FDT library"
718 default y if OF_CONTROL
720 This enables the FDT library (libfdt). It provides functions for
721 accessing binary device tree images in memory, such as adding and
722 removing nodes and properties, scanning through the tree and finding
723 particular compatible nodes. The library operates on a flattened
724 version of the device tree.
726 config OF_LIBFDT_ASSUME_MASK
727 hex "Mask of conditions to assume for libfdt"
728 depends on OF_LIBFDT || FIT
731 Use this to change the assumptions made by libfdt about the
732 device tree it is working with. A value of 0 means that no assumptions
733 are made, and libfdt is able to deal with malicious data. A value of
734 0xff means all assumptions are made and any invalid data may cause
735 unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
737 config OF_LIBFDT_OVERLAY
738 bool "Enable the FDT library overlay support"
740 default y if ARCH_OMAP2PLUS || ARCH_KEYSTONE
742 This enables the FDT library (libfdt) overlay support.
745 bool "Enable the FDT library for SPL"
746 depends on SPL_LIBGENERIC_SUPPORT
747 default y if SPL_OF_CONTROL
749 This enables the FDT library (libfdt). It provides functions for
750 accessing binary device tree images in memory, such as adding and
751 removing nodes and properties, scanning through the tree and finding
752 particular compatible nodes. The library operates on a flattened
753 version of the device tree.
755 config SPL_OF_LIBFDT_ASSUME_MASK
756 hex "Mask of conditions to assume for libfdt"
757 depends on SPL_OF_LIBFDT || FIT
760 Use this to change the assumptions made by libfdt in SPL about the
761 device tree it is working with. A value of 0 means that no assumptions
762 are made, and libfdt is able to deal with malicious data. A value of
763 0xff means all assumptions are made and any invalid data may cause
764 unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
767 bool "Enable the FDT library for TPL"
768 depends on TPL_LIBGENERIC_SUPPORT
769 default y if TPL_OF_CONTROL
771 This enables the FDT library (libfdt). It provides functions for
772 accessing binary device tree images in memory, such as adding and
773 removing nodes and properties, scanning through the tree and finding
774 particular compatible nodes. The library operates on a flattened
775 version of the device tree.
777 config TPL_OF_LIBFDT_ASSUME_MASK
778 hex "Mask of conditions to assume for libfdt"
779 depends on TPL_OF_LIBFDT || FIT
782 Use this to change the assumptions made by libfdt in TPL about the
783 device tree it is working with. A value of 0 means that no assumptions
784 are made, and libfdt is able to deal with malicious data. A value of
785 0xff means all assumptions are made and any invalid data may cause
786 unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
789 bool "Enable the FDT library for VPL"
790 default y if VPL_OF_CONTROL && !VPL_OF_PLATDATA
792 This enables the FDT library (libfdt). It provides functions for
793 accessing binary device tree images in memory, such as adding and
794 removing nodes and properties, scanning through the tree and finding
795 particular compatible nodes. The library operates on a flattened
796 version of the device tree.
798 config VPL_OF_LIBFDT_ASSUME_MASK
799 hex "Mask of conditions to assume for libfdt"
800 depends on VPL_OF_LIBFDT || FIT
803 Use this to change the assumptions made by libfdt in SPL about the
804 device tree it is working with. A value of 0 means that no assumptions
805 are made, and libfdt is able to deal with malicious data. A value of
806 0xff means all assumptions are made and any invalid data may cause
807 unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
809 config FDT_FIXUP_PARTITIONS
810 bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
812 depends on CMD_MTDPARTS
814 Allow overwriting defined partitions in the device tree blob
815 using partition info defined in the 'mtdparts' environment
819 depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
821 config BLOBLIST_TABLES
822 bool "Put tables in a bloblist"
823 depends on X86 && BLOBLIST
825 Normally tables are placed at address 0xf0000 and can be up to 64KB
826 long. With this option, tables are instead placed in the bloblist
827 with a pointer from 0xf0000. The size can then be larger and the
828 tables can be placed high in memory.
830 config GENERATE_SMBIOS_TABLE
831 bool "Generate an SMBIOS (System Management BIOS) table"
833 depends on X86 || EFI_LOADER
835 The System Management BIOS (SMBIOS) specification addresses how
836 motherboard and system vendors present management information about
837 their products in a standard format by extending the BIOS interface
838 on Intel architecture systems.
840 Check http://www.dmtf.org/standards/smbios for details.
842 See also SMBIOS_SYSINFO which allows SMBIOS values to be provided in
846 bool "enable continued fraction calculation routines"
848 config SPL_LIB_RATIONAL
849 bool "enable continued fraction calculation routines for SPL"
857 ASN.1 (Abstract Syntax Notation One) is a standard interface
858 description language for defining data structures that can be
859 serialized and deserialized in a cross-platform way. It is
860 broadly used in telecommunications and computer networking,
861 and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
862 This option enables the support of the asn1 compiler.
867 ASN.1 (Abstract Syntax Notation One) is a standard interface
868 description language for defining data structures that can be
869 serialized and deserialized in a cross-platform way. It is
870 broadly used in telecommunications and computer networking,
871 and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
872 This option enables the support of the asn1 decoder.
874 config SPL_ASN1_DECODER
877 ASN.1 (Abstract Syntax Notation One) is a standard interface
878 description language for defining data structures that can be
879 serialized and deserialized in a cross-platform way. It is
880 broadly used in telecommunications and computer networking,
881 and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
882 This option enables the support of the asn1 decoder in the SPL.
887 In computing, object identifiers or OIDs are an identifier mechanism
888 standardized by the International Telecommunication Union (ITU) and
889 ISO/IEC for naming any object, concept, or "thing" with a globally
890 unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier).
891 Enable fast lookup object identifier registry.
893 config SPL_OID_REGISTRY
896 In computing, object identifiers or OIDs are an identifier mechanism
897 standardized by the International Telecommunication Union (ITU) and
898 ISO/IEC for naming any object, concept, or "thing" with a globally
899 unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier).
900 Enable fast lookup object identifier registry in the SPL.
905 A simple parser for SMBIOS data.
907 source lib/efi/Kconfig
908 source lib/efi_loader/Kconfig
909 source lib/optee/Kconfig
912 bool "enable fdtdec test"
921 Support basic elf loading/validating functions.
922 This supports for 32 bit and 64 bit versions.
925 bool "Enable the logical memory blocks library (lmb)"
926 default y if ARC || ARM || M68K || MICROBLAZE || MIPS || \
927 NIOS2 || PPC || RISCV || SANDBOX || SH || X86 || XTENSA
929 Support the library logical memory blocks.
931 config LMB_USE_MAX_REGIONS
932 bool "Use a common number of memory and reserved regions in lmb lib"
936 Define the number of supported memory regions in the library logical
938 This feature allow to reduce the lmb library size by using compiler
939 optimization when LMB_MEMORY_REGIONS == LMB_RESERVED_REGIONS.
941 config LMB_MAX_REGIONS
942 int "Number of memory and reserved regions in lmb lib"
943 depends on LMB && LMB_USE_MAX_REGIONS
946 Define the number of supported regions, memory and reserved, in the
947 library logical memory blocks.
949 config LMB_MEMORY_REGIONS
950 int "Number of memory regions in lmb lib"
951 depends on LMB && !LMB_USE_MAX_REGIONS
954 Define the number of supported memory regions in the library logical
956 The minimal value is CONFIG_NR_DRAM_BANKS.
958 config LMB_RESERVED_REGIONS
959 int "Number of reserved regions in lmb lib"
960 depends on LMB && !LMB_USE_MAX_REGIONS
963 Define the number of supported reserved regions in the library logical
966 config PHANDLE_CHECK_SEQ
967 bool "Enable phandle check while getting sequence number"
969 When there are multiple device tree nodes with same name,
970 enable this config option to distinguish them using
971 phandles in fdtdec_get_alias_seq() function.