xref: /openbmc/u-boot/lib/Kconfig (revision e663b350f1699312281ddd1439dda6b5fc86598d)
1ed36323fSMasahiro Yamadamenu "Library routines"
2ed36323fSMasahiro Yamada
3b0928da6SMasahiro Yamadaconfig CC_OPTIMIZE_LIBS_FOR_SPEED
4b0928da6SMasahiro Yamada	bool "Optimize libraries for speed"
5b0928da6SMasahiro Yamada	help
6b0928da6SMasahiro Yamada	  Enabling this option will pass "-O2" to gcc when compiling
7b0928da6SMasahiro Yamada	  under "lib" directory.
8b0928da6SMasahiro Yamada
9b0928da6SMasahiro Yamada	  If unsure, say N.
10b0928da6SMasahiro Yamada
1145ccec8fSMasahiro Yamadaconfig HAVE_PRIVATE_LIBGCC
1245ccec8fSMasahiro Yamada	bool
1345ccec8fSMasahiro Yamada
1445ccec8fSMasahiro Yamadaconfig USE_PRIVATE_LIBGCC
1545ccec8fSMasahiro Yamada	bool "Use private libgcc"
1645ccec8fSMasahiro Yamada	depends on HAVE_PRIVATE_LIBGCC
1791b86e21SMarek Vasut	default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS)
1845ccec8fSMasahiro Yamada	help
1945ccec8fSMasahiro Yamada	  This option allows you to use the built-in libgcc implementation
2067976306SMasahiro Yamada	  of U-Boot instead of the one provided by the compiler.
2145ccec8fSMasahiro Yamada	  If unsure, say N.
2245ccec8fSMasahiro Yamada
238c688bc4SMasahiro Yamadaconfig SYS_HZ
248c688bc4SMasahiro Yamada	int
258c688bc4SMasahiro Yamada	default 1000
268c688bc4SMasahiro Yamada	help
278c688bc4SMasahiro Yamada	  The frequency of the timer returned by get_timer().
288c688bc4SMasahiro Yamada	  get_timer() must operate in milliseconds and this option must be
298c688bc4SMasahiro Yamada	  set to 1000.
308c688bc4SMasahiro Yamada
317d9cde10SStefan Roeseconfig USE_TINY_PRINTF
327d9cde10SStefan Roese	bool "Enable tiny printf() version"
337d9cde10SStefan Roese	help
347d9cde10SStefan Roese	  This option enables a tiny, stripped down printf version.
357d9cde10SStefan Roese	  This should only be used in space limited environments,
367d9cde10SStefan Roese	  like SPL versions with hard memory limits. This version
377d9cde10SStefan Roese	  reduces the code size by about 2.5KiB on armv7.
387d9cde10SStefan Roese
397d9cde10SStefan Roese	  The supported format specifiers are %c, %s, %u/%d and %x.
407d9cde10SStefan Roese
411a60650cSJoe Hershbergerconfig REGEX
421a60650cSJoe Hershberger	bool "Enable regular expression support"
43f7848d90SJoe Hershberger	default y if NET
441a60650cSJoe Hershberger	help
451a60650cSJoe Hershberger	  If this variable is defined, U-Boot is linked against the
461a60650cSJoe Hershberger	  SLRE (Super Light Regular Expression) library, which adds
471a60650cSJoe Hershberger	  regex support to some commands, for example "env grep" and
481a60650cSJoe Hershberger	  "setexpr".
491a60650cSJoe Hershberger
509ba9e85fSMichal Simekconfig LIB_RAND
513850dbe8SMasahiro Yamada	bool "Pseudo-random library support "
523850dbe8SMasahiro Yamada	help
533850dbe8SMasahiro Yamada	  This library provides pseudo-random number generator functions.
549ba9e85fSMichal Simek
55d1389403SSimon Glasssource lib/dhry/Kconfig
56d1389403SSimon Glass
57d9f23c7fSRuchika Guptasource lib/rsa/Kconfig
58c4beb22fSRuchika Gupta
59a7d660bcSSimon Glassconfig TPM
60a7d660bcSSimon Glass	bool "Trusted Platform Module (TPM) Support"
612419cd16SSimon Glass	depends on DM
62a7d660bcSSimon Glass	help
63a7d660bcSSimon Glass	  This enables support for TPMs which can be used to provide security
64a7d660bcSSimon Glass	  features for your board. The TPM can be connected via LPC or I2C
65a7d660bcSSimon Glass	  and a sandbox TPM is provided for testing purposes. Use the 'tpm'
66a7d660bcSSimon Glass	  command to interactive the TPM. Driver model support is provided
67a7d660bcSSimon Glass	  for the low-level TPM interface, but only one TPM is supported at
68a7d660bcSSimon Glass	  a time by the TPM library.
69a7d660bcSSimon Glass
7094e3c8c4Sgaurav ranamenu "Hashing Support"
7194e3c8c4Sgaurav rana
7294e3c8c4Sgaurav ranaconfig SHA1
7394e3c8c4Sgaurav rana	bool "Enable SHA1 support"
7494e3c8c4Sgaurav rana	help
7594e3c8c4Sgaurav rana	  This option enables support of hashing using SHA1 algorithm.
7694e3c8c4Sgaurav rana	  The hash is calculated in software.
7794e3c8c4Sgaurav rana	  The SHA1 algorithm produces a 160-bit (20-byte) hash value
7894e3c8c4Sgaurav rana	  (digest).
7994e3c8c4Sgaurav rana
8094e3c8c4Sgaurav ranaconfig SHA256
8194e3c8c4Sgaurav rana	bool "Enable SHA256 support"
8294e3c8c4Sgaurav rana	help
8394e3c8c4Sgaurav rana	  This option enables support of hashing using SHA256 algorithm.
8494e3c8c4Sgaurav rana	  The hash is calculated in software.
8594e3c8c4Sgaurav rana	  The SHA256 algorithm produces a 256-bit (32-byte) hash value
8694e3c8c4Sgaurav rana	  (digest).
8794e3c8c4Sgaurav rana
8894e3c8c4Sgaurav ranaconfig SHA_HW_ACCEL
8994e3c8c4Sgaurav rana	bool "Enable hashing using hardware"
9094e3c8c4Sgaurav rana	help
9194e3c8c4Sgaurav rana	  This option enables hardware acceleration
9294e3c8c4Sgaurav rana	  for SHA1/SHA256 hashing.
9394e3c8c4Sgaurav rana	  This affects the 'hash' command and also the
9494e3c8c4Sgaurav rana	  hash_lookup_algo() function.
9594e3c8c4Sgaurav rana
9694e3c8c4Sgaurav ranaconfig SHA_PROG_HW_ACCEL
9794e3c8c4Sgaurav rana	bool "Enable Progressive hashing support using hardware"
9894e3c8c4Sgaurav rana	depends on SHA_HW_ACCEL
9994e3c8c4Sgaurav rana	help
10094e3c8c4Sgaurav rana	  This option enables hardware-acceleration for
10194e3c8c4Sgaurav rana	  SHA1/SHA256 progressive hashing.
10294e3c8c4Sgaurav rana	  Data can be streamed in a block at a time and the hashing
10394e3c8c4Sgaurav rana	  is performed in hardware.
10494e3c8c4Sgaurav ranaendmenu
10594e3c8c4Sgaurav rana
106027b728dSJulius Wernermenu "Compression Support"
107027b728dSJulius Werner
108027b728dSJulius Wernerconfig LZ4
109027b728dSJulius Werner	bool "Enable LZ4 decompression support"
110027b728dSJulius Werner	help
111027b728dSJulius Werner	  If this option is set, support for LZ4 compressed images
112027b728dSJulius Werner	  is included. The LZ4 algorithm can run in-place as long as the
113027b728dSJulius Werner	  compressed image is loaded to the end of the output buffer, and
114027b728dSJulius Werner	  trades lower compression ratios for much faster decompression.
115027b728dSJulius Werner
116027b728dSJulius Werner	  NOTE: This implements the release version of the LZ4 frame
117027b728dSJulius Werner	  format as generated by default by the 'lz4' command line tool.
118027b728dSJulius Werner	  This is not the same as the outdated, less efficient legacy
119027b728dSJulius Werner	  frame format currently (2015) implemented in the Linux kernel
120027b728dSJulius Werner	  (generated by 'lz4 -l'). The two formats are incompatible.
121027b728dSJulius Werner
122027b728dSJulius Wernerendmenu
123027b728dSJulius Werner
1246501ff62SPrzemyslaw Marczakconfig ERRNO_STR
1256501ff62SPrzemyslaw Marczak	bool "Enable function for getting errno-related string message"
1266501ff62SPrzemyslaw Marczak	help
1276501ff62SPrzemyslaw Marczak	  The function errno_str(int errno), returns a pointer to the errno
1286501ff62SPrzemyslaw Marczak	  corresponding text message:
1296501ff62SPrzemyslaw Marczak	  - if errno is null or positive number - a pointer to "Success" message
1306501ff62SPrzemyslaw Marczak	  - if errno is negative - a pointer to errno related message
1316501ff62SPrzemyslaw Marczak
13269e173ebSSimon Glassconfig OF_LIBFDT
13369e173ebSSimon Glass	bool "Enable the FDT library"
13469e173ebSSimon Glass	default y if OF_CONTROL
13569e173ebSSimon Glass	help
13669e173ebSSimon Glass	  This enables the FDT library (libfdt). It provides functions for
13769e173ebSSimon Glass	  accessing binary device tree images in memory, such as adding and
13869e173ebSSimon Glass	  removing notes and properties, scanning through the tree and finding
13969e173ebSSimon Glass	  particular compatible nodes. The library operates on a flattened
14069e173ebSSimon Glass	  version of the device tree.
14169e173ebSSimon Glass
142ddf67f71SMaxime Ripardconfig OF_LIBFDT_OVERLAY
143ddf67f71SMaxime Ripard	bool "Enable the FDT library overlay support"
144ddf67f71SMaxime Ripard	help
145ddf67f71SMaxime Ripard	  This enables the FDT library (libfdt) overlay support.
146ddf67f71SMaxime Ripard
147aa34fbc0SSimon Glassconfig SPL_OF_LIBFDT
148aa34fbc0SSimon Glass	bool "Enable the FDT library for SPL"
149aa34fbc0SSimon Glass	default y if SPL_OF_CONTROL
150aa34fbc0SSimon Glass	help
151aa34fbc0SSimon Glass	  This enables the FDT library (libfdt). It provides functions for
152aa34fbc0SSimon Glass	  accessing binary device tree images in memory, such as adding and
153aa34fbc0SSimon Glass	  removing notes and properties, scanning through the tree and finding
154aa34fbc0SSimon Glass	  particular compatible nodes. The library operates on a flattened
155aa34fbc0SSimon Glass	  version of the device tree.
156aa34fbc0SSimon Glass
157ebf7fff2SHeiko Schocherconfig FDT_FIXUP_PARTITIONS
158ebf7fff2SHeiko Schocher	bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
159ebf7fff2SHeiko Schocher	depends on OF_LIBFDT
160ebf7fff2SHeiko Schocher	default n
161ebf7fff2SHeiko Schocher	help
162ebf7fff2SHeiko Schocher	  Allow overwriting defined partitions in the device tree blob
163ebf7fff2SHeiko Schocher	  using partition info defined in the 'mtdparts' environment
164ebf7fff2SHeiko Schocher	  variable.
165ebf7fff2SHeiko Schocher
1664b6dddc2SAlexander Grafmenu "System tables"
167*e663b350SAlexander Graf	depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
1684b6dddc2SAlexander Graf
1694b6dddc2SAlexander Grafconfig GENERATE_SMBIOS_TABLE
1704b6dddc2SAlexander Graf	bool "Generate an SMBIOS (System Management BIOS) table"
1714b6dddc2SAlexander Graf	default y
172*e663b350SAlexander Graf	depends on X86 || EFI_LOADER
1734b6dddc2SAlexander Graf	help
1744b6dddc2SAlexander Graf	  The System Management BIOS (SMBIOS) specification addresses how
1754b6dddc2SAlexander Graf	  motherboard and system vendors present management information about
1764b6dddc2SAlexander Graf	  their products in a standard format by extending the BIOS interface
1774b6dddc2SAlexander Graf	  on Intel architecture systems.
1784b6dddc2SAlexander Graf
1794b6dddc2SAlexander Graf	  Check http://www.dmtf.org/standards/smbios for details.
1804b6dddc2SAlexander Graf
1814b6dddc2SAlexander Grafconfig SMBIOS_MANUFACTURER
1824b6dddc2SAlexander Graf	string "SMBIOS Manufacturer"
1834b6dddc2SAlexander Graf	depends on GENERATE_SMBIOS_TABLE
1844b6dddc2SAlexander Graf	default SYS_VENDOR
1854b6dddc2SAlexander Graf	help
1864b6dddc2SAlexander Graf	  The board manufacturer to store in SMBIOS structures.
1874b6dddc2SAlexander Graf	  Change this to override the default one (CONFIG_SYS_VENDOR).
1884b6dddc2SAlexander Graf
1894b6dddc2SAlexander Grafconfig SMBIOS_PRODUCT_NAME
1904b6dddc2SAlexander Graf	string "SMBIOS Product Name"
1914b6dddc2SAlexander Graf	depends on GENERATE_SMBIOS_TABLE
1924b6dddc2SAlexander Graf	default SYS_BOARD
1934b6dddc2SAlexander Graf	help
1944b6dddc2SAlexander Graf	  The product name to store in SMBIOS structures.
1954b6dddc2SAlexander Graf	  Change this to override the default one (CONFIG_SYS_BOARD).
1964b6dddc2SAlexander Graf
1974b6dddc2SAlexander Grafendmenu
1984b6dddc2SAlexander Graf
199867a6ac8SSimon Glasssource lib/efi/Kconfig
200ed980b8cSAlexander Grafsource lib/efi_loader/Kconfig
201867a6ac8SSimon Glass
202ed36323fSMasahiro Yamadaendmenu
203