blob: 250663aad01fa9bfbadfa23b7393a85908463471 [file] [log] [blame]
Kevin O'Connor713be892011-01-26 21:19:25 -05001# Kconfig SeaBIOS configuration
2
3mainmenu "SeaBIOS Configuration"
Kevin O'Connor1efb10b2011-01-29 10:57:20 -05004
5menu "General Features"
6
Kevin O'Connor713be892011-01-26 21:19:25 -05007 config COREBOOT
Kevin O'Connor1efb10b2011-01-29 10:57:20 -05008 bool "Build for coreboot"
9 default n
10 help
11 Configure as a coreboot payload.
12
Ian Campbell74c78782011-06-01 11:00:29 +010013 config XEN
Kevin O'Connor9b0fbd22011-06-14 22:20:45 -040014 depends on !COREBOOT
Ian Campbell74c78782011-06-01 11:00:29 +010015 bool "Build for Xen HVM"
16 default n
17 help
18 Configure to be used by xen hvmloader, for a HVM guest.
19
Kevin O'Connor1efb10b2011-01-29 10:57:20 -050020 config THREADS
21 bool "Parallelize hardware init"
22 default y
23 help
24 Support running hardware initialization in parallel.
25 config THREAD_OPTIONROMS
26 depends on THREADS
27 bool "Hardware init during option ROM execution"
28 default n
29 help
30 Allow hardware init to run in parallel with optionrom execution.
31
Kevin O'Connorf31171c2011-05-07 13:57:42 -040032 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
35 option.
36
Kevin O'Connor1efb10b2011-01-29 10:57:20 -050037 config RELOCATE_INIT
38 bool "Copy init code to high memory"
39 default y
40 help
41 Support relocating the one time initialization code to high memory.
42
43 config BOOTMENU
44 depends on BOOT
45 bool "Bootmenu"
46 default y
47 help
48 Support an interactive boot menu at end of post.
Kevin O'Connor1efb10b2011-01-29 10:57:20 -050049 config BOOTSPLASH
50 depends on BOOTMENU
51 bool "Graphical boot splash screen"
52 default y
53 help
54 Support showing a graphical boot splash screen.
Kevin O'Connor49bf57b2011-05-10 22:08:30 -040055 config BOOTORDER
56 depends on BOOT
57 bool "Boot ordering"
58 default y
59 help
60 Support controlling of the boot order via the fw_cfg/CBFS
61 "bootorder" file.
Kevin O'Connor1efb10b2011-01-29 10:57:20 -050062
63 config COREBOOT_FLASH
64 depends on COREBOOT
65 bool "coreboot CBFS support"
66 default y
67 help
68 Support searching coreboot flash format.
69 config LZMA
70 depends on COREBOOT_FLASH
71 bool "CBFS lzma support"
72 default y
73 help
74 Support CBFS files compressed using the lzma decompression
75 algorighm.
76 config FLASH_FLOPPY
77 depends on COREBOOT_FLASH
78 bool "Floppy images in CBFS"
79 default y
80 help
81 Support floppy images in coreboot flash.
82
83endmenu
84
85menu "Hardware support"
86 config ATA
87 depends on DRIVES
88 bool "ATA controllers"
89 default y
90 help
91 Support for IDE disk code.
92 config ATA_DMA
93 depends on ATA
94 bool "ATA DMA"
95 default n
96 help
97 Detect and try to use ATA bus mastering DMA controllers.
98 config ATA_PIO32
99 depends on ATA
100 bool "ATA 32bit PIO"
101 default n
102 help
103 Use 32bit PIO accesses on ATA (minor optimization on PCI transfers).
104 config AHCI
105 depends on DRIVES
106 bool "AHCI controllers"
Gerd Hoffmannceb8ed42011-08-04 20:42:16 +0200107 default y
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500108 help
109 Support for AHCI disk code.
110 config VIRTIO_BLK
111 depends on DRIVES && !COREBOOT
Paolo Bonzini0e7fb5f2011-11-16 13:02:55 +0100112 bool "virtio-blk controllers"
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500113 default y
114 help
Paolo Bonzini0e7fb5f2011-11-16 13:02:55 +0100115 Support boot from virtio-blk storage.
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500116 config FLOPPY
117 depends on DRIVES
118 bool "Floppy controller"
119 default y
120 help
121 Support floppy drive access.
122
123 config PS2PORT
124 depends on KEYBOARD || MOUSE
125 bool "PS/2 port"
126 default y
127 help
128 Support PS2 ports (keyboard and mouse).
129
130 config USB
131 bool "USB"
132 default y
133 help
134 Support USB devices.
135 config USB_UHCI
136 depends on USB
137 bool "USB UHCI controllers"
138 default y
139 help
140 Support USB UHCI controllers.
141 config USB_OHCI
142 depends on USB
143 bool "USB OHCI controllers"
144 default y
145 help
146 Support USB OHCI controllers.
147 config USB_EHCI
148 depends on USB
149 bool "USB EHCI controllers"
150 default y
151 help
152 Support USB EHCI controllers.
153 config USB_MSC
154 depends on USB && DRIVES
155 bool "USB drives"
156 default y
157 help
158 Support USB disks.
159 config USB_HUB
160 depends on USB
161 bool "USB hubs"
162 default y
163 help
164 Support USB hubs.
165 config USB_KEYBOARD
166 depends on USB && KEYBOARD
167 bool "USB keyboards"
168 default y
169 help
170 Support USB keyboards.
171 config USB_MOUSE
172 depends on USB && MOUSE
173 bool "USB mice"
174 default y
175 help
176 Support USB mice.
177
178 config SERIAL
179 bool "Serial port"
180 default y
181 help
182 Support serial ports. This also enables int 14 serial port calls.
183 config LPT
184 bool "Parallel port"
185 default y
186 help
187 Support parallel ports. This also enables int 17 parallel port calls.
188
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500189 config USE_SMM
190 depends on !COREBOOT
191 bool "System Management Mode (SMM)"
192 default y
193 help
194 Support System Management Mode (on emulators).
Kevin O'Connor424f2172011-03-06 19:06:48 -0500195 config MTRR_INIT
196 depends on !COREBOOT
197 bool "Initialize MTRRs"
198 default y
199 help
200 Initialize the Memory Type Range Registers (on emulators).
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500201endmenu
202
203menu "BIOS interfaces"
204 config DRIVES
205 bool "Drive interface"
206 default y
207 help
208 Support int13 disk/floppy drive functions.
209
210 config CDROM_BOOT
211 depends on DRIVES
212 bool "DVD/CDROM booting"
213 default y
214 help
215 Support for booting from a CD. (El Torito spec support.)
216 config CDROM_EMU
217 depends on CDROM_BOOT
218 bool "DVD/CDROM boot drive emulation"
219 default y
220 help
221 Support bootable CDROMs that emulate a floppy/harddrive.
222
223 config PCIBIOS
224 bool "PCIBIOS interface"
225 default y
226 help
227 Support int 1a/b1 PCI BIOS calls.
228 config APMBIOS
229 bool "APM interface"
230 default y
231 help
232 Support int 15/53 APM BIOS calls.
233 config PNPBIOS
234 bool "PnP BIOS interface"
235 default y
236 help
237 Support PnP BIOS entry point.
238 config OPTIONROMS
239 bool "Option ROMS"
240 default y
241 help
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"
246 default n
247 help
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 PMM
252 depends on OPTIONROMS
253 bool "PMM interface"
254 default y
255 help
256 Support Post Memory Manager (PMM) entry point.
257 config BOOT
258 bool "Boot interface"
259 default y
260 help
261 Support int 19/18 system bootup support.
262 config KEYBOARD
263 bool "Keyboard interface"
264 default y
265 help
266 Support int 16 keyboard calls.
267 config KBD_CALL_INT15_4F
268 depends on KEYBOARD
269 bool "Keyboard hook interface"
270 default y
271 help
272 Support calling int155f on each keyboard event.
273 config MOUSE
274 bool "Mouse interface"
275 default y
276 help
277 Support for int15c2 mouse calls.
278
279 config S3_RESUME
280 bool "S3 resume"
281 default y
282 help
283 Support S3 resume handler.
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500284
Kevin O'Connor713be892011-01-26 21:19:25 -0500285 config VGAHOOKS
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500286 bool "Hardware specific VGA helpers"
287 default y
288 help
289 Support int 155f BIOS callbacks specific to some Intel and
290 VIA on-board vga devices.
291
292 config DISABLE_A20
293 bool "Disable A20"
294 default n
295 help
296 Disable A20 on 16bit boot.
297endmenu
298
299menu "BIOS Tables"
300 config PIRTABLE
301 depends on !COREBOOT
302 bool "PIR table"
303 default y
304 help
305 Support generation of a PIR table in 0xf000 segment.
306 config MPTABLE
307 depends on !COREBOOT
308 bool "MPTable"
309 default y
310 help
311 Support generation of MPTable.
312 config SMBIOS
313 bool "SMBIOS"
314 default y
315 help
316 Support generation of SM BIOS tables. This is also
317 sometimes called DMI.
318 config ACPI
319 depends on !COREBOOT
320 bool "ACPI"
321 default y
322 help
323 Support generation of ACPI tables.
324endmenu
325
Kevin O'Connor5f4ce9e2012-01-15 02:01:24 -0500326source ../vgasrc/Kconfig
Julian Pidancetda08a6d2011-12-19 05:07:56 +0000327
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500328menu "Debugging"
329 config DEBUG_LEVEL
330 int "Debug level"
331 default 1
332 help
333 Control how verbose debug output is. The higher the
334 number, the more verbose SeaBIOS will be.
335
336 Set to zero to disable debugging.
337
338 config DEBUG_SERIAL
339 depends on DEBUG_LEVEL != 0
340 bool "Serial port debugging"
341 default n
342 help
343 Send debugging information to serial port.
Kevin O'Connord12e8a22011-05-10 23:36:11 -0400344 config DEBUG_SERIAL_PORT
345 depends on DEBUG_SERIAL
346 hex "Serial port base address"
347 default 0x3f8
348 help
349 Base port for serial - generally 0x3f8, 0x2f8, 0x3e8, or 0x2e8.
Julian Pidancet7123d982012-02-01 16:03:24 +0000350
351 config DEBUG_IO
352 depends on !COREBOOT && DEBUG_LEVEL != 0
353 bool "Special IO port debugging"
354 default y
355 help
356 Some emulators or hypervisors provide with a way to output debug
357 information by outputing strings in a special port present in the
358 IO space.
359
360 config DEBUG_IO_PORT
361 depends on DEBUG_IO
362 hex "Debug IO port address"
363 default 0x0402
364 help
365 Bochs uses the 0x0402 address by default, whereas Xen
366 makes the 0xe9 IO address available for guests use.
Kevin O'Connor1efb10b2011-01-29 10:57:20 -0500367endmenu