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.
57 bool "coreboot CBFS support"
60 Support searching coreboot flash format.
62 depends on COREBOOT_FLASH
63 bool "CBFS lzma support"
66 Support CBFS files compressed using the lzma decompression
69 depends on COREBOOT_FLASH
70 bool "Floppy images in CBFS"
73 Support floppy images in coreboot flash.
77 menu "Hardware support"
80 bool "ATA controllers"
83 Support for IDE disk code.
89 Detect and try to use ATA bus mastering DMA controllers.
95 Use 32bit PIO accesses on ATA (minor optimization on PCI transfers).
98 bool "AHCI controllers"
101 Support for AHCI disk code.
103 depends on DRIVES && !COREBOOT
104 bool "VirtIO controllers"
107 Support boot from virtio storage.
110 bool "Floppy controller"
113 Support floppy drive access.
116 depends on KEYBOARD || MOUSE
120 Support PS2 ports (keyboard and mouse).
129 bool "USB UHCI controllers"
132 Support USB UHCI controllers.
135 bool "USB OHCI controllers"
138 Support USB OHCI controllers.
141 bool "USB EHCI controllers"
144 Support USB EHCI controllers.
146 depends on USB && DRIVES
158 depends on USB && KEYBOARD
162 Support USB keyboards.
164 depends on USB && MOUSE
174 Support serial ports. This also enables int 14 serial port calls.
179 Support parallel ports. This also enables int 17 parallel port calls.
181 config EXTRA_PCI_ROOTS
182 bool "Extra root buses"
185 If the target machine has multiple independent root buses,
186 the extra buses may be specified here.
188 depends on EXTRA_PCI_ROOTS
189 hex "Extra primary PCI root bus number"
192 depends on EXTRA_PCI_ROOTS
193 hex "Extra secondary PCI root bus number"
198 bool "System Management Mode (SMM)"
201 Support System Management Mode (on emulators).
204 bool "Initialize MTRRs"
207 Initialize the Memory Type Range Registers (on emulators).
210 menu "BIOS interfaces"
212 bool "Drive interface"
215 Support int13 disk/floppy drive functions.
219 bool "DVD/CDROM booting"
222 Support for booting from a CD. (El Torito spec support.)
224 depends on CDROM_BOOT
225 bool "DVD/CDROM boot drive emulation"
228 Support bootable CDROMs that emulate a floppy/harddrive.
231 bool "PCIBIOS interface"
234 Support int 1a/b1 PCI BIOS calls.
239 Support int 15/53 APM BIOS calls.
241 bool "PnP BIOS interface"
244 Support PnP BIOS entry point.
249 Support finding and running option roms during POST.
250 config OPTIONROMS_DEPLOYED
251 depends on OPTIONROMS
252 bool "Option roms are already at 0xc0000-0xf0000"
255 Select this if option ROMs are already copied to
256 0xc0000-0xf0000. This must only be selected when using
257 Bochs or QEMU versions older than 0.12.
258 config OPTIONROMS_CHECKSUM
259 depends on OPTIONROMS
260 bool "Require correct checksum on option ROMs"
263 Option ROMs are required to have correct checksums.
264 However, some option ROMs in the wild don't correctly
265 follow the specifications and have bad checksums.
266 Say N here to allow SeaBIOS to execute them anyways.
270 depends on OPTIONROMS
274 Support Post Memory Manager (PMM) entry point.
276 bool "Boot interface"
279 Support int 19/18 system bootup support.
281 bool "Keyboard interface"
284 Support int 16 keyboard calls.
285 config KBD_CALL_INT15_4F
287 bool "Keyboard hook interface"
290 Support calling int155f on each keyboard event.
292 bool "Mouse interface"
295 Support for int15c2 mouse calls.
301 Support S3 resume handler.
302 config S3_RESUME_VGA_INIT
304 bool "Run VGA rom on S3 resume"
307 Run the vga rom during S3 resume.
311 bool "Hardware specific VGA helpers"
314 Support int 155f BIOS callbacks specific to some Intel and
315 VIA on-board vga devices.
321 Disable A20 on 16bit boot.
330 Support generation of a PIR table in 0xf000 segment.
336 Support generation of MPTable.
341 Support generation of SM BIOS tables. This is also
342 sometimes called DMI.
348 Support generation of ACPI tables.
356 Control how verbose debug output is. The higher the
357 number, the more verbose SeaBIOS will be.
359 Set to zero to disable debugging.
362 depends on DEBUG_LEVEL != 0
363 bool "Serial port debugging"
366 Send debugging information to serial port.
368 config SCREEN_AND_DEBUG
369 depends on DEBUG_LEVEL != 0
370 bool "Show screen writes on debug ports"
373 Send characters that SeaBIOS writes to the screen to the