xref: /openbmc/u-boot/lib/Kconfig (revision 225f5eec)
1menu "Library routines"
2
3config CC_OPTIMIZE_LIBS_FOR_SPEED
4	bool "Optimize libraries for speed"
5	help
6	  Enabling this option will pass "-O2" to gcc when compiling
7	  under "lib" directory.
8
9	  If unsure, say N.
10
11config HAVE_PRIVATE_LIBGCC
12	bool
13
14config USE_PRIVATE_LIBGCC
15	bool "Use private libgcc"
16	depends on HAVE_PRIVATE_LIBGCC
17	help
18	  This option allows you to use the built-in libgcc implementation
19	  of U-boot instead of the one privided by the compiler.
20	  If unsure, say N.
21
22config SYS_HZ
23	int
24	default 1000
25	help
26	  The frequency of the timer returned by get_timer().
27	  get_timer() must operate in milliseconds and this option must be
28	  set to 1000.
29
30config SYS_VSNPRINTF
31	bool "Enable safe version of sprintf()"
32	help
33	  Since sprintf() can overflow its buffer, it is common to use
34	  snprintf() instead, which knows the buffer size and can avoid
35	  overflow. However, this does increase code size slightly (for
36	  Thumb-2, about 420 bytes). Enable this option for safety when
37	  using sprintf() with data you do not control.
38
39config USE_TINY_PRINTF
40	bool "Enable tiny printf() version"
41	help
42	  This option enables a tiny, stripped down printf version.
43	  This should only be used in space limited environments,
44	  like SPL versions with hard memory limits. This version
45	  reduces the code size by about 2.5KiB on armv7.
46
47	  The supported format specifiers are %c, %s, %u/%d and %x.
48
49config REGEX
50	bool "Enable regular expression support"
51	default y if NET
52	help
53	  If this variable is defined, U-Boot is linked against the
54	  SLRE (Super Light Regular Expression) library, which adds
55	  regex support to some commands, for example "env grep" and
56	  "setexpr".
57
58config LIB_RAND
59	bool "Pseudo-random library support "
60	help
61	  This library provides pseudo-random number generator functions.
62
63source lib/dhry/Kconfig
64
65source lib/rsa/Kconfig
66
67config TPM
68	bool "Trusted Platform Module (TPM) Support"
69	depends on DM
70	help
71	  This enables support for TPMs which can be used to provide security
72	  features for your board. The TPM can be connected via LPC or I2C
73	  and a sandbox TPM is provided for testing purposes. Use the 'tpm'
74	  command to interactive the TPM. Driver model support is provided
75	  for the low-level TPM interface, but only one TPM is supported at
76	  a time by the TPM library.
77
78menu "Hashing Support"
79
80config SHA1
81	bool "Enable SHA1 support"
82	help
83	  This option enables support of hashing using SHA1 algorithm.
84	  The hash is calculated in software.
85	  The SHA1 algorithm produces a 160-bit (20-byte) hash value
86	  (digest).
87
88config SHA256
89	bool "Enable SHA256 support"
90	help
91	  This option enables support of hashing using SHA256 algorithm.
92	  The hash is calculated in software.
93	  The SHA256 algorithm produces a 256-bit (32-byte) hash value
94	  (digest).
95
96config SHA_HW_ACCEL
97	bool "Enable hashing using hardware"
98	help
99	  This option enables hardware acceleration
100	  for SHA1/SHA256 hashing.
101	  This affects the 'hash' command and also the
102	  hash_lookup_algo() function.
103
104config SHA_PROG_HW_ACCEL
105	bool "Enable Progressive hashing support using hardware"
106	depends on SHA_HW_ACCEL
107	help
108	  This option enables hardware-acceleration for
109	  SHA1/SHA256 progressive hashing.
110	  Data can be streamed in a block at a time and the hashing
111	  is performed in hardware.
112endmenu
113
114menu "Compression Support"
115
116config LZ4
117	bool "Enable LZ4 decompression support"
118	help
119	  If this option is set, support for LZ4 compressed images
120	  is included. The LZ4 algorithm can run in-place as long as the
121	  compressed image is loaded to the end of the output buffer, and
122	  trades lower compression ratios for much faster decompression.
123
124	  NOTE: This implements the release version of the LZ4 frame
125	  format as generated by default by the 'lz4' command line tool.
126	  This is not the same as the outdated, less efficient legacy
127	  frame format currently (2015) implemented in the Linux kernel
128	  (generated by 'lz4 -l'). The two formats are incompatible.
129
130endmenu
131
132config ERRNO_STR
133	bool "Enable function for getting errno-related string message"
134	help
135	  The function errno_str(int errno), returns a pointer to the errno
136	  corresponding text message:
137	  - if errno is null or positive number - a pointer to "Success" message
138	  - if errno is negative - a pointer to errno related message
139
140source lib/efi/Kconfig
141
142endmenu
143