1## 2## This file is part of the libpayload project. 3## 4## Copyright (C) 2008 Advanced Micro Devices, Inc. 5## Copyright (C) 2008 coresystems GmbH 6## 7## Redistribution and use in source and binary forms, with or without 8## modification, are permitted provided that the following conditions 9## are met: 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. 17## 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 28## SUCH DAMAGE. 29## 30 31mainmenu "Libpayload Configuration" 32 33menu "Generic Options" 34 35config EXPERIMENTAL 36 bool "Experimental Options" 37 default n 38 help 39 Prompt for experimental functionality. Attention: This is not likely 40 to work without problems 41 42config OBSOLETE 43 bool "Obsolete Options" 44 default n 45 help 46 Prompt for obsolete options. These options are for old, unsupported 47 features and are likely to go away in the future. 48 49config DEVELOPER 50 bool "Developer Options" 51 default n 52 help 53 Prompt for developer options. These options are only interesting for 54 libpayload developers. 55 56endmenu 57 58menu "Architecture Options" 59 60choice 61 prompt "Target Architecture" 62 default TARGET_I386 63 64config TARGET_I386 65 bool "x86" 66 help 67 Support the x86 architecture 68 69config TARGET_POWERPC 70 bool "PowerPC" 71 help 72 Support the PowerPC architecture 73 74endchoice 75 76config MULTIBOOT 77 bool "Multiboot header support" 78 depends on TARGET_I386 79 default y 80 81endmenu 82 83menu "Standard Libraries" 84 85config LIBC 86 bool "Enable C library support" 87 default y 88 89config TINYCURSES 90 bool "Enable tinycurses support" 91 default y 92 93config LAR 94 bool "LAR support" 95 default n 96 depends on OBSOLETE 97 help 98 LAR is the archive format of (obsolete) coreboot v3 99 100config CBFS 101 bool "CBFS support" 102 default y 103 help 104 CBFS is the archive format of (obsolete) coreboot v3 105endmenu 106 107menu "Console Options" 108 109config SERIAL_CONSOLE 110 bool "See output on the serial port console" 111 default y 112 113config SERIAL_IOBASE 114 hex "I/O base for the serial port (default 0x3f8)" 115 depends on SERIAL_CONSOLE 116 default 0x3f8 117 118config SERIAL_SET_SPEED 119 bool "Override the serial console baud rate" 120 default n 121 depends on SERIAL_CONSOLE 122 123config SERIAL_BAUD_RATE 124 int "Serial console baud rate (default 115200)" 125 depends on SERIAL_SET_SPEED 126 default 115200 127 128config SERIAL_ACS_FALLBACK 129 bool "Use plain ASCII characters for ACS" 130 default n 131 depends on SERIAL_CONSOLE 132 help 133 The alternate character set (ACS) is used for drawing lines and 134 displaying a couple of other special graphics characters. The 135 ACS characters generally look good on screen, but can be difficult 136 to cut and paste from a terminal window to a text editor. 137 138 Say 'y' here if you want to always use plain ASCII characters to 139 approximate the appearance of ACS characters on the serial port 140 console. 141 142config VIDEO_CONSOLE 143 bool "See output on a video console" 144 default y 145 146config VGA_VIDEO_CONSOLE 147 bool "VGA video console driver" 148 depends on VIDEO_CONSOLE 149 default y 150 151config GEODELX_VIDEO_CONSOLE 152 bool "Geode LX video console driver" 153 depends on VIDEO_CONSOLE 154 default n 155 156config COREBOOT_VIDEO_CONSOLE 157 bool "coreboot video console driver" 158 depends on VIDEO_CONSOLE && !GEODELX_VIDEO_CONSOLE 159 default n 160 help 161 Say Y here if coreboot switched to a graphics mode and 162 your payload wants to use it. 163 164config PC_KEYBOARD 165 bool "Allow input from a PC keyboard" 166 default y 167 168config PC_KEYBOARD_LAYOUT_US 169 bool "English (US) keyboard layout" 170 depends on PC_KEYBOARD 171 default y 172 173config PC_KEYBOARD_LAYOUT_DE 174 bool "German keyboard layout" 175 depends on PC_KEYBOARD 176 default n 177 178endmenu 179 180menu "Drivers" 181 182config PCI 183 bool "Support for PCI devices" 184 default y 185 186config NVRAM 187 bool "Support for reading/writing NVRAM bytes" 188 default y 189 190config RTC_PORT_EXTENDED_VIA 191 bool "Extended RTC ports are 0x74/0x75" 192 default n 193 help 194 For recent chipsets with 256 NVRAM bytes, you have to access the 195 upper 128 bytes (128-255) using two different I/O ports, 196 usually 0x72/0x73. 197 198 On some chipsets this can be a different set of ports, though. 199 The VIA VT8237R for example only recognizes the ports 0x74/0x75 200 for accessing the high 128 NVRAM bytes (as seems to be the case for 201 multiple VIA chipsets). 202 203 If you want to read or write CMOS bytes on computers with one of 204 these chipsets, say 'y' here. 205 206config SPEAKER 207 bool "Support for PC speaker" 208 default y 209 210config USB 211 bool "USB Support" 212 default n 213 214config USB_UHCI 215 bool "Support for USB UHCI controllers" 216 depends on USB 217 help 218 Select this option if you are going to use USB 1.1 on an Intel based 219 system. 220 221config USB_OHCI 222 bool "Support for USB OHCI controllers" 223 depends on USB 224 help 225 Select this option if you are going to use USB 1.1 on an AMD based 226 system. 227 228config USB_EHCI 229 bool "Support for USB EHCI controllers" 230 depends on USB 231 help 232 Select this option if you want to use USB 2.0 233 234config USB_XHCI 235 bool "Support for USB xHCI controllers" 236 depends on USB 237 help 238 Select this option if you want to use USB 3.0 239 NOTE: This option is not (fully) implemented yet 240 241config USB_HID 242 bool "Support for USB keyboards" 243 depends on USB 244 default y 245 help 246 Select this option if you want to use devices complying to the 247 USB HID (Human Interface Device) standard. Such devices are for 248 example keyboards and mice. Currently only keyboards are supported. 249 Say Y here unless you know exactly what you are doing. 250 251config USB_HUB 252 bool "Support for USB hubs" 253 depends on USB 254 default y 255 help 256 Select this option if you want to compile in support for USB hubs. 257 Say Y here unless you know exactly what you are doing. 258 259config USB_MSC 260 bool "Support for USB storage" 261 depends on USB 262 default y 263 help 264 Select this option if you want to compile in support for USB mass 265 storage devices (USB memory sticks, hard drives, CDROM/DVD drives) 266 Say Y here unless you know exactly what you are doing. 267 268endmenu 269 270menu "Debugging" 271 depends on DEVELOPER 272 273config DEBUG_MALLOC 274 bool "Debug memory allocator" 275 depends on USB 276 default n 277 help 278 Select this option if you want to debug the memory allocator. This 279 option logs all uses of the following functions: 280 281 void free(void *ptr); 282 void *malloc(size_t size); 283 void *calloc(size_t nmemb, size_t size); 284 void *realloc(void *ptr, size_t size); 285 void *memalign(size_t align, size_t size); 286 287 Say N here unless you are debugging memory allocator problems. 288 289endmenu 290 291

