1ed36323fSMasahiro Yamadamenu "Library routines" 2ed36323fSMasahiro Yamada 36ef2f901SAdam Fordconfig BCH 46ef2f901SAdam Ford bool "Enable Software based BCH ECC" 56ef2f901SAdam Ford help 66ef2f901SAdam Ford Enables software based BCH ECC algorithm present in lib/bch.c 76ef2f901SAdam Ford This is used by SoC platforms which do not have built-in ELM 86ef2f901SAdam Ford hardware engine required for BCH ECC correction. 96ef2f901SAdam Ford 10b0928da6SMasahiro Yamadaconfig CC_OPTIMIZE_LIBS_FOR_SPEED 11b0928da6SMasahiro Yamada bool "Optimize libraries for speed" 12b0928da6SMasahiro Yamada help 13b0928da6SMasahiro Yamada Enabling this option will pass "-O2" to gcc when compiling 14b0928da6SMasahiro Yamada under "lib" directory. 15b0928da6SMasahiro Yamada 16b0928da6SMasahiro Yamada If unsure, say N. 17b0928da6SMasahiro Yamada 1845ccec8fSMasahiro Yamadaconfig HAVE_PRIVATE_LIBGCC 1945ccec8fSMasahiro Yamada bool 2045ccec8fSMasahiro Yamada 2145ccec8fSMasahiro Yamadaconfig USE_PRIVATE_LIBGCC 2245ccec8fSMasahiro Yamada bool "Use private libgcc" 2345ccec8fSMasahiro Yamada depends on HAVE_PRIVATE_LIBGCC 2491b86e21SMarek Vasut default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS) 2545ccec8fSMasahiro Yamada help 2645ccec8fSMasahiro Yamada This option allows you to use the built-in libgcc implementation 2767976306SMasahiro Yamada of U-Boot instead of the one provided by the compiler. 2845ccec8fSMasahiro Yamada If unsure, say N. 2945ccec8fSMasahiro Yamada 308c688bc4SMasahiro Yamadaconfig SYS_HZ 318c688bc4SMasahiro Yamada int 328c688bc4SMasahiro Yamada default 1000 338c688bc4SMasahiro Yamada help 348c688bc4SMasahiro Yamada The frequency of the timer returned by get_timer(). 358c688bc4SMasahiro Yamada get_timer() must operate in milliseconds and this option must be 368c688bc4SMasahiro Yamada set to 1000. 378c688bc4SMasahiro Yamada 387f28cbb6SJoseph Chenconfig SYS_STACK_SIZE 397f28cbb6SJoseph Chen hex 40595f057cSJoseph Chen default 0x200000 417f28cbb6SJoseph Chen help 427f28cbb6SJoseph Chen The system stack size. 437f28cbb6SJoseph Chen 447d9cde10SStefan Roeseconfig USE_TINY_PRINTF 457d9cde10SStefan Roese bool "Enable tiny printf() version" 467d9cde10SStefan Roese help 477d9cde10SStefan Roese This option enables a tiny, stripped down printf version. 487d9cde10SStefan Roese This should only be used in space limited environments, 497d9cde10SStefan Roese like SPL versions with hard memory limits. This version 507d9cde10SStefan Roese reduces the code size by about 2.5KiB on armv7. 517d9cde10SStefan Roese 527d9cde10SStefan Roese The supported format specifiers are %c, %s, %u/%d and %x. 537d9cde10SStefan Roese 540e13c182SMasahiro Yamadaconfig PANIC_HANG 550e13c182SMasahiro Yamada bool "Do not reset the system on fatal error" 560e13c182SMasahiro Yamada help 570e13c182SMasahiro Yamada Define this option to stop the system in case of a fatal error, 580e13c182SMasahiro Yamada so that you have to reset it manually. This is probably NOT a good 590e13c182SMasahiro Yamada idea for an embedded system where you want the system to reboot 600e13c182SMasahiro Yamada automatically as fast as possible, but it may be useful during 610e13c182SMasahiro Yamada development since you can try to debug the conditions that lead to 620e13c182SMasahiro Yamada the situation. 630e13c182SMasahiro Yamada 641a60650cSJoe Hershbergerconfig REGEX 651a60650cSJoe Hershberger bool "Enable regular expression support" 66f7848d90SJoe Hershberger default y if NET 671a60650cSJoe Hershberger help 681a60650cSJoe Hershberger If this variable is defined, U-Boot is linked against the 691a60650cSJoe Hershberger SLRE (Super Light Regular Expression) library, which adds 701a60650cSJoe Hershberger regex support to some commands, for example "env grep" and 711a60650cSJoe Hershberger "setexpr". 721a60650cSJoe Hershberger 739ba9e85fSMichal Simekconfig LIB_RAND 743850dbe8SMasahiro Yamada bool "Pseudo-random library support " 753850dbe8SMasahiro Yamada help 763850dbe8SMasahiro Yamada This library provides pseudo-random number generator functions. 779ba9e85fSMichal Simek 78ab4458bdSSimon Glassconfig SPL_TINY_MEMSET 79ab4458bdSSimon Glass bool "Use a very small memset() in SPL" 80b11db21eSJoseph Chen depends on SPL 81ab4458bdSSimon Glass help 82ab4458bdSSimon Glass The faster memset() is the arch-specific one (if available) enabled 83ab4458bdSSimon Glass by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get 84ab4458bdSSimon Glass better performance by writing a word at a time. But in very 85ab4458bdSSimon Glass size-constrained envrionments even this may be too big. Enable this 86ab4458bdSSimon Glass option to reduce code size slightly at the cost of some speed. 87ab4458bdSSimon Glass 8896b9082cSPhilipp Tomsichconfig TPL_TINY_MEMSET 8996b9082cSPhilipp Tomsich bool "Use a very small memset() in TPL" 9096b9082cSPhilipp Tomsich help 9196b9082cSPhilipp Tomsich The faster memset() is the arch-specific one (if available) enabled 9296b9082cSPhilipp Tomsich by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get 9396b9082cSPhilipp Tomsich better performance by writing a word at a time. But in very 9496b9082cSPhilipp Tomsich size-constrained envrionments even this may be too big. Enable this 9596b9082cSPhilipp Tomsich option to reduce code size slightly at the cost of some speed. 9696b9082cSPhilipp Tomsich 97aa049152SBoris Brezillonconfig RBTREE 98aa049152SBoris Brezillon bool 99aa049152SBoris Brezillon 100c6348130SZhangbin Tongconfig BITREVERSE 101c6348130SZhangbin Tong bool 102c6348130SZhangbin Tong 103ffa8f8b7SJoseph Chenconfig SYSMEM 104ffa8f8b7SJoseph Chen bool "System memory management" 105ffa8f8b7SJoseph Chen default y 106ffa8f8b7SJoseph Chen help 107ffa8f8b7SJoseph Chen This enables support for system permanent memory management. 108ffa8f8b7SJoseph Chen 109483d0493SJoseph Chenconfig BIDRAM 110483d0493SJoseph Chen bool "GD board bi_dram[] memory management" 111483d0493SJoseph Chen default y 112483d0493SJoseph Chen help 113483d0493SJoseph Chen This enables support for GD board bi_dram[] memory management. 114483d0493SJoseph Chen 115d1389403SSimon Glasssource lib/dhry/Kconfig 116d1389403SSimon Glass 117b1a873dfSSimon Glassmenu "Security support" 118b1a873dfSSimon Glass 119b1a873dfSSimon Glassconfig AES 120b1a873dfSSimon Glass bool "Support the AES algorithm" 121b1a873dfSSimon Glass help 122b1a873dfSSimon Glass This provides a means to encrypt and decrypt data using the AES 123b1a873dfSSimon Glass (Advanced Encryption Standard). This algorithm uses a symetric key 124b1a873dfSSimon Glass and is widely used as a streaming cipher. Different key lengths are 125b1a873dfSSimon Glass supported by the algorithm but only a 128-bit key is supported at 126b1a873dfSSimon Glass present. 127b1a873dfSSimon Glass 128d9f23c7fSRuchika Guptasource lib/rsa/Kconfig 129c4beb22fSRuchika Gupta 130a7d660bcSSimon Glassconfig TPM 131a7d660bcSSimon Glass bool "Trusted Platform Module (TPM) Support" 1322419cd16SSimon Glass depends on DM 133a7d660bcSSimon Glass help 134a7d660bcSSimon Glass This enables support for TPMs which can be used to provide security 135a7d660bcSSimon Glass features for your board. The TPM can be connected via LPC or I2C 136a7d660bcSSimon Glass and a sandbox TPM is provided for testing purposes. Use the 'tpm' 137a7d660bcSSimon Glass command to interactive the TPM. Driver model support is provided 138a7d660bcSSimon Glass for the low-level TPM interface, but only one TPM is supported at 139a7d660bcSSimon Glass a time by the TPM library. 140a7d660bcSSimon Glass 141b1a873dfSSimon Glassendmenu 142b1a873dfSSimon Glass 143f93178aeSJoseph Chenmenu "Boot Configuration" 144f93178aeSJoseph Chen 145f93178aeSJoseph Chenconfig XBC 146f93178aeSJoseph Chen bool "Boot Configuration support" 147f93178aeSJoseph Chen depends on ANDROID_BOOT_IMAGE 148f93178aeSJoseph Chen default n 149f93178aeSJoseph Chen help 150f93178aeSJoseph Chen This enables support of Boot Configuration which can be used 151f93178aeSJoseph Chen to pass boot configuration parameters to user space. These 152f93178aeSJoseph Chen parameters will show up in /proc/bootconfig similar to the kernel 153f93178aeSJoseph Chen parameters that show up in /proc/cmdline 154f93178aeSJoseph Chen 155f93178aeSJoseph Chenendmenu 156f93178aeSJoseph Chen 15794e3c8c4Sgaurav ranamenu "Hashing Support" 15894e3c8c4Sgaurav rana 15994e3c8c4Sgaurav ranaconfig SHA1 16094e3c8c4Sgaurav rana bool "Enable SHA1 support" 16194e3c8c4Sgaurav rana help 16294e3c8c4Sgaurav rana This option enables support of hashing using SHA1 algorithm. 16394e3c8c4Sgaurav rana The hash is calculated in software. 16494e3c8c4Sgaurav rana The SHA1 algorithm produces a 160-bit (20-byte) hash value 16594e3c8c4Sgaurav rana (digest). 16694e3c8c4Sgaurav rana 16794e3c8c4Sgaurav ranaconfig SHA256 16894e3c8c4Sgaurav rana bool "Enable SHA256 support" 16994e3c8c4Sgaurav rana help 17094e3c8c4Sgaurav rana This option enables support of hashing using SHA256 algorithm. 17194e3c8c4Sgaurav rana The hash is calculated in software. 17294e3c8c4Sgaurav rana The SHA256 algorithm produces a 256-bit (32-byte) hash value 17394e3c8c4Sgaurav rana (digest). 17494e3c8c4Sgaurav rana 1752227535dSJoseph Chenconfig SHA512 1762227535dSJoseph Chen bool "Enable SHA512 support" 1772227535dSJoseph Chen help 1782227535dSJoseph Chen This option enables support of hashing using SHA512 algorithm. 1792227535dSJoseph Chen The hash is calculated in software. 1802227535dSJoseph Chen The SHA512 algorithm produces a 512-bit (64-byte) hash value 1812227535dSJoseph Chen (digest). 1822227535dSJoseph Chen 18394e3c8c4Sgaurav ranaconfig SHA_HW_ACCEL 18494e3c8c4Sgaurav rana bool "Enable hashing using hardware" 18594e3c8c4Sgaurav rana help 18694e3c8c4Sgaurav rana This option enables hardware acceleration 18794e3c8c4Sgaurav rana for SHA1/SHA256 hashing. 18894e3c8c4Sgaurav rana This affects the 'hash' command and also the 18994e3c8c4Sgaurav rana hash_lookup_algo() function. 19094e3c8c4Sgaurav rana 19194e3c8c4Sgaurav ranaconfig SHA_PROG_HW_ACCEL 19294e3c8c4Sgaurav rana bool "Enable Progressive hashing support using hardware" 19394e3c8c4Sgaurav rana depends on SHA_HW_ACCEL 19494e3c8c4Sgaurav rana help 19594e3c8c4Sgaurav rana This option enables hardware-acceleration for 19694e3c8c4Sgaurav rana SHA1/SHA256 progressive hashing. 19794e3c8c4Sgaurav rana Data can be streamed in a block at a time and the hashing 19894e3c8c4Sgaurav rana is performed in hardware. 199bea79d7dSAndre Przywara 200bea79d7dSAndre Przywaraconfig MD5 201bea79d7dSAndre Przywara bool 202bea79d7dSAndre Przywara 20392193ef7SMarek Behúnconfig CRC32C 20492193ef7SMarek Behún bool 20592193ef7SMarek Behún 20694e3c8c4Sgaurav ranaendmenu 20794e3c8c4Sgaurav rana 208027b728dSJulius Wernermenu "Compression Support" 209027b728dSJulius Werner 210027b728dSJulius Wernerconfig LZ4 211027b728dSJulius Werner bool "Enable LZ4 decompression support" 212027b728dSJulius Werner help 213027b728dSJulius Werner If this option is set, support for LZ4 compressed images 214027b728dSJulius Werner is included. The LZ4 algorithm can run in-place as long as the 215027b728dSJulius Werner compressed image is loaded to the end of the output buffer, and 216027b728dSJulius Werner trades lower compression ratios for much faster decompression. 217027b728dSJulius Werner 218027b728dSJulius Werner NOTE: This implements the release version of the LZ4 frame 219027b728dSJulius Werner format as generated by default by the 'lz4' command line tool. 220027b728dSJulius Werner This is not the same as the outdated, less efficient legacy 221027b728dSJulius Werner frame format currently (2015) implemented in the Linux kernel 222027b728dSJulius Werner (generated by 'lz4 -l'). The two formats are incompatible. 223027b728dSJulius Werner 224aed998aaSSimon Glassconfig LZMA 225aed998aaSSimon Glass bool "Enable LZMA decompression support" 226aed998aaSSimon Glass help 227aed998aaSSimon Glass This enables support for LZMA (Lempel-Ziv-Markov chain algorithm), 228aed998aaSSimon Glass a dictionary compression algorithm that provides a high compression 229aed998aaSSimon Glass ratio and fairly fast decompression speed. See also 230aed998aaSSimon Glass CONFIG_CMD_LZMADEC which provides a decode command. 231aed998aaSSimon Glass 2324425319bSJoseph Chenconfig SPL_LZMA 2334425319bSJoseph Chen bool "Enable LZMA decompression support in SPL" 2344425319bSJoseph Chen depends on SPL 2354425319bSJoseph Chen help 2364425319bSJoseph Chen This enables support for LZMA (Lempel-Ziv-Markov chain algorithm), 2374425319bSJoseph Chen a dictionary compression algorithm that provides a high compression 2384425319bSJoseph Chen ratio and fairly fast decompression speed. See also 2394425319bSJoseph Chen 240173aafbfSBoris Brezillonconfig LZO 241d56b4b19STom Rini bool "Enable LZO decompression support" 242d56b4b19STom Rini help 243d56b4b19STom Rini This enables support for LZO compression algorithm.r 244b81c4739SYork Sun 245205ac79eSJean-Jacques Hiblotconfig SPL_LZO 246205ac79eSJean-Jacques Hiblot bool "Enable LZO decompression support in SPL" 247205ac79eSJean-Jacques Hiblot help 248205ac79eSJean-Jacques Hiblot This enables support for LZO compression algorithm in the SPL. 249205ac79eSJean-Jacques Hiblot 250b81c4739SYork Sunconfig SPL_GZIP 251b81c4739SYork Sun bool "Enable gzip decompression support for SPL build" 252b81c4739SYork Sun select SPL_ZLIB 253b81c4739SYork Sun help 254b81c4739SYork Sun This enables support for GZIP compression altorithm for SPL boot. 255b81c4739SYork Sun 256b81c4739SYork Sunconfig SPL_ZLIB 257b81c4739SYork Sun bool 258b81c4739SYork Sun help 259b81c4739SYork Sun This enables compression lib for SPL boot. 260b81c4739SYork Sun 261027b728dSJulius Wernerendmenu 262027b728dSJulius Werner 2636501ff62SPrzemyslaw Marczakconfig ERRNO_STR 2646501ff62SPrzemyslaw Marczak bool "Enable function for getting errno-related string message" 2656501ff62SPrzemyslaw Marczak help 2666501ff62SPrzemyslaw Marczak The function errno_str(int errno), returns a pointer to the errno 2676501ff62SPrzemyslaw Marczak corresponding text message: 2686501ff62SPrzemyslaw Marczak - if errno is null or positive number - a pointer to "Success" message 2696501ff62SPrzemyslaw Marczak - if errno is negative - a pointer to errno related message 2706501ff62SPrzemyslaw Marczak 27128386b6dSAlexey Brodkinconfig HEXDUMP 27228386b6dSAlexey Brodkin bool "Enable hexdump" 27328386b6dSAlexey Brodkin help 27428386b6dSAlexey Brodkin This enables functions for printing dumps of binary data. 27528386b6dSAlexey Brodkin 27669e173ebSSimon Glassconfig OF_LIBFDT 27769e173ebSSimon Glass bool "Enable the FDT library" 27869e173ebSSimon Glass default y if OF_CONTROL 27969e173ebSSimon Glass help 28069e173ebSSimon Glass This enables the FDT library (libfdt). It provides functions for 28169e173ebSSimon Glass accessing binary device tree images in memory, such as adding and 282f1a7ba1dSAnatolij Gustschin removing nodes and properties, scanning through the tree and finding 28369e173ebSSimon Glass particular compatible nodes. The library operates on a flattened 28469e173ebSSimon Glass version of the device tree. 28569e173ebSSimon Glass 286ddf67f71SMaxime Ripardconfig OF_LIBFDT_OVERLAY 287ddf67f71SMaxime Ripard bool "Enable the FDT library overlay support" 288ddf67f71SMaxime Ripard help 289ddf67f71SMaxime Ripard This enables the FDT library (libfdt) overlay support. 290ddf67f71SMaxime Ripard 291aa34fbc0SSimon Glassconfig SPL_OF_LIBFDT 292aa34fbc0SSimon Glass bool "Enable the FDT library for SPL" 293aa34fbc0SSimon Glass default y if SPL_OF_CONTROL 294aa34fbc0SSimon Glass help 295aa34fbc0SSimon Glass This enables the FDT library (libfdt). It provides functions for 296aa34fbc0SSimon Glass accessing binary device tree images in memory, such as adding and 297f1a7ba1dSAnatolij Gustschin removing nodes and properties, scanning through the tree and finding 298aa34fbc0SSimon Glass particular compatible nodes. The library operates on a flattened 299aa34fbc0SSimon Glass version of the device tree. 300aa34fbc0SSimon Glass 301e2f2fb23SKever Yangconfig TPL_OF_LIBFDT 302e2f2fb23SKever Yang bool "Enable the FDT library for TPL" 303e2f2fb23SKever Yang default y if TPL_OF_CONTROL 304e2f2fb23SKever Yang help 305e2f2fb23SKever Yang This enables the FDT library (libfdt). It provides functions for 306e2f2fb23SKever Yang accessing binary device tree images in memory, such as adding and 307e2f2fb23SKever Yang removing nodes and properties, scanning through the tree and finding 308e2f2fb23SKever Yang particular compatible nodes. The library operates on a flattened 309e2f2fb23SKever Yang version of the device tree. 310e2f2fb23SKever Yang 311ebf7fff2SHeiko Schocherconfig FDT_FIXUP_PARTITIONS 312ebf7fff2SHeiko Schocher bool "overwrite MTD partitions in DTS through defined in 'mtdparts'" 313ebf7fff2SHeiko Schocher depends on OF_LIBFDT 314ebf7fff2SHeiko Schocher default n 315ebf7fff2SHeiko Schocher help 316ebf7fff2SHeiko Schocher Allow overwriting defined partitions in the device tree blob 317ebf7fff2SHeiko Schocher using partition info defined in the 'mtdparts' environment 318ebf7fff2SHeiko Schocher variable. 319ebf7fff2SHeiko Schocher 3204b6dddc2SAlexander Grafmenu "System tables" 321e663b350SAlexander Graf depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER) 3224b6dddc2SAlexander Graf 3234b6dddc2SAlexander Grafconfig GENERATE_SMBIOS_TABLE 3244b6dddc2SAlexander Graf bool "Generate an SMBIOS (System Management BIOS) table" 3254b6dddc2SAlexander Graf default y 326e663b350SAlexander Graf depends on X86 || EFI_LOADER 3274b6dddc2SAlexander Graf help 3284b6dddc2SAlexander Graf The System Management BIOS (SMBIOS) specification addresses how 3294b6dddc2SAlexander Graf motherboard and system vendors present management information about 3304b6dddc2SAlexander Graf their products in a standard format by extending the BIOS interface 3314b6dddc2SAlexander Graf on Intel architecture systems. 3324b6dddc2SAlexander Graf 3334b6dddc2SAlexander Graf Check http://www.dmtf.org/standards/smbios for details. 3344b6dddc2SAlexander Graf 3354b6dddc2SAlexander Grafconfig SMBIOS_MANUFACTURER 3364b6dddc2SAlexander Graf string "SMBIOS Manufacturer" 3374b6dddc2SAlexander Graf depends on GENERATE_SMBIOS_TABLE 3384b6dddc2SAlexander Graf default SYS_VENDOR 3394b6dddc2SAlexander Graf help 3404b6dddc2SAlexander Graf The board manufacturer to store in SMBIOS structures. 3414b6dddc2SAlexander Graf Change this to override the default one (CONFIG_SYS_VENDOR). 3424b6dddc2SAlexander Graf 3434b6dddc2SAlexander Grafconfig SMBIOS_PRODUCT_NAME 3444b6dddc2SAlexander Graf string "SMBIOS Product Name" 3454b6dddc2SAlexander Graf depends on GENERATE_SMBIOS_TABLE 3464b6dddc2SAlexander Graf default SYS_BOARD 3474b6dddc2SAlexander Graf help 3484b6dddc2SAlexander Graf The product name to store in SMBIOS structures. 3494b6dddc2SAlexander Graf Change this to override the default one (CONFIG_SYS_BOARD). 3504b6dddc2SAlexander Graf 351*4700eff1STero Kristoconfig LIB_RATIONAL 352*4700eff1STero Kristo bool "enable continued fraction calculation routines" 353*4700eff1STero Kristo 354*4700eff1STero Kristoconfig SPL_LIB_RATIONAL 355*4700eff1STero Kristo bool "enable continued fraction calculation routines for SPL" 356*4700eff1STero Kristo depends on SPL 357*4700eff1STero Kristo 3584b6dddc2SAlexander Grafendmenu 3594b6dddc2SAlexander Graf 360867a6ac8SSimon Glasssource lib/efi/Kconfig 361ed980b8cSAlexander Grafsource lib/efi_loader/Kconfig 36237a7bc39SJason Zhusource lib/avb/libavb/Kconfig 36337a7bc39SJason Zhusource lib/avb/libavb_ab/Kconfig 36437a7bc39SJason Zhusource lib/avb/libavb_atx/Kconfig 36537a7bc39SJason Zhusource lib/avb/libavb_user/Kconfig 36637a7bc39SJason Zhusource lib/avb/rk_avb_user/Kconfig 367abdd2437Shispingsource lib/optee_clientApi/Kconfig 368ed36323fSMasahiro Yamadaendmenu 369