1 # Kconfig SeaBIOS configuration
3 mainmenu "SeaBIOS Configuration"
5 menu "General Features"
8 bool "Build for coreboot"
11 Configure as a coreboot payload.
14 bool "Parallelize hardware init"
17 Support running hardware initialization in parallel.
18 config THREAD_OPTIONROMS
20 bool "Hardware init during option ROM execution"
23 Allow hardware init to run in parallel with optionrom execution.
25 This can reduce boot time, but can cause some timing
26 variations during option ROM code execution. It is not
27 known if all option ROMs will behave properly with this
31 bool "Copy init code to high memory"
34 Support relocating the one time initialization code to high memory.
41 Support an interactive boot menu at end of post.
47 Amount of time (in ms) to wait at menu before selecting normal boot.
50 bool "Graphical boot splash screen"
53 Support showing a graphical boot splash screen.
59 Support controlling of the boot order via the fw_cfg/CBFS
64 bool "coreboot CBFS support"
67 Support searching coreboot flash format.
69 depends on COREBOOT_FLASH
70 bool "CBFS lzma support"
73 Support CBFS files compressed using the lzma decompression
76 depends on COREBOOT_FLASH
77 bool "Floppy images in CBFS"
80 Support floppy images in coreboot flash.
84 menu "Hardware support"
87 bool "ATA controllers"
90 Support for IDE disk code.
96 Detect and try to use ATA bus mastering DMA controllers.
102 Use 32bit PIO accesses on ATA (minor optimization on PCI transfers).
105 bool "AHCI controllers"
108 Support for AHCI disk code.
110 depends on DRIVES && !COREBOOT
111 bool "VirtIO controllers"
114 Support boot from virtio storage.
117 bool "Floppy controller"
120 Support floppy drive access.
123 depends on KEYBOARD || MOUSE
127 Support PS2 ports (keyboard and mouse).
136 bool "USB UHCI controllers"
139 Support USB UHCI controllers.
142 bool "USB OHCI controllers"
145 Support USB OHCI controllers.
148 bool "USB EHCI controllers"
151 Support USB EHCI controllers.
153 depends on USB && DRIVES
165 depends on USB && KEYBOARD
169 Support USB keyboards.
171 depends on USB && MOUSE
181 Support serial ports. This also enables int 14 serial port calls.
186 Support parallel ports. This also enables int 17 parallel port calls.
188 config EXTRA_PCI_ROOTS
189 bool "Extra root buses"
192 If the target machine has multiple independent root buses,
193 the extra buses may be specified here.
195 depends on EXTRA_PCI_ROOTS
196 hex "Extra primary PCI root bus number"
199 depends on EXTRA_PCI_ROOTS
200 hex "Extra secondary PCI root bus number"
205 bool "System Management Mode (SMM)"
208 Support System Management Mode (on emulators).
211 bool "Initialize MTRRs"
214 Initialize the Memory Type Range Registers (on emulators).
217 menu "BIOS interfaces"
219 bool "Drive interface"
222 Support int13 disk/floppy drive functions.
226 bool "DVD/CDROM booting"
229 Support for booting from a CD. (El Torito spec support.)
231 depends on CDROM_BOOT
232 bool "DVD/CDROM boot drive emulation"
235 Support bootable CDROMs that emulate a floppy/harddrive.
238 bool "PCIBIOS interface"
241 Support int 1a/b1 PCI BIOS calls.
246 Support int 15/53 APM BIOS calls.
248 bool "PnP BIOS interface"
251 Support PnP BIOS entry point.
256 Support finding and running option roms during POST.
257 config OPTIONROMS_DEPLOYED
258 depends on OPTIONROMS
259 bool "Option roms are already at 0xc0000-0xf0000"
262 Select this if option ROMs are already copied to
263 0xc0000-0xf0000. This must only be selected when using
264 Bochs or QEMU versions older than 0.12.
265 config OPTIONROMS_CHECKSUM
266 depends on OPTIONROMS
267 bool "Require correct checksum on option ROMs"
270 Option ROMs are required to have correct checksums.
271 However, some option ROMs in the wild don't correctly
272 follow the specifications and have bad checksums.
273 Say N here to allow SeaBIOS to execute them anyways.
277 depends on OPTIONROMS
281 Support Post Memory Manager (PMM) entry point.
283 bool "Boot interface"
286 Support int 19/18 system bootup support.
288 bool "Keyboard interface"
291 Support int 16 keyboard calls.
292 config KBD_CALL_INT15_4F
294 bool "Keyboard hook interface"
297 Support calling int155f on each keyboard event.
299 bool "Mouse interface"
302 Support for int15c2 mouse calls.
308 Support S3 resume handler.
309 config S3_RESUME_VGA_INIT
311 bool "Run VGA rom on S3 resume"
314 Run the vga rom during S3 resume.
318 bool "Hardware specific VGA helpers"
321 Support int 155f BIOS callbacks specific to some Intel and
322 VIA on-board vga devices.
328 Disable A20 on 16bit boot.
337 Support generation of a PIR table in 0xf000 segment.
343 Support generation of MPTable.
348 Support generation of SM BIOS tables. This is also
349 sometimes called DMI.
355 Support generation of ACPI tables.
363 Control how verbose debug output is. The higher the
364 number, the more verbose SeaBIOS will be.
366 Set to zero to disable debugging.
369 depends on DEBUG_LEVEL != 0
370 bool "Serial port debugging"
373 Send debugging information to serial port.
375 config SCREEN_AND_DEBUG
376 depends on DEBUG_LEVEL != 0
377 bool "Show screen writes on debug ports"
380 Send characters that SeaBIOS writes to the screen to the