Merge branch 'master' of git://git.denx.de/u-boot-sunxi
[oweals/u-boot.git] / lib / Kconfig
1 menu "Library routines"
2
3 config 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
11 config HAVE_PRIVATE_LIBGCC
12         bool
13
14 config 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
23 config 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
31 config 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
41 config 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
50 config LIB_RAND
51         bool "Pseudo-random library support "
52         help
53           This library provides pseudo-random number generator functions.
54
55 config SPL_TINY_MEMSET
56         bool "Use a very small memset() in SPL"
57         help
58           The faster memset() is the arch-specific one (if available) enabled
59           by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
60           better performance by writing a word at a time. But in very
61           size-constrained envrionments even this may be too big. Enable this
62           option to reduce code size slightly at the cost of some speed.
63
64 config RBTREE
65         bool
66
67 source lib/dhry/Kconfig
68
69 source lib/rsa/Kconfig
70
71 config TPM
72         bool "Trusted Platform Module (TPM) Support"
73         depends on DM
74         help
75           This enables support for TPMs which can be used to provide security
76           features for your board. The TPM can be connected via LPC or I2C
77           and a sandbox TPM is provided for testing purposes. Use the 'tpm'
78           command to interactive the TPM. Driver model support is provided
79           for the low-level TPM interface, but only one TPM is supported at
80           a time by the TPM library.
81
82 menu "Hashing Support"
83
84 config SHA1
85         bool "Enable SHA1 support"
86         help
87           This option enables support of hashing using SHA1 algorithm.
88           The hash is calculated in software.
89           The SHA1 algorithm produces a 160-bit (20-byte) hash value
90           (digest).
91
92 config SHA256
93         bool "Enable SHA256 support"
94         help
95           This option enables support of hashing using SHA256 algorithm.
96           The hash is calculated in software.
97           The SHA256 algorithm produces a 256-bit (32-byte) hash value
98           (digest).
99
100 config SHA_HW_ACCEL
101         bool "Enable hashing using hardware"
102         help
103           This option enables hardware acceleration
104           for SHA1/SHA256 hashing.
105           This affects the 'hash' command and also the
106           hash_lookup_algo() function.
107
108 config SHA_PROG_HW_ACCEL
109         bool "Enable Progressive hashing support using hardware"
110         depends on SHA_HW_ACCEL
111         help
112           This option enables hardware-acceleration for
113           SHA1/SHA256 progressive hashing.
114           Data can be streamed in a block at a time and the hashing
115           is performed in hardware.
116
117 config MD5
118         bool
119
120 endmenu
121
122 menu "Compression Support"
123
124 config LZ4
125         bool "Enable LZ4 decompression support"
126         help
127           If this option is set, support for LZ4 compressed images
128           is included. The LZ4 algorithm can run in-place as long as the
129           compressed image is loaded to the end of the output buffer, and
130           trades lower compression ratios for much faster decompression.
131           
132           NOTE: This implements the release version of the LZ4 frame
133           format as generated by default by the 'lz4' command line tool.
134           This is not the same as the outdated, less efficient legacy
135           frame format currently (2015) implemented in the Linux kernel
136           (generated by 'lz4 -l'). The two formats are incompatible.
137
138 config LZO
139         bool
140 endmenu
141
142 config ERRNO_STR
143         bool "Enable function for getting errno-related string message"
144         help
145           The function errno_str(int errno), returns a pointer to the errno
146           corresponding text message:
147           - if errno is null or positive number - a pointer to "Success" message
148           - if errno is negative - a pointer to errno related message
149
150 config OF_LIBFDT
151         bool "Enable the FDT library"
152         default y if OF_CONTROL
153         help
154           This enables the FDT library (libfdt). It provides functions for
155           accessing binary device tree images in memory, such as adding and
156           removing notes and properties, scanning through the tree and finding
157           particular compatible nodes. The library operates on a flattened
158           version of the device tree.
159
160 config OF_LIBFDT_OVERLAY
161         bool "Enable the FDT library overlay support"
162         help
163           This enables the FDT library (libfdt) overlay support.
164
165 config SPL_OF_LIBFDT
166         bool "Enable the FDT library for SPL"
167         default y if SPL_OF_CONTROL
168         help
169           This enables the FDT library (libfdt). It provides functions for
170           accessing binary device tree images in memory, such as adding and
171           removing notes and properties, scanning through the tree and finding
172           particular compatible nodes. The library operates on a flattened
173           version of the device tree.
174
175 config FDT_FIXUP_PARTITIONS
176         bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
177         depends on OF_LIBFDT
178         default n
179         help
180           Allow overwriting defined partitions in the device tree blob
181           using partition info defined in the 'mtdparts' environment
182           variable.
183
184 menu "System tables"
185         depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
186
187 config GENERATE_SMBIOS_TABLE
188         bool "Generate an SMBIOS (System Management BIOS) table"
189         default y
190         depends on X86 || EFI_LOADER
191         help
192           The System Management BIOS (SMBIOS) specification addresses how
193           motherboard and system vendors present management information about
194           their products in a standard format by extending the BIOS interface
195           on Intel architecture systems.
196
197           Check http://www.dmtf.org/standards/smbios for details.
198
199 config SMBIOS_MANUFACTURER
200         string "SMBIOS Manufacturer"
201         depends on GENERATE_SMBIOS_TABLE
202         default SYS_VENDOR
203         help
204           The board manufacturer to store in SMBIOS structures.
205           Change this to override the default one (CONFIG_SYS_VENDOR).
206
207 config SMBIOS_PRODUCT_NAME
208         string "SMBIOS Product Name"
209         depends on GENERATE_SMBIOS_TABLE
210         default SYS_BOARD
211         help
212           The product name to store in SMBIOS structures.
213           Change this to override the default one (CONFIG_SYS_BOARD).
214
215 endmenu
216
217 source lib/efi/Kconfig
218 source lib/efi_loader/Kconfig
219
220 endmenu