xref: /openbmc/u-boot/lib/Kconfig (revision d5abcf94)
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	default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS)
18	help
19	  This option allows you to use the built-in libgcc implementation
20	  of U-Boot instead of the one provided by the compiler.
21	  If unsure, say N.
22
23config SYS_HZ
24	int
25	default 1000
26	help
27	  The frequency of the timer returned by get_timer().
28	  get_timer() must operate in milliseconds and this option must be
29	  set to 1000.
30
31config USE_TINY_PRINTF
32	bool "Enable tiny printf() version"
33	help
34	  This option enables a tiny, stripped down printf version.
35	  This should only be used in space limited environments,
36	  like SPL versions with hard memory limits. This version
37	  reduces the code size by about 2.5KiB on armv7.
38
39	  The supported format specifiers are %c, %s, %u/%d and %x.
40
41config REGEX
42	bool "Enable regular expression support"
43	default y if NET
44	help
45	  If this variable is defined, U-Boot is linked against the
46	  SLRE (Super Light Regular Expression) library, which adds
47	  regex support to some commands, for example "env grep" and
48	  "setexpr".
49
50config LIB_RAND
51	bool "Pseudo-random library support "
52	help
53	  This library provides pseudo-random number generator functions.
54
55source lib/dhry/Kconfig
56
57source lib/rsa/Kconfig
58
59config TPM
60	bool "Trusted Platform Module (TPM) Support"
61	depends on DM
62	help
63	  This enables support for TPMs which can be used to provide security
64	  features for your board. The TPM can be connected via LPC or I2C
65	  and a sandbox TPM is provided for testing purposes. Use the 'tpm'
66	  command to interactive the TPM. Driver model support is provided
67	  for the low-level TPM interface, but only one TPM is supported at
68	  a time by the TPM library.
69
70menu "Hashing Support"
71
72config SHA1
73	bool "Enable SHA1 support"
74	help
75	  This option enables support of hashing using SHA1 algorithm.
76	  The hash is calculated in software.
77	  The SHA1 algorithm produces a 160-bit (20-byte) hash value
78	  (digest).
79
80config SHA256
81	bool "Enable SHA256 support"
82	help
83	  This option enables support of hashing using SHA256 algorithm.
84	  The hash is calculated in software.
85	  The SHA256 algorithm produces a 256-bit (32-byte) hash value
86	  (digest).
87
88config SHA_HW_ACCEL
89	bool "Enable hashing using hardware"
90	help
91	  This option enables hardware acceleration
92	  for SHA1/SHA256 hashing.
93	  This affects the 'hash' command and also the
94	  hash_lookup_algo() function.
95
96config SHA_PROG_HW_ACCEL
97	bool "Enable Progressive hashing support using hardware"
98	depends on SHA_HW_ACCEL
99	help
100	  This option enables hardware-acceleration for
101	  SHA1/SHA256 progressive hashing.
102	  Data can be streamed in a block at a time and the hashing
103	  is performed in hardware.
104
105config MD5
106	bool
107
108endmenu
109
110menu "Compression Support"
111
112config LZ4
113	bool "Enable LZ4 decompression support"
114	help
115	  If this option is set, support for LZ4 compressed images
116	  is included. The LZ4 algorithm can run in-place as long as the
117	  compressed image is loaded to the end of the output buffer, and
118	  trades lower compression ratios for much faster decompression.
119
120	  NOTE: This implements the release version of the LZ4 frame
121	  format as generated by default by the 'lz4' command line tool.
122	  This is not the same as the outdated, less efficient legacy
123	  frame format currently (2015) implemented in the Linux kernel
124	  (generated by 'lz4 -l'). The two formats are incompatible.
125
126endmenu
127
128config ERRNO_STR
129	bool "Enable function for getting errno-related string message"
130	help
131	  The function errno_str(int errno), returns a pointer to the errno
132	  corresponding text message:
133	  - if errno is null or positive number - a pointer to "Success" message
134	  - if errno is negative - a pointer to errno related message
135
136config OF_LIBFDT
137	bool "Enable the FDT library"
138	default y if OF_CONTROL
139	help
140	  This enables the FDT library (libfdt). It provides functions for
141	  accessing binary device tree images in memory, such as adding and
142	  removing notes and properties, scanning through the tree and finding
143	  particular compatible nodes. The library operates on a flattened
144	  version of the device tree.
145
146config OF_LIBFDT_OVERLAY
147	bool "Enable the FDT library overlay support"
148	help
149	  This enables the FDT library (libfdt) overlay support.
150
151config SPL_OF_LIBFDT
152	bool "Enable the FDT library for SPL"
153	default y if SPL_OF_CONTROL
154	help
155	  This enables the FDT library (libfdt). It provides functions for
156	  accessing binary device tree images in memory, such as adding and
157	  removing notes and properties, scanning through the tree and finding
158	  particular compatible nodes. The library operates on a flattened
159	  version of the device tree.
160
161config FDT_FIXUP_PARTITIONS
162	bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
163	depends on OF_LIBFDT
164	default n
165	help
166	  Allow overwriting defined partitions in the device tree blob
167	  using partition info defined in the 'mtdparts' environment
168	  variable.
169
170menu "System tables"
171	depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
172
173config GENERATE_SMBIOS_TABLE
174	bool "Generate an SMBIOS (System Management BIOS) table"
175	default y
176	depends on X86 || EFI_LOADER
177	help
178	  The System Management BIOS (SMBIOS) specification addresses how
179	  motherboard and system vendors present management information about
180	  their products in a standard format by extending the BIOS interface
181	  on Intel architecture systems.
182
183	  Check http://www.dmtf.org/standards/smbios for details.
184
185config SMBIOS_MANUFACTURER
186	string "SMBIOS Manufacturer"
187	depends on GENERATE_SMBIOS_TABLE
188	default SYS_VENDOR
189	help
190	  The board manufacturer to store in SMBIOS structures.
191	  Change this to override the default one (CONFIG_SYS_VENDOR).
192
193config SMBIOS_PRODUCT_NAME
194	string "SMBIOS Product Name"
195	depends on GENERATE_SMBIOS_TABLE
196	default SYS_BOARD
197	help
198	  The product name to store in SMBIOS structures.
199	  Change this to override the default one (CONFIG_SYS_BOARD).
200
201endmenu
202
203source lib/efi/Kconfig
204source lib/efi_loader/Kconfig
205
206endmenu
207