| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126 |
- menu "Library routines"
- config ADDR_MAP
- bool "Enable support for non-identity virtual-physical mappings"
- help
- Enables helper code for implementing non-identity virtual-physical
- memory mappings for 32bit CPUs.
- This library only works in the post-relocation phase.
- config SYS_NUM_ADDR_MAP
- int "Size of the address-map table"
- depends on ADDR_MAP
- default 16
- help
- Sets the number of entries in the virtual-physical mapping table.
- config SYS_TIMER_COUNTS_DOWN
- bool "System timer counts down rather than up"
- config PHYSMEM
- bool "Access to physical memory region (> 4G)"
- help
- Some basic support is provided for operations on memory not
- normally accessible to 32-bit U-Boot - e.g. some architectures
- support access to more than 4G of memory on 32-bit
- machines using physical address extension or similar.
- Enable this to access this basic support, which only supports clearing
- the memory.
- config BCH
- bool "Enable Software based BCH ECC"
- help
- Enables software based BCH ECC algorithm present in lib/bch.c
- This is used by SoC platforms which do not have built-in ELM
- hardware engine required for BCH ECC correction.
- config BINMAN_FDT
- bool "Allow access to binman information in the device tree"
- depends on BINMAN && DM && OF_CONTROL
- default y if OF_SEPARATE || OF_EMBED
- help
- This enables U-Boot to access information about binman entries,
- stored in the device tree in a binman node. Typical uses are to
- locate entries in the firmware image. See binman.h for the available
- functionality.
- config CC_OPTIMIZE_LIBS_FOR_SPEED
- bool "Optimize libraries for speed"
- help
- Enabling this option will pass "-O2" to gcc when compiling
- under "lib" directory.
- If unsure, say N.
- config CHARSET
- bool
- config DYNAMIC_CRC_TABLE
- bool "Enable Dynamic tables for CRC"
- help
- Enable this option to calculate entries for CRC tables at runtime.
- This can be helpful when reducing the size of the build image
- config HAVE_ARCH_IOMAP
- bool
- help
- Enable this option if architecture provides io{read,write}{8,16,32}
- I/O accessor functions.
- config HAVE_PRIVATE_LIBGCC
- bool
- config LIB_UUID
- bool
- config SPL_LIB_UUID
- depends on SPL
- bool
- config SEMIHOSTING
- bool "Support semihosting"
- depends on ARM || RISCV
- help
- Semihosting is a method for a target to communicate with a host
- debugger. It uses special instructions which the debugger will trap
- on and interpret. This allows U-Boot to read/write files, print to
- the console, and execute arbitrary commands on the host system.
- Enabling this option will add support for reading and writing files
- on the host system. If you don't have a debugger attached then trying
- to do this will likely cause U-Boot to hang. Say 'n' if you are unsure.
- config SEMIHOSTING_FALLBACK
- bool "Recover gracefully when semihosting fails"
- depends on SEMIHOSTING && (ARM64 || RISCV)
- default y
- help
- Normally, if U-Boot makes a semihosting call and no debugger is
- attached, then it will panic due to a synchronous abort
- exception. This config adds an exception handler which will allow
- U-Boot to recover. Say 'y' if unsure.
- config SPL_SEMIHOSTING
- bool "Support semihosting in SPL"
- depends on SPL && (ARM || RISCV)
- help
- Semihosting is a method for a target to communicate with a host
- debugger. It uses special instructions which the debugger will trap
- on and interpret. This allows U-Boot to read/write files, print to
- the console, and execute arbitrary commands on the host system.
- Enabling this option will add support for reading and writing files
- on the host system. If you don't have a debugger attached then trying
- to do this will likely cause U-Boot to hang. Say 'n' if you are unsure.
- config SPL_SEMIHOSTING_FALLBACK
- bool "Recover gracefully when semihosting fails in SPL"
- depends on SPL_SEMIHOSTING && (ARM64 || RISCV)
- select ARMV8_SPL_EXCEPTION_VECTORS if ARM64
- default y
- help
- Normally, if U-Boot makes a semihosting call and no debugger is
- attached, then it will panic due to a synchronous abort
- exception. This config adds an exception handler which will allow
- U-Boot to recover. Say 'y' if unsure.
- config PRINTF
- bool
- default y
- config SPL_PRINTF
- bool
- select SPL_SPRINTF
- select SPL_STRTO if !SPL_USE_TINY_PRINTF
- config TPL_PRINTF
- bool
- select TPL_SPRINTF
- select TPL_STRTO if !TPL_USE_TINY_PRINTF
- config VPL_PRINTF
- bool
- select VPL_SPRINTF
- select VPL_STRTO if !VPL_USE_TINY_PRINTF
- config SPRINTF
- bool
- default y
- config SPL_SPRINTF
- bool
- config TPL_SPRINTF
- bool
- config VPL_SPRINTF
- bool
- config SSCANF
- bool
- config STRTO
- bool
- default y
- config SPL_STRTO
- bool
- config TPL_STRTO
- bool
- config VPL_STRTO
- bool
- config IMAGE_SPARSE
- bool
- config IMAGE_SPARSE_FILLBUF_SIZE
- hex "Android sparse image CHUNK_TYPE_FILL buffer size"
- default 0x80000
- depends on IMAGE_SPARSE
- help
- Set the size of the fill buffer used when processing CHUNK_TYPE_FILL
- chunks.
- config USE_PRIVATE_LIBGCC
- bool "Use private libgcc"
- depends on HAVE_PRIVATE_LIBGCC
- default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS)
- help
- This option allows you to use the built-in libgcc implementation
- of U-Boot instead of the one provided by the compiler.
- If unsure, say N.
- config SYS_HZ
- int
- default 1000
- help
- The frequency of the timer returned by get_timer().
- get_timer() must operate in milliseconds and this option must be
- set to 1000.
- config SPL_USE_TINY_PRINTF
- bool "Enable tiny printf() version in SPL"
- depends on SPL
- default y
- help
- This option enables a tiny, stripped down printf version.
- This should only be used in space limited environments,
- like SPL versions with hard memory limits. This version
- reduces the code size by about 2.5KiB on armv7.
- The supported format specifiers are %c, %s, %u/%d and %x.
- config TPL_USE_TINY_PRINTF
- bool "Enable tiny printf() version in TPL"
- depends on TPL
- default y if SPL_USE_TINY_PRINTF
- help
- This option enables a tiny, stripped down printf version.
- This should only be used in space limited environments,
- like SPL versions with hard memory limits. This version
- reduces the code size by about 2.5KiB on armv7.
- The supported format specifiers are %c, %s, %u/%d and %x.
- config VPL_USE_TINY_PRINTF
- bool "Enable tiny printf() version for VPL"
- depends on VPL
- help
- This option enables a tiny, stripped down printf version.
- This should only be used in space limited environments,
- like SPL versions with hard memory limits. This version
- reduces the code size by about 2.5KiB on armv7.
- The supported format specifiers are %c, %s, %u/%d and %x.
- config PANIC_HANG
- bool "Do not reset the system on fatal error"
- help
- Define this option to stop the system in case of a fatal error,
- so that you have to reset it manually. This is probably NOT a good
- idea for an embedded system where you want the system to reboot
- automatically as fast as possible, but it may be useful during
- development since you can try to debug the conditions that lead to
- the situation.
- config REGEX
- bool "Enable regular expression support"
- default y if NET
- help
- If this variable is defined, U-Boot is linked against the
- SLRE (Super Light Regular Expression) library, which adds
- regex support to some commands, for example "env grep" and
- "setexpr".
- choice
- prompt "Pseudo-random library support type"
- depends on NET_RANDOM_ETHADDR || RANDOM_UUID || CMD_UUID || \
- RNG_SANDBOX || UT_LIB && AES || FAT_WRITE
- default LIB_RAND
- help
- Select the library to provide pseudo-random number generator
- functions. LIB_HW_RAND supports certain hardware engines that
- provide this functionality. If in doubt, select LIB_RAND.
- config LIB_RAND
- bool "Pseudo-random library support"
- config LIB_HW_RAND
- bool "HW Engine for random library support"
- endchoice
- config SUPPORT_ACPI
- bool
- help
- Enable this if your arch or board can support generating ACPI
- (Advanced Configuration and Power Interface) tables. In this case
- U-Boot can generate these tables and pass them to the Operating
- System.
- config ACPI
- bool "Enable support for ACPI libraries"
- depends on SUPPORT_ACPI
- help
- Provides library functions for dealing with ACPI tables. This does
- not necessarily include generation of tables
- (see GENERATE_ACPI_TABLE), but allows for tables to be located.
- config GENERATE_ACPI_TABLE
- bool "Generate an ACPI (Advanced Configuration and Power Interface) table"
- depends on ACPI
- select QFW if QEMU
- help
- The Advanced Configuration and Power Interface (ACPI) specification
- provides an open standard for device configuration and management
- by the operating system. It defines platform-independent interfaces
- for configuration and power management monitoring.
- config SPL_TINY_MEMSET
- bool "Use a very small memset() in SPL"
- depends on SPL
- help
- The faster memset() is the arch-specific one (if available) enabled
- by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
- better performance by writing a word at a time. But in very
- size-constrained environments even this may be too big. Enable this
- option to reduce code size slightly at the cost of some speed.
- config TPL_TINY_MEMSET
- bool "Use a very small memset() in TPL"
- depends on TPL
- help
- The faster memset() is the arch-specific one (if available) enabled
- by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
- better performance by writing a word at a time. But in very
- size-constrained environments even this may be too big. Enable this
- option to reduce code size slightly at the cost of some speed.
- config RBTREE
- bool
- config BITREVERSE
- bool "Bit reverse library from Linux"
- config TRACE
- bool "Support for tracing of function calls and timing"
- imply CMD_TRACE
- imply TIMER_EARLY
- help
- Enables function tracing within U-Boot. This allows recording of call
- traces including timing information. The command can write data to
- memory for exporting for analysis (e.g. using bootchart).
- See doc/README.trace for full details.
- config TRACE_BUFFER_SIZE
- hex "Size of trace buffer in U-Boot"
- depends on TRACE
- default 0x01000000
- help
- Sets the size of the trace buffer in U-Boot. This is allocated from
- memory during relocation. If this buffer is too small, the trace
- history will be truncated, with later records omitted.
- If early trace is enabled (i.e. before relocation), this buffer must
- be large enough to include all the data from the early trace buffer as
- well, since this is copied over to the main buffer during relocation.
- A trace record is emitted for each function call and each record is
- 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If
- the size is too small then 'trace stats' will show a message saying
- how many records were dropped due to buffer overflow.
- config TRACE_CALL_DEPTH_LIMIT
- int "Trace call depth limit"
- depends on TRACE
- default 15
- help
- Sets the maximum call depth up to which function calls are recorded.
- config TRACE_EARLY
- bool "Enable tracing before relocation"
- depends on TRACE
- help
- Sometimes it is helpful to trace execution of U-Boot before
- relocation. This is possible by using a arch-specific, fixed buffer
- position in memory. Enable this option to start tracing as early as
- possible after U-Boot starts.
- config TRACE_EARLY_SIZE
- hex "Size of early trace buffer in U-Boot"
- depends on TRACE_EARLY
- default 0x00100000
- help
- Sets the size of the early trace buffer in bytes. This is used to hold
- tracing information before relocation.
- config TRACE_EARLY_CALL_DEPTH_LIMIT
- int "Early trace call depth limit"
- depends on TRACE_EARLY
- default 15
- help
- Sets the maximum call depth up to which function calls are recorded
- during early tracing.
- config TRACE_EARLY_ADDR
- hex "Address of early trace buffer in U-Boot"
- depends on TRACE_EARLY
- default 0x00100000
- help
- Sets the address of the early trace buffer in U-Boot. This memory
- must be accessible before relocation.
- A trace record is emitted for each function call and each record is
- 12 bytes (see struct trace_call). A suggested minimum size is 1MB. If
- the size is too small then the message which says the amount of early
- data being coped will the the same as the
- config CIRCBUF
- bool "Enable circular buffer support"
- source lib/dhry/Kconfig
- menu "Security support"
- config AES
- bool "Support the AES algorithm"
- help
- This provides a means to encrypt and decrypt data using the AES
- (Advanced Encryption Standard). This algorithm uses a symetric key
- and is widely used as a streaming cipher. Different key lengths are
- supported by the algorithm but only a 128-bit key is supported at
- present.
- source lib/ecdsa/Kconfig
- source lib/rsa/Kconfig
- source lib/crypto/Kconfig
- source lib/crypt/Kconfig
- source lib/rsa_ark/Kconfig
- config TPM
- bool "Trusted Platform Module (TPM) Support"
- depends on DM
- imply DM_RNG
- help
- This enables support for TPMs which can be used to provide security
- features for your board. The TPM can be connected via LPC or I2C
- and a sandbox TPM is provided for testing purposes. Use the 'tpm'
- command to interactive the TPM. Driver model support is provided
- for the low-level TPM interface, but only one TPM is supported at
- a time by the TPM library.
- config SPL_TPM
- bool "Trusted Platform Module (TPM) Support in SPL"
- depends on SPL_DM
- imply SPL_CRC8
- help
- This enables support for TPMs which can be used to provide security
- features for your board. The TPM can be connected via LPC or I2C
- and a sandbox TPM is provided for testing purposes. Use the 'tpm'
- command to interactive the TPM. Driver model support is provided
- for the low-level TPM interface, but only one TPM is supported at
- a time by the TPM library.
- config TPL_TPM
- bool "Trusted Platform Module (TPM) Support in TPL"
- depends on TPL_DM
- help
- This enables support for TPMs which can be used to provide security
- features for your board. The TPM can be connected via LPC or I2C
- and a sandbox TPM is provided for testing purposes. Use the 'tpm'
- command to interactive the TPM. Driver model support is provided
- for the low-level TPM interface, but only one TPM is supported at
- a time by the TPM library.
- config VPL_TPM
- bool "Trusted Platform Module (TPM) Support in VPL"
- depends on VPL_DM
- help
- This enables support for TPMs which can be used to provide security
- features for your board. The TPM can be connected via LPC or I2C
- and a sandbox TPM is provided for testing purposes. Use the 'tpm'
- command to interactive the TPM. Driver model support is provided
- for the low-level TPM interface, but only one TPM is supported at
- a time by the TPM library.
- endmenu
- menu "Android Verified Boot"
- config LIBAVB
- bool "Android Verified Boot 2.0 support"
- depends on ANDROID_BOOT_IMAGE
- help
- This enables support of Android Verified Boot 2.0 which can be used
- to assure the end user of the integrity of the software running on a
- device. Introduces such features as boot chain of trust, rollback
- protection etc.
- endmenu
- menu "Hashing Support"
- config BLAKE2
- bool "Enable BLAKE2 support"
- help
- This option enables support of hashing using BLAKE2B algorithm.
- The hash is calculated in software.
- The BLAKE2 algorithm produces a hash value (digest) between 1 and
- 64 bytes.
- config SHA1
- bool "Enable SHA1 support"
- help
- This option enables support of hashing using SHA1 algorithm.
- The hash is calculated in software.
- The SHA1 algorithm produces a 160-bit (20-byte) hash value
- (digest).
- config SHA256
- bool "Enable SHA256 support"
- help
- This option enables support of hashing using SHA256 algorithm.
- The hash is calculated in software.
- The SHA256 algorithm produces a 256-bit (32-byte) hash value
- (digest).
- config SHA512
- bool "Enable SHA512 support"
- default y if TI_SECURE_DEVICE && FIT_SIGNATURE
- help
- This option enables support of hashing using SHA512 algorithm.
- The hash is calculated in software.
- The SHA512 algorithm produces a 512-bit (64-byte) hash value
- (digest).
- config SHA384
- bool "Enable SHA384 support"
- select SHA512
- help
- This option enables support of hashing using SHA384 algorithm.
- The hash is calculated in software. This is also selects SHA512,
- because these implementations share the bulk of the code..
- The SHA384 algorithm produces a 384-bit (48-byte) hash value
- (digest).
- config SHA_HW_ACCEL
- bool "Enable hardware acceleration for SHA hash functions"
- help
- This option enables hardware acceleration for the SHA1 and SHA256
- hashing algorithms. This affects the 'hash' command and also the
- hash_lookup_algo() function.
- if SPL
- config SPL_CRC32
- bool "Enable CRC32 support in SPL"
- default y if SPL_LEGACY_IMAGE_SUPPORT || SPL_EFI_PARTITION
- default y if SPL_ENV_SUPPORT || TPL_BLOBLIST
- help
- This option enables support of hashing using CRC32 algorithm.
- The CRC32 algorithm produces 32-bit checksum value. For FIT
- images, this is the least secure type of checksum, suitable for
- detected accidental image corruption. For secure applications you
- should consider SHA256 or SHA384.
- config SPL_SHA1
- bool "Enable SHA1 support in SPL"
- default y if SHA1
- help
- This option enables support of hashing using SHA1 algorithm.
- The hash is calculated in software.
- The SHA1 algorithm produces a 160-bit (20-byte) hash value
- (digest).
- config SPL_SHA256
- bool "Enable SHA256 support in SPL"
- default y if SHA256
- help
- This option enables support of hashing using SHA256 algorithm.
- The hash is calculated in software.
- The SHA256 algorithm produces a 256-bit (32-byte) hash value
- (digest).
- config SPL_SHA512
- bool "Enable SHA512 support in SPL"
- default y if SHA512
- help
- This option enables support of hashing using SHA512 algorithm.
- The hash is calculated in software.
- The SHA512 algorithm produces a 512-bit (64-byte) hash value
- (digest).
- config SPL_SHA384
- bool "Enable SHA384 support in SPL"
- default y if SHA384
- select SPL_SHA512
- help
- This option enables support of hashing using SHA384 algorithm.
- The hash is calculated in software. This is also selects SHA512,
- because these implementations share the bulk of the code..
- The SHA384 algorithm produces a 384-bit (48-byte) hash value
- (digest).
- config SPL_SHA_HW_ACCEL
- bool "Enable hardware acceleration for SHA hash functions"
- default y if SHA_HW_ACCEL
- help
- This option enables hardware acceleration for the SHA1 and SHA256
- hashing algorithms. This affects the 'hash' command and also the
- hash_lookup_algo() function.
- config SPL_SHA_PROG_HW_ACCEL
- bool "Enable Progressive hashing support using hardware in SPL"
- depends on SHA_PROG_HW_ACCEL
- default y
- help
- This option enables hardware-acceleration for SHA progressive
- hashing.
- Data can be streamed in a block at a time and the hashing is
- performed in hardware.
- endif
- config VPL_SHA1
- bool "Enable SHA1 support in VPL"
- depends on VPL
- default y if SHA1
- help
- This option enables support of hashing using SHA1 algorithm.
- The hash is calculated in software.
- The SHA1 algorithm produces a 160-bit (20-byte) hash value
- (digest).
- config VPL_SHA256
- bool "Enable SHA256 support in VPL"
- depends on VPL
- default y if SHA256
- help
- This option enables support of hashing using SHA256 algorithm.
- The hash is calculated in software.
- The SHA256 algorithm produces a 256-bit (32-byte) hash value
- (digest).
- if SHA_HW_ACCEL
- config SHA512_HW_ACCEL
- bool "Enable hardware acceleration for SHA512"
- depends on SHA512
- help
- This option enables hardware acceleration for the SHA384 and SHA512
- hashing algorithms. This affects the 'hash' command and also the
- hash_lookup_algo() function.
- config SHA_PROG_HW_ACCEL
- bool "Enable Progressive hashing support using hardware"
- help
- This option enables hardware-acceleration for SHA progressive
- hashing.
- Data can be streamed in a block at a time and the hashing is
- performed in hardware.
- endif
- config MD5
- bool "Support MD5 algorithm"
- help
- This option enables MD5 support. MD5 is an algorithm designed
- in 1991 that produces a 16-byte digest (or checksum) from its input
- data. It has a number of vulnerabilities which preclude its use in
- security applications, but it can be useful for providing a quick
- checksum of a block of data.
- config SPL_MD5
- bool "Support MD5 algorithm in SPL"
- depends on SPL
- help
- This option enables MD5 support in SPL. MD5 is an algorithm designed
- in 1991 that produces a 16-byte digest (or checksum) from its input
- data. It has a number of vulnerabilities which preclude its use in
- security applications, but it can be useful for providing a quick
- checksum of a block of data.
- config CRC8
- def_bool y
- help
- Enables CRC8 support in U-Boot. This is normally required. CRC8 is
- a simple and fast checksumming algorithm which does a bytewise
- checksum with feedback to produce an 8-bit result. The code is small
- and it does not require a lookup table (unlike CRC32).
- config SPL_CRC8
- bool "Support CRC8 in SPL"
- depends on SPL
- help
- Enables CRC8 support in SPL. This is not normally required. CRC8 is
- a simple and fast checksumming algorithm which does a bytewise
- checksum with feedback to produce an 8-bit result. The code is small
- and it does not require a lookup table (unlike CRC32).
- config CRC32
- def_bool y
- help
- Enables CRC32 support in U-Boot. This is normally required.
- config CRC32C
- bool
- config XXHASH
- bool
- endmenu
- menu "Compression Support"
- config LZ4
- bool "Enable LZ4 decompression support"
- help
- If this option is set, support for LZ4 compressed images
- is included. The LZ4 algorithm can run in-place as long as the
- compressed image is loaded to the end of the output buffer, and
- trades lower compression ratios for much faster decompression.
- NOTE: This implements the release version of the LZ4 frame
- format as generated by default by the 'lz4' command line tool.
- This is not the same as the outdated, less efficient legacy
- frame format currently (2015) implemented in the Linux kernel
- (generated by 'lz4 -l'). The two formats are incompatible.
- config LZMA
- bool "Enable LZMA decompression support"
- help
- This enables support for LZMA (Lempel-Ziv-Markov chain algorithm),
- a dictionary compression algorithm that provides a high compression
- ratio and fairly fast decompression speed. See also
- CONFIG_CMD_LZMADEC which provides a decode command.
- config LZO
- bool "Enable LZO decompression support"
- help
- This enables support for the LZO compression algorithm.
- config GZIP
- bool "Enable gzip decompression support"
- select ZLIB
- default y
- help
- This enables support for GZIP compression algorithm.
- config ZLIB_UNCOMPRESS
- bool "Enables zlib's uncompress() functionality"
- help
- This enables an extra zlib functionality: the uncompress() function,
- which decompresses data from a buffer into another, knowing their
- sizes. Unlike gunzip(), there is no header parsing.
- config GZIP_COMPRESSED
- bool
- select ZLIB
- config BZIP2
- bool "Enable bzip2 decompression support"
- help
- This enables support for BZIP2 compression algorithm.
- config ZLIB
- bool
- default y
- help
- This enables ZLIB compression lib.
- config ZSTD
- bool "Enable Zstandard decompression support"
- select XXHASH
- help
- This enables Zstandard decompression library.
- if ZSTD
- config ZSTD_LIB_MINIFY
- bool "Minify Zstandard code"
- default y
- help
- This disables various optional components and changes the
- compilation flags to prioritize space-saving.
- For detailed info, see zstd's lib/README.md
- https://github.com/facebook/zstd/blob/dev/lib/README.md
- endif
- config SPL_BZIP2
- bool "Enable bzip2 decompression support for SPL build"
- depends on SPL
- help
- This enables support for bzip2 compression algorithm for SPL boot.
- config SPL_LZ4
- bool "Enable LZ4 decompression support in SPL"
- depends on SPL
- help
- This enables support for the LZ4 decompression algorithm in SPL. LZ4
- is a lossless data compression algorithm that is focused on
- fast compression and decompression speed. It belongs to the LZ77
- family of byte-oriented compression schemes.
- config SPL_LZMA
- bool "Enable LZMA decompression support for SPL build"
- depends on SPL
- help
- This enables support for LZMA compression algorithm for SPL boot.
- config VPL_LZMA
- bool "Enable LZMA decompression support for VPL build"
- default y if LZMA
- help
- This enables support for LZMA compression algorithm for VPL boot.
- config SPL_LZO
- bool "Enable LZO decompression support in SPL"
- depends on SPL
- help
- This enables support for LZO compression algorithm in the SPL.
- config SPL_GZIP
- bool "Enable gzip decompression support for SPL build"
- select SPL_ZLIB
- help
- This enables support for the GZIP compression algorithm for SPL boot.
- config SPL_ZLIB
- bool
- help
- This enables compression lib for SPL boot.
- config SPL_ZSTD
- bool "Enable Zstandard decompression support in SPL"
- depends on SPL
- select XXHASH
- help
- This enables Zstandard decompression library in the SPL.
- endmenu
- config ERRNO_STR
- bool "Enable function for getting errno-related string message"
- help
- The function errno_str(int errno), returns a pointer to the errno
- corresponding text message:
- - if errno is null or positive number - a pointer to "Success" message
- - if errno is negative - a pointer to errno related message
- config HEXDUMP
- bool "Enable hexdump"
- help
- This enables functions for printing dumps of binary data.
- config SPL_HEXDUMP
- bool "Enable hexdump in SPL"
- depends on SPL && HEXDUMP
- help
- This enables functions for printing dumps of binary data in
- SPL.
- config GETOPT
- bool "Enable getopt"
- help
- This enables functions for parsing command-line options.
- config OF_LIBFDT
- bool "Enable the FDT library"
- default y if OF_CONTROL
- help
- This enables the FDT library (libfdt). It provides functions for
- accessing binary device tree images in memory, such as adding and
- removing nodes and properties, scanning through the tree and finding
- particular compatible nodes. The library operates on a flattened
- version of the device tree.
- config OF_LIBFDT_ASSUME_MASK
- hex "Mask of conditions to assume for libfdt"
- depends on OF_LIBFDT || FIT
- default 0
- help
- Use this to change the assumptions made by libfdt about the
- device tree it is working with. A value of 0 means that no assumptions
- are made, and libfdt is able to deal with malicious data. A value of
- 0xff means all assumptions are made and any invalid data may cause
- unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
- config OF_LIBFDT_OVERLAY
- bool "Enable the FDT library overlay support"
- depends on OF_LIBFDT
- default y if ARCH_OMAP2PLUS || ARCH_KEYSTONE
- help
- This enables the FDT library (libfdt) overlay support.
- config SYS_FDT_PAD
- hex "Maximum size of the FDT memory area passeed to the OS"
- depends on OF_LIBFDT
- default 0x13000 if FMAN_ENET || QE || U_QE
- default 0x3000
- help
- During OS boot, we allocate a region of memory within the bootmap
- for the FDT. This is the size that we will expand the FDT that we
- are using will be extended to be, in bytes.
- config SPL_OF_LIBFDT
- bool "Enable the FDT library for SPL"
- depends on SPL_LIBGENERIC_SUPPORT
- default y if SPL_OF_CONTROL
- help
- This enables the FDT library (libfdt). It provides functions for
- accessing binary device tree images in memory, such as adding and
- removing nodes and properties, scanning through the tree and finding
- particular compatible nodes. The library operates on a flattened
- version of the device tree.
- config SPL_OF_LIBFDT_ASSUME_MASK
- hex "Mask of conditions to assume for libfdt"
- depends on SPL_OF_LIBFDT || (FIT && SPL)
- default 0xff
- help
- Use this to change the assumptions made by libfdt in SPL about the
- device tree it is working with. A value of 0 means that no assumptions
- are made, and libfdt is able to deal with malicious data. A value of
- 0xff means all assumptions are made and any invalid data may cause
- unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
- config TPL_OF_LIBFDT
- bool "Enable the FDT library for TPL"
- depends on TPL_LIBGENERIC_SUPPORT
- default y if TPL_OF_CONTROL
- help
- This enables the FDT library (libfdt). It provides functions for
- accessing binary device tree images in memory, such as adding and
- removing nodes and properties, scanning through the tree and finding
- particular compatible nodes. The library operates on a flattened
- version of the device tree.
- config TPL_OF_LIBFDT_ASSUME_MASK
- hex "Mask of conditions to assume for libfdt"
- depends on TPL_OF_LIBFDT || (FIT && TPL)
- default 0xff
- help
- Use this to change the assumptions made by libfdt in TPL about the
- device tree it is working with. A value of 0 means that no assumptions
- are made, and libfdt is able to deal with malicious data. A value of
- 0xff means all assumptions are made and any invalid data may cause
- unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
- config VPL_OF_LIBFDT
- bool "Enable the FDT library for VPL"
- depends on VPL
- default y if VPL_OF_CONTROL && !VPL_OF_PLATDATA
- help
- This enables the FDT library (libfdt). It provides functions for
- accessing binary device tree images in memory, such as adding and
- removing nodes and properties, scanning through the tree and finding
- particular compatible nodes. The library operates on a flattened
- version of the device tree.
- config VPL_OF_LIBFDT_ASSUME_MASK
- hex "Mask of conditions to assume for libfdt"
- depends on VPL_OF_LIBFDT || (FIT && VPL)
- default 0xff
- help
- Use this to change the assumptions made by libfdt in SPL about the
- device tree it is working with. A value of 0 means that no assumptions
- are made, and libfdt is able to deal with malicious data. A value of
- 0xff means all assumptions are made and any invalid data may cause
- unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
- config FDT_FIXUP_PARTITIONS
- bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
- depends on OF_LIBFDT
- depends on CMD_MTDPARTS
- help
- Allow overwriting defined partitions in the device tree blob
- using partition info defined in the 'mtdparts' environment
- variable.
- menu "System tables"
- depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
- config BLOBLIST_TABLES
- bool "Put tables in a bloblist"
- depends on X86 && BLOBLIST
- help
- Normally tables are placed at address 0xf0000 and can be up to 64KB
- long. With this option, tables are instead placed in the bloblist
- with a pointer from 0xf0000. The size can then be larger and the
- tables can be placed high in memory.
- config GENERATE_SMBIOS_TABLE
- bool "Generate an SMBIOS (System Management BIOS) table"
- default y
- depends on X86 || EFI_LOADER
- help
- The System Management BIOS (SMBIOS) specification addresses how
- motherboard and system vendors present management information about
- their products in a standard format by extending the BIOS interface
- on Intel architecture systems.
- Check http://www.dmtf.org/standards/smbios for details.
- See also SMBIOS_SYSINFO which allows SMBIOS values to be provided in
- the devicetree.
- config LIB_RATIONAL
- bool "enable continued fraction calculation routines"
- config SPL_LIB_RATIONAL
- bool "enable continued fraction calculation routines for SPL"
- depends on SPL
- endmenu
- config ASN1_COMPILER
- bool
- help
- ASN.1 (Abstract Syntax Notation One) is a standard interface
- description language for defining data structures that can be
- serialized and deserialized in a cross-platform way. It is
- broadly used in telecommunications and computer networking,
- and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
- This option enables the support of the asn1 compiler.
- config ASN1_DECODER
- bool
- help
- ASN.1 (Abstract Syntax Notation One) is a standard interface
- description language for defining data structures that can be
- serialized and deserialized in a cross-platform way. It is
- broadly used in telecommunications and computer networking,
- and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
- This option enables the support of the asn1 decoder.
- config SPL_ASN1_DECODER
- bool
- help
- ASN.1 (Abstract Syntax Notation One) is a standard interface
- description language for defining data structures that can be
- serialized and deserialized in a cross-platform way. It is
- broadly used in telecommunications and computer networking,
- and especially in cryptography (https://en.wikipedia.org/wiki/ASN.1).
- This option enables the support of the asn1 decoder in the SPL.
- config OID_REGISTRY
- bool
- help
- In computing, object identifiers or OIDs are an identifier mechanism
- standardized by the International Telecommunication Union (ITU) and
- ISO/IEC for naming any object, concept, or "thing" with a globally
- unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier).
- Enable fast lookup object identifier registry.
- config SPL_OID_REGISTRY
- bool
- help
- In computing, object identifiers or OIDs are an identifier mechanism
- standardized by the International Telecommunication Union (ITU) and
- ISO/IEC for naming any object, concept, or "thing" with a globally
- unambiguous persistent name (https://en.wikipedia.org/wiki/Object_identifier).
- Enable fast lookup object identifier registry in the SPL.
- config SMBIOS_PARSER
- bool "SMBIOS parser"
- help
- A simple parser for SMBIOS data.
- source lib/efi/Kconfig
- source lib/efi_loader/Kconfig
- source lib/optee/Kconfig
- config TEST_FDTDEC
- bool "enable fdtdec test"
- depends on OF_LIBFDT
- config LIB_DATE
- bool
- config LIB_ELF
- bool
- help
- Support basic elf loading/validating functions.
- This supports for 32 bit and 64 bit versions.
- config LMB
- bool "Enable the logical memory blocks library (lmb)"
- default y if ARC || ARM || M68K || MICROBLAZE || MIPS || \
- NIOS2 || PPC || RISCV || SANDBOX || SH || X86 || XTENSA
- help
- Support the library logical memory blocks.
- config LMB_USE_MAX_REGIONS
- bool "Use a common number of memory and reserved regions in lmb lib"
- default y
- help
- Define the number of supported memory regions in the library logical
- memory blocks.
- This feature allow to reduce the lmb library size by using compiler
- optimization when LMB_MEMORY_REGIONS == LMB_RESERVED_REGIONS.
- config LMB_MAX_REGIONS
- int "Number of memory and reserved regions in lmb lib"
- depends on LMB_USE_MAX_REGIONS
- default 16
- help
- Define the number of supported regions, memory and reserved, in the
- library logical memory blocks.
- config LMB_MEMORY_REGIONS
- int "Number of memory regions in lmb lib"
- depends on !LMB_USE_MAX_REGIONS
- default 8
- help
- Define the number of supported memory regions in the library logical
- memory blocks.
- The minimal value is CONFIG_NR_DRAM_BANKS.
- config LMB_RESERVED_REGIONS
- int "Number of reserved regions in lmb lib"
- depends on !LMB_USE_MAX_REGIONS
- default 8
- help
- Define the number of supported reserved regions in the library logical
- memory blocks.
- config PHANDLE_CHECK_SEQ
- bool "Enable phandle check while getting sequence number"
- help
- When there are multiple device tree nodes with same name,
- enable this config option to distinguish them using
- phandles in fdtdec_get_alias_seq() function.
- endmenu
- menu "FWU Multi Bank Updates"
- source lib/fwu_updates/Kconfig
- endmenu
|