2 ## This file is part of the libpayload project.
4 ## Copyright (C) 2008 Advanced Micro Devices, Inc.
5 ## Copyright (C) 2008 coresystems GmbH
7 ## Redistribution and use in source and binary forms, with or without
8 ## modification, are permitted provided that the following conditions
10 ## 1. Redistributions of source code must retain the above copyright
11 ## notice, this list of conditions and the following disclaimer.
12 ## 2. Redistributions in binary form must reproduce the above copyright
13 ## notice, this list of conditions and the following disclaimer in the
14 ## documentation and/or other materials provided with the distribution.
15 ## 3. The name of the author may not be used to endorse or promote products
16 ## derived from this software without specific prior written permission.
18 ## THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19 ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 ## ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22 ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 ## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 ## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 ## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 ## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 mainmenu "Libpayload Configuration"
33 menu "Generic Options"
36 bool "Experimental Options"
39 Prompt for experimental functionality. Attention: This is not likely
40 to work without problems
43 bool "Obsolete Options"
46 Prompt for obsolete options. These options are for old, unsupported
47 features and are likely to go away in the future.
50 bool "Developer Options"
53 Prompt for developer options. These options are only interesting for
54 libpayload developers.
58 menu "Architecture Options"
61 prompt "Target Architecture"
67 Support the x86 architecture
72 Support the PowerPC architecture
76 config MEMMAP_RAM_ONLY
77 bool "Only consider RAM entries in memory map for further processing"
81 bool "Multiboot header support"
82 depends on TARGET_I386
87 menu "Standard Libraries"
90 bool "Enable C library support"
94 bool "Build a curses library"
98 prompt "Curses implementation"
105 Tinycurses was the first curses implementation for libpayload.
106 It features low memory consumption, static allocation of larger
107 data structures (so few or no memory allocation calls) and a
114 libpayload's PDCurses port provides a full features curses
115 implementation, including libpanel, libmenu and libform (which
116 are taken from ncurses).
117 It requires more system resources, in particularily heap memory.
126 LAR is the archive format of (obsolete) coreboot v3
132 CBFS is the archive format of coreboot
138 LZMA decoder implementation, usable eg. by CBFS,
142 menu "Console Options"
144 config SERIAL_CONSOLE
145 bool "See output on the serial port console"
149 hex "I/O base for the serial port (default 0x3f8)"
150 depends on SERIAL_CONSOLE
153 config SERIAL_SET_SPEED
154 bool "Override the serial console baud rate"
156 depends on SERIAL_CONSOLE
158 config SERIAL_BAUD_RATE
159 int "Serial console baud rate (default 115200)"
160 depends on SERIAL_SET_SPEED
163 config SERIAL_ACS_FALLBACK
164 bool "Use plain ASCII characters for ACS"
166 depends on SERIAL_CONSOLE
168 The alternate character set (ACS) is used for drawing lines and
169 displaying a couple of other special graphics characters. The
170 ACS characters generally look good on screen, but can be difficult
171 to cut and paste from a terminal window to a text editor.
173 Say 'y' here if you want to always use plain ASCII characters to
174 approximate the appearance of ACS characters on the serial port
178 bool "See output on a video console"
181 config VGA_VIDEO_CONSOLE
182 bool "VGA video console driver"
183 depends on VIDEO_CONSOLE
186 config GEODELX_VIDEO_CONSOLE
187 bool "Geode LX video console driver"
188 depends on VIDEO_CONSOLE
191 config COREBOOT_VIDEO_CONSOLE
192 bool "coreboot video console driver"
193 depends on VIDEO_CONSOLE && !GEODELX_VIDEO_CONSOLE
196 Say Y here if coreboot switched to a graphics mode and
197 your payload wants to use it.
200 bool "Allow input from a PC keyboard"
203 config PC_KEYBOARD_LAYOUT_US
204 bool "English (US) keyboard layout"
205 depends on PC_KEYBOARD
208 config PC_KEYBOARD_LAYOUT_DE
209 bool "German keyboard layout"
210 depends on PC_KEYBOARD
218 bool "Support for PCI devices"
222 bool "Support for reading/writing NVRAM bytes"
225 config RTC_PORT_EXTENDED_VIA
226 bool "Extended RTC ports are 0x74/0x75"
229 For recent chipsets with 256 NVRAM bytes, you have to access the
230 upper 128 bytes (128-255) using two different I/O ports,
233 On some chipsets this can be a different set of ports, though.
234 The VIA VT8237R for example only recognizes the ports 0x74/0x75
235 for accessing the high 128 NVRAM bytes (as seems to be the case for
236 multiple VIA chipsets).
238 If you want to read or write CMOS bytes on computers with one of
239 these chipsets, say 'y' here.
242 bool "Support for PC speaker"
250 bool "Support for USB UHCI controllers"
253 Select this option if you are going to use USB 1.1 on an Intel based
257 bool "Support for USB OHCI controllers"
260 Select this option if you are going to use USB 1.1 on an AMD based
264 bool "Support for USB EHCI controllers"
267 Select this option if you want to use USB 2.0
270 bool "Support for USB xHCI controllers"
273 Select this option if you want to use USB 3.0
274 NOTE: This option is not (fully) implemented yet
277 bool "Support for USB keyboards"
281 Select this option if you want to use devices complying to the
282 USB HID (Human Interface Device) standard. Such devices are for
283 example keyboards and mice. Currently only keyboards are supported.
284 Say Y here unless you know exactly what you are doing.
287 bool "Support for USB hubs"
291 Select this option if you want to compile in support for USB hubs.
292 Say Y here unless you know exactly what you are doing.
295 bool "Support for USB storage"
299 Select this option if you want to compile in support for USB mass
300 storage devices (USB memory sticks, hard drives, CDROM/DVD drives)
301 Say Y here unless you know exactly what you are doing.
309 bool "Debug memory allocator"
313 Select this option if you want to debug the memory allocator. This
314 option logs all uses of the following functions:
316 void free(void *ptr);
317 void *malloc(size_t size);
318 void *calloc(size_t nmemb, size_t size);
319 void *realloc(void *ptr, size_t size);
320 void *memalign(size_t align, size_t size);
322 Say N here unless you are debugging memory allocator problems.