Kevin O'Connor | 713be89 | 2011-01-26 21:19:25 -0500 | [diff] [blame] | 1 | # Kconfig SeaBIOS configuration |
| 2 | |
| 3 | mainmenu "SeaBIOS Configuration" |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 4 | |
| 5 | menu "General Features" |
| 6 | |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 7 | choice |
| 8 | prompt "Build Target" |
| 9 | default QEMU |
| 10 | |
Kevin O'Connor | 713be89 | 2011-01-26 21:19:25 -0500 | [diff] [blame] | 11 | config COREBOOT |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 12 | bool "Build for coreboot" |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 13 | help |
| 14 | Configure as a coreboot payload. |
| 15 | |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 16 | config QEMU |
Kevin O'Connor | 02313b2 | 2013-02-07 22:42:25 -0500 | [diff] [blame] | 17 | bool "Build for QEMU/Xen/KVM/Bochs" |
| 18 | select QEMU_HARDWARE |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 19 | help |
Kevin O'Connor | 02313b2 | 2013-02-07 22:42:25 -0500 | [diff] [blame] | 20 | Configure for an emulated machine (QEMU, Xen, KVM, or Bochs). |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 21 | |
David Woodhouse | 118469a | 2013-01-25 19:46:25 -0600 | [diff] [blame] | 22 | config CSM |
Stefan Weil | 6bcacf7 | 2015-10-02 08:46:40 +0200 | [diff] [blame] | 23 | bool "Build as Compatibility Support Module for EFI BIOS" |
David Woodhouse | 118469a | 2013-01-25 19:46:25 -0600 | [diff] [blame] | 24 | help |
| 25 | Configure to be used by EFI firmware as Compatibility Support |
| 26 | module (CSM) to provide legacy BIOS services. |
| 27 | |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 28 | endchoice |
| 29 | |
Kevin O'Connor | 02313b2 | 2013-02-07 22:42:25 -0500 | [diff] [blame] | 30 | config QEMU_HARDWARE |
| 31 | bool "Support hardware found on emulators (QEMU/Xen/KVM/Bochs)" if !QEMU |
| 32 | default n |
| 33 | help |
| 34 | Support virtual hardware when the code detects it is |
| 35 | running on an emulator. |
| 36 | |
Ian Campbell | 74c7878 | 2011-06-01 11:00:29 +0100 | [diff] [blame] | 37 | config XEN |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 38 | depends on QEMU |
Kevin O'Connor | 02313b2 | 2013-02-07 22:42:25 -0500 | [diff] [blame] | 39 | bool "Support Xen HVM" |
Ian Campbell | 9264a2c | 2012-06-28 11:08:31 +0100 | [diff] [blame] | 40 | default y |
Ian Campbell | 74c7878 | 2011-06-01 11:00:29 +0100 | [diff] [blame] | 41 | help |
| 42 | Configure to be used by xen hvmloader, for a HVM guest. |
| 43 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 44 | config THREADS |
| 45 | bool "Parallelize hardware init" |
| 46 | default y |
| 47 | help |
| 48 | Support running hardware initialization in parallel. |
Kevin O'Connor | f31171c | 2011-05-07 13:57:42 -0400 | [diff] [blame] | 49 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 50 | config RELOCATE_INIT |
| 51 | bool "Copy init code to high memory" |
| 52 | default y |
| 53 | help |
| 54 | Support relocating the one time initialization code to high memory. |
| 55 | |
| 56 | config BOOTMENU |
| 57 | depends on BOOT |
| 58 | bool "Bootmenu" |
| 59 | default y |
| 60 | help |
| 61 | Support an interactive boot menu at end of post. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 62 | config BOOTSPLASH |
| 63 | depends on BOOTMENU |
| 64 | bool "Graphical boot splash screen" |
| 65 | default y |
| 66 | help |
| 67 | Support showing a graphical boot splash screen. |
Kevin O'Connor | 49bf57b | 2011-05-10 22:08:30 -0400 | [diff] [blame] | 68 | config BOOTORDER |
| 69 | depends on BOOT |
| 70 | bool "Boot ordering" |
| 71 | default y |
| 72 | help |
| 73 | Support controlling of the boot order via the fw_cfg/CBFS |
| 74 | "bootorder" file. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 75 | |
| 76 | config COREBOOT_FLASH |
| 77 | depends on COREBOOT |
| 78 | bool "coreboot CBFS support" |
| 79 | default y |
| 80 | help |
| 81 | Support searching coreboot flash format. |
| 82 | config LZMA |
| 83 | depends on COREBOOT_FLASH |
| 84 | bool "CBFS lzma support" |
| 85 | default y |
| 86 | help |
| 87 | Support CBFS files compressed using the lzma decompression |
Kevin O'Connor | 406df19 | 2014-01-17 20:21:20 -0500 | [diff] [blame] | 88 | algorithm. |
| 89 | config CBFS_LOCATION |
| 90 | depends on COREBOOT_FLASH |
| 91 | hex "CBFS memory end location" |
| 92 | default 0 |
| 93 | help |
| 94 | Memory address of where the CBFS data ends. This should |
| 95 | be zero for normal builds. It may be a non-zero value if |
| 96 | the CBFS filesystem is at a non-standard location (eg, |
| 97 | 0xffe00000 if CBFS ends 2Meg below the end of flash). |
| 98 | |
Vladimir Serbinenko | 1b911d7 | 2015-05-18 19:07:16 +0200 | [diff] [blame] | 99 | config MULTIBOOT |
| 100 | depends on COREBOOT |
| 101 | bool "multiboot support" |
| 102 | default y |
| 103 | help |
| 104 | Add multiboot header in bios.bin.raw and accept files supplied |
| 105 | as multiboot modules. |
Kevin O'Connor | f0d75a0 | 2013-03-02 18:14:35 -0500 | [diff] [blame] | 106 | config ENTRY_EXTRASTACK |
| 107 | bool "Use internal stack for 16bit interrupt entry points" |
| 108 | default y |
| 109 | help |
| 110 | Utilize an internal stack for all the legacy 16bit |
| 111 | interrupt entry points. This reduces the amount of space |
| 112 | on the caller's stack that SeaBIOS uses. This may |
| 113 | adversely impact any legacy operating systems that call |
| 114 | the BIOS in 16bit protected mode. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 115 | |
Kevin O'Connor | 2b0fb8c | 2013-08-07 23:03:47 -0400 | [diff] [blame] | 116 | config MALLOC_UPPERMEMORY |
| 117 | bool "Allocate memory that needs to be in first Meg above 0xc0000" |
| 118 | default y |
| 119 | help |
| 120 | Use the "Upper Memory Block" area (0xc0000-0xf0000) for |
| 121 | internal "low memory" allocations. If this is not |
| 122 | selected, the memory is instead allocated from the |
| 123 | "9-segment" (0x90000-0xa0000). |
| 124 | |
Gerd Hoffmann | 85f8fac | 2013-09-24 10:06:16 +0200 | [diff] [blame] | 125 | config ROM_SIZE |
| 126 | int "ROM size (in KB)" |
| 127 | default 0 |
| 128 | help |
| 129 | Set the ROM size. Say '0' here to make seabios figure the |
| 130 | needed size automatically. |
| 131 | |
| 132 | Currently SeaBIOS will easily fit into 256 KB. To make it fit |
| 133 | it into 128 KB (which was big enouth for a long time) you'll |
| 134 | probably have to disable some featues such as xhci support. |
| 135 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 136 | endmenu |
| 137 | |
| 138 | menu "Hardware support" |
| 139 | config ATA |
| 140 | depends on DRIVES |
| 141 | bool "ATA controllers" |
| 142 | default y |
| 143 | help |
| 144 | Support for IDE disk code. |
| 145 | config ATA_DMA |
| 146 | depends on ATA |
| 147 | bool "ATA DMA" |
| 148 | default n |
| 149 | help |
| 150 | Detect and try to use ATA bus mastering DMA controllers. |
| 151 | config ATA_PIO32 |
| 152 | depends on ATA |
| 153 | bool "ATA 32bit PIO" |
| 154 | default n |
| 155 | help |
| 156 | Use 32bit PIO accesses on ATA (minor optimization on PCI transfers). |
| 157 | config AHCI |
| 158 | depends on DRIVES |
| 159 | bool "AHCI controllers" |
Gerd Hoffmann | ceb8ed4 | 2011-08-04 20:42:16 +0200 | [diff] [blame] | 160 | default y |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 161 | help |
| 162 | Support for AHCI disk code. |
Kevin O'Connor | 72691a5 | 2014-12-16 09:55:16 -0500 | [diff] [blame] | 163 | config SDCARD |
Kevin O'Connor | 4c90495 | 2015-08-10 15:41:03 -0400 | [diff] [blame] | 164 | depends on DRIVES |
Kevin O'Connor | 72691a5 | 2014-12-16 09:55:16 -0500 | [diff] [blame] | 165 | bool "SD controllers" |
| 166 | default y |
| 167 | help |
| 168 | Support for SD cards on PCI host controllers. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 169 | config VIRTIO_BLK |
Kevin O'Connor | 897fb11 | 2013-02-07 23:32:48 -0500 | [diff] [blame] | 170 | depends on DRIVES && QEMU_HARDWARE |
Paolo Bonzini | 0e7fb5f | 2011-11-16 13:02:55 +0100 | [diff] [blame] | 171 | bool "virtio-blk controllers" |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 172 | default y |
| 173 | help |
Paolo Bonzini | 0e7fb5f | 2011-11-16 13:02:55 +0100 | [diff] [blame] | 174 | Support boot from virtio-blk storage. |
Paolo Bonzini | c5c488f | 2012-02-27 17:22:23 +0100 | [diff] [blame] | 175 | config VIRTIO_SCSI |
Kevin O'Connor | 897fb11 | 2013-02-07 23:32:48 -0500 | [diff] [blame] | 176 | depends on DRIVES && QEMU_HARDWARE |
Paolo Bonzini | c5c488f | 2012-02-27 17:22:23 +0100 | [diff] [blame] | 177 | bool "virtio-scsi controllers" |
| 178 | default y |
| 179 | help |
| 180 | Support boot from virtio-scsi storage. |
Evgeny Budilovsky | 83d60b3 | 2013-10-14 18:03:36 +0300 | [diff] [blame] | 181 | config PVSCSI |
| 182 | depends on DRIVES && QEMU_HARDWARE |
| 183 | bool "PVSCSI controllers" |
| 184 | default y |
| 185 | help |
| 186 | Support boot from Paravirtualized SCSI storage. This kind of storage |
| 187 | is mainly supported by VMware ESX hypervisor. It is commonly used |
| 188 | to allow fast storage access by communicating directly with the |
| 189 | underlying hypervisor. Enabling this type of boot will allow |
| 190 | booting directly from images imported from an ESX platform, |
| 191 | without the need to use slower emulation of storage controllers |
| 192 | such as IDE. |
Paolo Bonzini | 7a39e72 | 2012-08-06 13:15:06 +0200 | [diff] [blame] | 193 | config ESP_SCSI |
Kevin O'Connor | 897fb11 | 2013-02-07 23:32:48 -0500 | [diff] [blame] | 194 | depends on DRIVES && QEMU_HARDWARE |
Paolo Bonzini | 7a39e72 | 2012-08-06 13:15:06 +0200 | [diff] [blame] | 195 | bool "AMD PCscsi controllers" |
| 196 | default y |
| 197 | help |
| 198 | Support boot from AMD PCscsi storage. |
Gerd Hoffmann | 9d6bac1 | 2012-07-20 10:59:25 +0200 | [diff] [blame] | 199 | config LSI_SCSI |
Kevin O'Connor | 897fb11 | 2013-02-07 23:32:48 -0500 | [diff] [blame] | 200 | depends on DRIVES && QEMU_HARDWARE |
Gerd Hoffmann | 9d6bac1 | 2012-07-20 10:59:25 +0200 | [diff] [blame] | 201 | bool "lsi53c895a scsi controllers" |
| 202 | default y |
| 203 | help |
| 204 | Support boot from qemu-emulated lsi53c895a scsi storage. |
Hannes Reinecke | 2df70bf | 2012-11-13 15:03:31 +0100 | [diff] [blame] | 205 | config MEGASAS |
| 206 | depends on DRIVES |
| 207 | bool "LSI MegaRAID SAS controllers" |
| 208 | default y |
| 209 | help |
| 210 | Support boot from LSI MegaRAID SAS scsi storage. |
Don Slutz | f2645a8 | 2016-03-25 17:04:31 +0100 | [diff] [blame] | 211 | config MPT_SCSI |
| 212 | depends on DRIVES && QEMU_HARDWARE |
| 213 | bool "LSI MPT Fusion controllers" |
| 214 | default y |
| 215 | help |
| 216 | Support boot from LSI MPT Fusion scsi storage. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 217 | config FLOPPY |
Kevin O'Connor | bd5f6c7 | 2015-08-10 16:14:48 -0400 | [diff] [blame] | 218 | depends on DRIVES && HARDWARE_IRQ |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 219 | bool "Floppy controller" |
| 220 | default y |
| 221 | help |
| 222 | Support floppy drive access. |
Kevin O'Connor | 7dbadfc | 2015-07-23 09:19:23 -0400 | [diff] [blame] | 223 | config FLASH_FLOPPY |
| 224 | depends on DRIVES |
| 225 | bool "Floppy images from CBFS or fw_cfg" |
| 226 | default y |
| 227 | help |
| 228 | Support floppy images stored in coreboot flash or from |
| 229 | QEMU fw_cfg. |
Julian Stecklina | c83e15b | 2017-02-13 10:03:59 +0100 | [diff] [blame] | 230 | config NVME |
Kevin O'Connor | 235a819 | 2017-05-10 16:14:39 -0400 | [diff] [blame] | 231 | depends on DRIVES |
Julian Stecklina | c83e15b | 2017-02-13 10:03:59 +0100 | [diff] [blame] | 232 | bool "NVMe controllers" |
| 233 | default y |
| 234 | help |
| 235 | Support for NVMe disk code. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 236 | |
| 237 | config PS2PORT |
| 238 | depends on KEYBOARD || MOUSE |
| 239 | bool "PS/2 port" |
| 240 | default y |
| 241 | help |
| 242 | Support PS2 ports (keyboard and mouse). |
| 243 | |
| 244 | config USB |
| 245 | bool "USB" |
| 246 | default y |
| 247 | help |
| 248 | Support USB devices. |
| 249 | config USB_UHCI |
| 250 | depends on USB |
| 251 | bool "USB UHCI controllers" |
| 252 | default y |
| 253 | help |
| 254 | Support USB UHCI controllers. |
| 255 | config USB_OHCI |
| 256 | depends on USB |
| 257 | bool "USB OHCI controllers" |
| 258 | default y |
| 259 | help |
| 260 | Support USB OHCI controllers. |
| 261 | config USB_EHCI |
| 262 | depends on USB |
| 263 | bool "USB EHCI controllers" |
| 264 | default y |
| 265 | help |
| 266 | Support USB EHCI controllers. |
Gerd Hoffmann | e144bb7 | 2013-06-03 16:30:18 +0200 | [diff] [blame] | 267 | config USB_XHCI |
Kevin O'Connor | e3b9cad | 2013-12-27 21:57:14 -0500 | [diff] [blame] | 268 | depends on USB |
Gerd Hoffmann | e144bb7 | 2013-06-03 16:30:18 +0200 | [diff] [blame] | 269 | bool "USB XHCI controllers" |
| 270 | default y |
| 271 | help |
| 272 | Support USB XHCI controllers. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 273 | config USB_MSC |
| 274 | depends on USB && DRIVES |
| 275 | bool "USB drives" |
| 276 | default y |
| 277 | help |
Gerd Hoffmann | e53e30d | 2012-07-20 10:59:24 +0200 | [diff] [blame] | 278 | Support USB BOT (bulk-only transport) disks. |
| 279 | config USB_UAS |
| 280 | depends on USB && DRIVES |
| 281 | bool "UAS drives" |
| 282 | default y |
| 283 | help |
| 284 | Support USB UAS (usb attached scsi) disks. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 285 | config USB_HUB |
| 286 | depends on USB |
| 287 | bool "USB hubs" |
| 288 | default y |
| 289 | help |
| 290 | Support USB hubs. |
| 291 | config USB_KEYBOARD |
| 292 | depends on USB && KEYBOARD |
| 293 | bool "USB keyboards" |
| 294 | default y |
| 295 | help |
| 296 | Support USB keyboards. |
| 297 | config USB_MOUSE |
| 298 | depends on USB && MOUSE |
| 299 | bool "USB mice" |
| 300 | default y |
| 301 | help |
| 302 | Support USB mice. |
| 303 | |
| 304 | config SERIAL |
| 305 | bool "Serial port" |
| 306 | default y |
| 307 | help |
| 308 | Support serial ports. This also enables int 14 serial port calls. |
Gerd Hoffmann | d6728f3 | 2017-09-18 10:47:23 +0200 | [diff] [blame] | 309 | config SERCON |
| 310 | bool "Serial console" |
| 311 | default y |
| 312 | help |
| 313 | Support redirecting vga output to the serial console. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 314 | config LPT |
| 315 | bool "Parallel port" |
| 316 | default y |
| 317 | help |
| 318 | Support parallel ports. This also enables int 17 parallel port calls. |
Kevin O'Connor | bc46ebe | 2015-08-13 11:43:27 -0400 | [diff] [blame] | 319 | config RTC_TIMER |
| 320 | bool "Real Time Clock (RTC) scheduling" |
Kevin O'Connor | bd5f6c7 | 2015-08-10 16:14:48 -0400 | [diff] [blame] | 321 | depends on HARDWARE_IRQ |
Kevin O'Connor | bc46ebe | 2015-08-13 11:43:27 -0400 | [diff] [blame] | 322 | default y |
| 323 | help |
| 324 | Support MC146818 Real Time Clock chip timer |
| 325 | interrupts. This also enables int 1583 and int 1586 calls. |
| 326 | |
| 327 | Disabling this support does not disable access to the RTC |
| 328 | cmos registers. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 329 | |
Kevin O'Connor | bd5f6c7 | 2015-08-10 16:14:48 -0400 | [diff] [blame] | 330 | config HARDWARE_IRQ |
| 331 | bool "Hardware interrupts" |
| 332 | default y |
| 333 | help |
| 334 | Program and support hardware interrupts using the i8259 |
| 335 | programmable interrupt controller (PIC). This option must |
| 336 | be enabled in order to support most boot loaders. Only |
| 337 | disable this option if running on peculiar hardware known |
| 338 | not to support irq routing. |
| 339 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 340 | config USE_SMM |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 341 | depends on QEMU |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 342 | bool "System Management Mode (SMM)" |
| 343 | default y |
| 344 | help |
| 345 | Support System Management Mode (on emulators). |
Kevin O'Connor | 55215cd | 2014-04-11 11:20:41 -0400 | [diff] [blame] | 346 | config CALL32_SMM |
| 347 | bool |
| 348 | depends on USE_SMM |
| 349 | default y |
Kevin O'Connor | 424f217 | 2011-03-06 19:06:48 -0500 | [diff] [blame] | 350 | config MTRR_INIT |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 351 | depends on QEMU |
Kevin O'Connor | 424f217 | 2011-03-06 19:06:48 -0500 | [diff] [blame] | 352 | bool "Initialize MTRRs" |
| 353 | default y |
| 354 | help |
| 355 | Initialize the Memory Type Range Registers (on emulators). |
Gerd Hoffmann | 455a7c8 | 2012-09-06 08:01:00 +0200 | [diff] [blame] | 356 | config PMTIMER |
Kevin O'Connor | 4ec872a | 2015-07-23 08:36:01 -0400 | [diff] [blame] | 357 | bool "Support ACPI timer" |
Gerd Hoffmann | 455a7c8 | 2012-09-06 08:01:00 +0200 | [diff] [blame] | 358 | default y |
| 359 | help |
Kevin O'Connor | 4ec872a | 2015-07-23 08:36:01 -0400 | [diff] [blame] | 360 | Detect and use the ACPI timer for timekeeping. |
| 361 | config TSC_TIMER |
| 362 | bool "Support CPU timestamp counter as timer" |
| 363 | default y |
| 364 | help |
| 365 | Support for using the CPU timestamp counter as an internal |
| 366 | timing source. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 367 | endmenu |
| 368 | |
| 369 | menu "BIOS interfaces" |
| 370 | config DRIVES |
| 371 | bool "Drive interface" |
| 372 | default y |
| 373 | help |
| 374 | Support int13 disk/floppy drive functions. |
| 375 | |
| 376 | config CDROM_BOOT |
| 377 | depends on DRIVES |
| 378 | bool "DVD/CDROM booting" |
| 379 | default y |
| 380 | help |
| 381 | Support for booting from a CD. (El Torito spec support.) |
| 382 | config CDROM_EMU |
| 383 | depends on CDROM_BOOT |
| 384 | bool "DVD/CDROM boot drive emulation" |
| 385 | default y |
| 386 | help |
| 387 | Support bootable CDROMs that emulate a floppy/harddrive. |
| 388 | |
| 389 | config PCIBIOS |
| 390 | bool "PCIBIOS interface" |
| 391 | default y |
| 392 | help |
| 393 | Support int 1a/b1 PCI BIOS calls. |
| 394 | config APMBIOS |
| 395 | bool "APM interface" |
| 396 | default y |
| 397 | help |
| 398 | Support int 15/53 APM BIOS calls. |
| 399 | config PNPBIOS |
| 400 | bool "PnP BIOS interface" |
| 401 | default y |
| 402 | help |
| 403 | Support PnP BIOS entry point. |
| 404 | config OPTIONROMS |
| 405 | bool "Option ROMS" |
| 406 | default y |
| 407 | help |
| 408 | Support finding and running option roms during POST. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 409 | config PMM |
| 410 | depends on OPTIONROMS |
| 411 | bool "PMM interface" |
| 412 | default y |
| 413 | help |
| 414 | Support Post Memory Manager (PMM) entry point. |
| 415 | config BOOT |
| 416 | bool "Boot interface" |
| 417 | default y |
| 418 | help |
| 419 | Support int 19/18 system bootup support. |
| 420 | config KEYBOARD |
| 421 | bool "Keyboard interface" |
| 422 | default y |
| 423 | help |
| 424 | Support int 16 keyboard calls. |
| 425 | config KBD_CALL_INT15_4F |
| 426 | depends on KEYBOARD |
| 427 | bool "Keyboard hook interface" |
| 428 | default y |
| 429 | help |
| 430 | Support calling int155f on each keyboard event. |
| 431 | config MOUSE |
| 432 | bool "Mouse interface" |
| 433 | default y |
| 434 | help |
| 435 | Support for int15c2 mouse calls. |
| 436 | |
| 437 | config S3_RESUME |
| 438 | bool "S3 resume" |
| 439 | default y |
| 440 | help |
| 441 | Support S3 resume handler. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 442 | |
Kevin O'Connor | 713be89 | 2011-01-26 21:19:25 -0500 | [diff] [blame] | 443 | config VGAHOOKS |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 444 | bool "Hardware specific VGA helpers" |
| 445 | default y |
| 446 | help |
| 447 | Support int 155f BIOS callbacks specific to some Intel and |
| 448 | VIA on-board vga devices. |
| 449 | |
| 450 | config DISABLE_A20 |
| 451 | bool "Disable A20" |
| 452 | default n |
| 453 | help |
| 454 | Disable A20 on 16bit boot. |
Kevin O'Connor | c98424c | 2013-07-21 16:38:18 -0400 | [diff] [blame] | 455 | |
| 456 | config WRITABLE_UPPERMEMORY |
| 457 | depends on QEMU |
| 458 | bool "Make unused UMB memory read/writeable." |
| 459 | default n |
| 460 | help |
| 461 | When selected, the "Upper Memory Block" area |
| 462 | (0x90000-0xa0000) that is not used for option roms will be |
| 463 | made writable. This allows the ram to be directly |
| 464 | modified by programs. However, some old DOS high memory |
| 465 | managers may require the UMB region to be read-only. |
| 466 | |
Stefan Berger | b310dfa | 2015-03-23 14:22:16 -0400 | [diff] [blame] | 467 | config TCGBIOS |
| 468 | depends on S3_RESUME |
| 469 | bool "TPM support and TCG BIOS extensions" |
| 470 | default y |
| 471 | help |
| 472 | Provide TPM support along with TCG BIOS extensions |
| 473 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 474 | endmenu |
| 475 | |
| 476 | menu "BIOS Tables" |
Gerd Hoffmann | 9600c80 | 2012-10-29 11:28:32 +0100 | [diff] [blame] | 477 | depends on QEMU |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 478 | config PIRTABLE |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 479 | bool "PIR table" |
| 480 | default y |
| 481 | help |
| 482 | Support generation of a PIR table in 0xf000 segment. |
| 483 | config MPTABLE |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 484 | bool "MPTable" |
| 485 | default y |
| 486 | help |
| 487 | Support generation of MPTable. |
| 488 | config SMBIOS |
| 489 | bool "SMBIOS" |
| 490 | default y |
| 491 | help |
| 492 | Support generation of SM BIOS tables. This is also |
| 493 | sometimes called DMI. |
| 494 | config ACPI |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 495 | bool "ACPI" |
| 496 | default y |
| 497 | help |
| 498 | Support generation of ACPI tables. |
Michael S. Tsirkin | 5aef563 | 2013-03-18 15:18:25 +0200 | [diff] [blame] | 499 | config ACPI_DSDT |
| 500 | bool "Include default ACPI DSDT" |
| 501 | default y |
| 502 | depends on ACPI |
| 503 | help |
| 504 | Include default DSDT ACPI table in BIOS. |
| 505 | Required for QEMU 1.3 and older. |
| 506 | This option can be disabled for QEMU 1.4 and newer |
| 507 | to save some space in the ROM file. |
| 508 | If unsure, say Y. |
Michael S. Tsirkin | 1194874 | 2013-10-03 16:30:41 +0300 | [diff] [blame] | 509 | config FW_ROMFILE_LOAD |
| 510 | bool "Load BIOS tables from ROM files" |
| 511 | depends on QEMU_HARDWARE |
| 512 | default y |
| 513 | help |
| 514 | Support loading BIOS firmware tables from ROM files. |
| 515 | At the moment, only ACPI tables can be loaded in this way. |
| 516 | Required for QEMU 1.7 and newer. |
| 517 | This option can be disabled for QEMU 1.6 and older |
| 518 | to save some space in the ROM file. |
| 519 | If unsure, say Y. |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 520 | endmenu |
| 521 | |
Kevin O'Connor | 2321912 | 2013-02-17 10:56:10 -0500 | [diff] [blame] | 522 | source vgasrc/Kconfig |
Julian Pidancet | da08a6d | 2011-12-19 05:07:56 +0000 | [diff] [blame] | 523 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 524 | menu "Debugging" |
| 525 | config DEBUG_LEVEL |
| 526 | int "Debug level" |
| 527 | default 1 |
| 528 | help |
| 529 | Control how verbose debug output is. The higher the |
| 530 | number, the more verbose SeaBIOS will be. |
| 531 | |
| 532 | Set to zero to disable debugging. |
| 533 | |
| 534 | config DEBUG_SERIAL |
| 535 | depends on DEBUG_LEVEL != 0 |
| 536 | bool "Serial port debugging" |
| 537 | default n |
| 538 | help |
| 539 | Send debugging information to serial port. |
Kevin O'Connor | d12e8a2 | 2011-05-10 23:36:11 -0400 | [diff] [blame] | 540 | config DEBUG_SERIAL_PORT |
| 541 | depends on DEBUG_SERIAL |
| 542 | hex "Serial port base address" |
| 543 | default 0x3f8 |
| 544 | help |
| 545 | Base port for serial - generally 0x3f8, 0x2f8, 0x3e8, or 0x2e8. |
Ricardo Ribalda Delgado | 9332965 | 2016-12-20 19:03:58 +0100 | [diff] [blame] | 546 | config DEBUG_SERIAL_MMIO |
| 547 | depends on DEBUG_LEVEL != 0 && !DEBUG_SERIAL |
| 548 | bool "Serial port debugging via memory mapped IO" |
| 549 | default n |
| 550 | help |
| 551 | Send debugging information to serial port mapped in memory. |
| 552 | config DEBUG_SERIAL_MEM_ADDRESS |
| 553 | depends on DEBUG_SERIAL_MMIO |
| 554 | hex "Serial port memory mapped IO address" |
| 555 | help |
| 556 | On some chipsets the serial port is memory mapped, in those cases |
| 557 | provide the 32 bit address. E.g. 0xFEDC6000 for the AMD Kern |
| 558 | (a.k.a Hudson UART). |
Julian Pidancet | 7123d98 | 2012-02-01 16:03:24 +0000 | [diff] [blame] | 559 | |
| 560 | config DEBUG_IO |
Gerd Hoffmann | 2ca73ed | 2013-06-05 09:37:24 +0200 | [diff] [blame] | 561 | depends on QEMU_HARDWARE && DEBUG_LEVEL != 0 |
Julian Pidancet | 7123d98 | 2012-02-01 16:03:24 +0000 | [diff] [blame] | 562 | bool "Special IO port debugging" |
| 563 | default y |
| 564 | help |
| 565 | Some emulators or hypervisors provide with a way to output debug |
| 566 | information by outputing strings in a special port present in the |
| 567 | IO space. |
| 568 | |
Gerd Hoffmann | c83e7c2 | 2013-06-25 15:45:30 +0200 | [diff] [blame] | 569 | config DEBUG_COREBOOT |
| 570 | depends on COREBOOT && DEBUG_LEVEL != 0 |
| 571 | bool "coreboot cbmem debug logging" |
| 572 | default y |
| 573 | help |
| 574 | Send debugging information to the coreboot cbmem console buffer. |
| 575 | Needs CONFIG_CONSOLE_CBMEM in coreboot. You can read the log |
| 576 | after boot using 'cbmem -c'. Only 32bit code (basically every- |
| 577 | thing before booting the OS) writes to the log buffer. |
| 578 | |
Kevin O'Connor | 1efb10b | 2011-01-29 10:57:20 -0500 | [diff] [blame] | 579 | endmenu |