1 # Kconfig SeaBIOS configuration
3 mainmenu "SeaBIOS Configuration"
5 menu "General Features"
8 bool "Build for coreboot"
11 Configure as a coreboot payload.
15 bool "Build for Xen HVM"
18 Configure to be used by xen hvmloader, for a HVM guest.
21 bool "Parallelize hardware init"
24 Support running hardware initialization in parallel.
25 config THREAD_OPTIONROMS
27 bool "Hardware init during option ROM execution"
30 Allow hardware init to run in parallel with optionrom execution.
32 This can reduce boot time, but can cause some timing
33 variations during option ROM code execution. It is not
34 known if all option ROMs will behave properly with this
38 bool "Copy init code to high memory"
41 Support relocating the one time initialization code to high memory.
48 Support an interactive boot menu at end of post.
51 bool "Graphical boot splash screen"
54 Support showing a graphical boot splash screen.
60 Support controlling of the boot order via the fw_cfg/CBFS
65 bool "coreboot CBFS support"
68 Support searching coreboot flash format.
70 depends on COREBOOT_FLASH
71 bool "CBFS lzma support"
74 Support CBFS files compressed using the lzma decompression
77 depends on COREBOOT_FLASH
78 bool "Floppy images in CBFS"
81 Support floppy images in coreboot flash.
85 menu "Hardware support"
88 bool "ATA controllers"
91 Support for IDE disk code.
97 Detect and try to use ATA bus mastering DMA controllers.
103 Use 32bit PIO accesses on ATA (minor optimization on PCI transfers).
106 bool "AHCI controllers"
109 Support for AHCI disk code.
111 depends on DRIVES && !COREBOOT
112 bool "VirtIO controllers"
115 Support boot from virtio storage.
118 bool "Floppy controller"
121 Support floppy drive access.
124 depends on KEYBOARD || MOUSE
128 Support PS2 ports (keyboard and mouse).
137 bool "USB UHCI controllers"
140 Support USB UHCI controllers.
143 bool "USB OHCI controllers"
146 Support USB OHCI controllers.
149 bool "USB EHCI controllers"
152 Support USB EHCI controllers.
154 depends on USB && DRIVES
166 depends on USB && KEYBOARD
170 Support USB keyboards.
172 depends on USB && MOUSE
182 Support serial ports. This also enables int 14 serial port calls.
187 Support parallel ports. This also enables int 17 parallel port calls.
191 bool "System Management Mode (SMM)"
194 Support System Management Mode (on emulators).
197 bool "Initialize MTRRs"
200 Initialize the Memory Type Range Registers (on emulators).
203 menu "BIOS interfaces"
205 bool "Drive interface"
208 Support int13 disk/floppy drive functions.
212 bool "DVD/CDROM booting"
215 Support for booting from a CD. (El Torito spec support.)
217 depends on CDROM_BOOT
218 bool "DVD/CDROM boot drive emulation"
221 Support bootable CDROMs that emulate a floppy/harddrive.
224 bool "PCIBIOS interface"
227 Support int 1a/b1 PCI BIOS calls.
232 Support int 15/53 APM BIOS calls.
234 bool "PnP BIOS interface"
237 Support PnP BIOS entry point.
242 Support finding and running option roms during POST.
243 config OPTIONROMS_DEPLOYED
244 depends on OPTIONROMS
245 bool "Option roms are already at 0xc0000-0xf0000"
248 Select this if option ROMs are already copied to
249 0xc0000-0xf0000. This must only be selected when using
250 Bochs or QEMU versions older than 0.12.
251 config OPTIONROMS_CHECKSUM
252 depends on OPTIONROMS
253 bool "Require correct checksum on option ROMs"
256 Option ROMs are required to have correct checksums.
257 However, some option ROMs in the wild don't correctly
258 follow the specifications and have bad checksums.
259 Say N here to allow SeaBIOS to execute them anyways.
263 depends on OPTIONROMS
267 Support Post Memory Manager (PMM) entry point.
269 bool "Boot interface"
272 Support int 19/18 system bootup support.
274 bool "Keyboard interface"
277 Support int 16 keyboard calls.
278 config KBD_CALL_INT15_4F
280 bool "Keyboard hook interface"
283 Support calling int155f on each keyboard event.
285 bool "Mouse interface"
288 Support for int15c2 mouse calls.
294 Support S3 resume handler.
295 config S3_RESUME_VGA_INIT
297 bool "Run VGA rom on S3 resume"
300 Run the vga rom during S3 resume.
304 bool "Hardware specific VGA helpers"
307 Support int 155f BIOS callbacks specific to some Intel and
308 VIA on-board vga devices.
314 Disable A20 on 16bit boot.
323 Support generation of a PIR table in 0xf000 segment.
329 Support generation of MPTable.
334 Support generation of SM BIOS tables. This is also
335 sometimes called DMI.
341 Support generation of ACPI tables.
349 Control how verbose debug output is. The higher the
350 number, the more verbose SeaBIOS will be.
352 Set to zero to disable debugging.
355 depends on DEBUG_LEVEL != 0
356 bool "Serial port debugging"
359 Send debugging information to serial port.
360 config DEBUG_SERIAL_PORT
361 depends on DEBUG_SERIAL
362 hex "Serial port base address"
365 Base port for serial - generally 0x3f8, 0x2f8, 0x3e8, or 0x2e8.
367 config SCREEN_AND_DEBUG
368 depends on DEBUG_LEVEL != 0
369 bool "Show screen writes on debug ports"
372 Send characters that SeaBIOS writes to the screen to the