blob: 011354530d493567576c1ca8e4df207b799cb296 [file] [log] [blame]
Patrick Georgi0588d192009-08-12 15:00:51 +00001##
2## This file is part of the coreboot project.
3##
Stefan Reinauerd650e992010-02-22 04:33:13 +00004## Copyright (C) 2007-2010 coresystems GmbH
Patrick Georgi0588d192009-08-12 15:00:51 +00005## (Written by Stefan Reinauer <stepan@coresystems.de> for coresystems GmbH)
6##
7## This program is free software; you can redistribute it and/or modify
8## it under the terms of the GNU General Public License as published by
Uwe Hermannc70e9fc2010-02-15 23:10:19 +00009## the Free Software Foundation; version 2 of the License.
Patrick Georgi0588d192009-08-12 15:00:51 +000010##
11## This program is distributed in the hope that it will be useful,
12## but WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14## GNU General Public License for more details.
15##
Patrick Georgi0588d192009-08-12 15:00:51 +000016
Stefan Reinauer95a63962012-11-13 17:00:01 -080017menu "Devices"
Ronald G. Minnich69efaa02013-02-26 10:07:40 -080018
19# Only set this in the mainboard
20config MAINBOARD_HAS_NATIVE_VGA_INIT
21 bool
22 default n
23
Timothy Pearsonc522fc82015-02-02 18:25:34 -060024# FIXME Ugly hack to allow Z9s driver native framebuffer configuration
25config NATIVE_VGA_INIT_USE_EDID
26 bool
27 default n if DRIVERS_XGI_Z9S
28 default y if !DRIVERS_XGI_Z9S
29
Vladimir Serbinenko160e9a02014-02-22 10:34:47 +010030config MAINBOARD_HAS_NATIVE_VGA_INIT_TEXTMODECFG
31 bool
32 default n
33
Ronald G. Minnich69efaa02013-02-26 10:07:40 -080034config MAINBOARD_DO_NATIVE_VGA_INIT
35 bool "Use native graphics initialization"
36 depends on MAINBOARD_HAS_NATIVE_VGA_INIT
37 default n
38 help
39 Some mainboards, such as the Google Link, allow initializing the display
40 without the need of a binary only VGA OPROM. Enabling this option may be
Paul Menzelfd3451d2014-01-03 09:45:57 +010041 faster, but also lacks flexibility in setting modes.
Ronald G. Minnich69efaa02013-02-26 10:07:40 -080042
43 If unsure, say N.
44
Uwe Hermann168b11b2009-10-07 16:15:40 +000045# TODO: Explain differences (if any) for onboard cards.
Patrick Georgi0588d192009-08-12 15:00:51 +000046config VGA_ROM_RUN
Stefan Reinauerafaa2572011-10-06 16:47:51 -070047 bool "Run VGA Option ROMs"
Peter Stugebe0ede42012-10-27 14:17:04 +020048 default n if PAYLOAD_SEABIOS
49 default y if !PAYLOAD_SEABIOS
Alexandru Gagniucfdbc1af2015-08-26 10:11:02 -040050 depends on PCI && !MAINBOARD_DO_NATIVE_VGA_INIT
Patrick Georgi0588d192009-08-12 15:00:51 +000051 help
Peter Stugeb6fa47c2012-10-27 13:45:51 +020052 Execute VGA Option ROMs in coreboot if found. This is required
53 to enable PCI/AGP/PCI-E video cards when not using a SeaBIOS
54 payload.
55
56 When using a SeaBIOS payload it runs all option ROMs with much
57 more complete BIOS interrupt services available than coreboot,
58 which some option ROMs require in order to function correctly.
59
60 If unsure, say N when using SeaBIOS as payload, Y otherwise.
Myles Watsone6804952009-08-28 14:36:12 +000061
Stefan Reinauer0a500842011-09-23 10:33:58 -070062config S3_VGA_ROM_RUN
Stefan Reinauerafaa2572011-10-06 16:47:51 -070063 bool "Re-run VGA Option ROMs on S3 resume"
Stefan Reinauer0a500842011-09-23 10:33:58 -070064 default y
65 depends on VGA_ROM_RUN && HAVE_ACPI_RESUME
66 help
Peter Stugeb6fa47c2012-10-27 13:45:51 +020067 Execute VGA Option ROMs in coreboot when resuming from S3 suspend.
68
69 When using a SeaBIOS payload it runs all option ROMs with much
70 more complete BIOS interrupt services available than coreboot,
71 which some option ROMs require in order to function correctly.
72
73 If unsure, say N when using SeaBIOS as payload, Y otherwise.
Stefan Reinauer0a500842011-09-23 10:33:58 -070074
Kyösti Mälkki580e5642014-05-01 16:31:34 +030075config ALWAYS_LOAD_OPROM
76 def_bool n
77 depends on VGA_ROM_RUN
78 help
Daniele Forsi53847a22014-07-22 18:00:56 +020079 Always load option ROMs if any are found. The decision to run
80 the ROM is still determined at runtime, but the distinction
Kyösti Mälkki580e5642014-05-01 16:31:34 +030081 between loading and not running comes into play for CHROMEOS.
82
Daniele Forsi53847a22014-07-22 18:00:56 +020083 An example where this is required is that VBT (Video BIOS Tables)
Kyösti Mälkki580e5642014-05-01 16:31:34 +030084 are needed for the kernel's display driver to know how a piece of
85 hardware is configured to be used.
86
Stefan Reinauerafaa2572011-10-06 16:47:51 -070087config ON_DEVICE_ROM_RUN
88 bool "Run Option ROMs on PCI devices"
Peter Stugebe0ede42012-10-27 14:17:04 +020089 default n if PAYLOAD_SEABIOS
90 default y if !PAYLOAD_SEABIOS
Alexandru Gagniucfdbc1af2015-08-26 10:11:02 -040091 depends on PCI
Stefan Reinauerafaa2572011-10-06 16:47:51 -070092 help
Peter Stugeb6fa47c2012-10-27 13:45:51 +020093 Execute Option ROMs stored on PCI/PCIe/AGP devices in coreboot.
Stefan Reinauerafaa2572011-10-06 16:47:51 -070094
Peter Stugeb6fa47c2012-10-27 13:45:51 +020095 If disabled, only Option ROMs stored in CBFS will be executed by
96 coreboot. If you are concerned about security, you might want to
97 disable this option, but it might leave your system in a state of
98 degraded functionality.
Stefan Reinauerafaa2572011-10-06 16:47:51 -070099
Peter Stugeb6fa47c2012-10-27 13:45:51 +0200100 When using a SeaBIOS payload it runs all option ROMs with much
101 more complete BIOS interrupt services available than coreboot,
102 which some option ROMs require in order to function correctly.
103
104 If unsure, say N when using SeaBIOS as payload, Y otherwise.
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700105
Patrick Georgi0588d192009-08-12 15:00:51 +0000106choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000107 prompt "Option ROM execution type"
Stefan Reinauer14be4d02010-01-31 21:46:12 +0000108 default PCI_OPTION_ROM_RUN_YABEL if !ARCH_X86
109 default PCI_OPTION_ROM_RUN_REALMODE if ARCH_X86
Vladimir Serbinenkob32816e2013-12-20 17:47:19 +0100110 depends on VGA_ROM_RUN || GEODE_VSA
Uwe Hermann168b11b2009-10-07 16:15:40 +0000111
112config PCI_OPTION_ROM_RUN_REALMODE
Stefan Reinauerd650e992010-02-22 04:33:13 +0000113 prompt "Native mode"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000114 bool
Stefan Reinauer14be4d02010-01-31 21:46:12 +0000115 depends on ARCH_X86
Myles Watson28412f52009-09-17 16:54:46 +0000116 help
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700117 If you select this option, PCI Option ROMs will be executed
Stefan Reinauer14be4d02010-01-31 21:46:12 +0000118 natively on the CPU in real mode. No CPU emulation is involved,
119 so this is the fastest, but also the least secure option.
120 (only works on x86/x64 systems)
Patrick Georgi0588d192009-08-12 15:00:51 +0000121
Stefan Reinauerd650e992010-02-22 04:33:13 +0000122config PCI_OPTION_ROM_RUN_YABEL
Uwe Hermann548dbe72010-02-22 16:41:49 +0000123 prompt "Secure mode"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000124 bool
Myles Watsone3df1212010-06-04 15:55:12 +0000125 depends on !GEODE_VSA
Uwe Hermann168b11b2009-10-07 16:15:40 +0000126 help
Stefan Reinauer14be4d02010-01-31 21:46:12 +0000127 If you select this option, the x86emu CPU emulator will be used to
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700128 execute PCI Option ROMs.
Uwe Hermann548dbe72010-02-22 16:41:49 +0000129
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700130 This option prevents Option ROMs from doing dirty tricks with the
Uwe Hermann548dbe72010-02-22 16:41:49 +0000131 system (such as installing SMM modules or hypervisors), but it is
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700132 also significantly slower than the native Option ROM initialization
Uwe Hermann548dbe72010-02-22 16:41:49 +0000133 method.
134
Stefan Reinauerd650e992010-02-22 04:33:13 +0000135 This is the default choice for non-x86 systems.
Uwe Hermann548dbe72010-02-22 16:41:49 +0000136
Patrick Georgi0588d192009-08-12 15:00:51 +0000137endchoice
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000138
Stefan Reinauer9a358532010-02-12 09:32:17 +0000139config YABEL_PCI_ACCESS_OTHER_DEVICES
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700140 prompt "Allow Option ROMs to access other devices"
Stefan Reinauer9a358532010-02-12 09:32:17 +0000141 bool
142 depends on PCI_OPTION_ROM_RUN_YABEL
143 help
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700144 Per default, YABEL only allows Option ROMs to access the PCI device
Stefan Reinauer9a358532010-02-12 09:32:17 +0000145 that they are associated with. However, this causes trouble for some
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700146 onboard graphics chips whose Option ROM needs to reconfigure the
Uwe Hermann548dbe72010-02-22 16:41:49 +0000147 north bridge.
Stefan Reinauer9a358532010-02-12 09:32:17 +0000148
Patrick Georgic4b2a1b2012-07-20 13:44:50 +0200149config YABEL_PCI_FAKE_WRITING_OTHER_DEVICES_CONFIG
150 prompt "Fake success on writing other device's config space"
151 bool
152 depends on YABEL_PCI_ACCESS_OTHER_DEVICES
153 help
154 By default, YABEL aborts when the Option ROM tries to write to other
155 devices' config spaces. With this option enabled, the write doesn't
156 follow through, but the Option ROM is allowed to go on.
157 This can create issues such as hanging Option ROMs (if it depends on
158 that other register changing to the written value), so test for
159 impact before using this option.
160
Stefan Reinauer9a358532010-02-12 09:32:17 +0000161config YABEL_VIRTMEM_LOCATION
162 prompt "Location of YABEL's virtual memory"
163 hex
Alexandru Gagniucfdbc1af2015-08-26 10:11:02 -0400164 depends on PCI_OPTION_ROM_RUN_YABEL
Stefan Reinauer9a358532010-02-12 09:32:17 +0000165 default 0x1000000
166 help
167 YABEL requires 1MB memory for its CPU emulation. This memory is
168 normally located at 16MB.
169
Stefan Reinauerd650e992010-02-22 04:33:13 +0000170config YABEL_DIRECTHW
Uwe Hermann548dbe72010-02-22 16:41:49 +0000171 prompt "Direct hardware access"
Stefan Reinauerd650e992010-02-22 04:33:13 +0000172 bool
Stefan Reinauer91f14232012-12-07 16:55:12 -0800173 depends on PCI_OPTION_ROM_RUN_YABEL && ARCH_X86
Myles Watsone6804952009-08-28 14:36:12 +0000174 help
Stefan Reinauerd650e992010-02-22 04:33:13 +0000175 YABEL consists of two parts: It uses x86emu for the CPU emulation and
Uwe Hermann548dbe72010-02-22 16:41:49 +0000176 additionally provides a PC system emulation that filters bad device
177 and memory access (such as PCI config space access to other devices
178 than the initialized one).
179
Stefan Reinauerd650e992010-02-22 04:33:13 +0000180 When choosing this option, x86emu will pass through all hardware
Uwe Hermann548dbe72010-02-22 16:41:49 +0000181 accesses to memory and I/O devices to the underlying memory and I/O
Stefan Reinauerafaa2572011-10-06 16:47:51 -0700182 addresses. While this option prevents Option ROMs from doing dirty
Stefan Reinauerd650e992010-02-22 04:33:13 +0000183 tricks with the CPU (such as installing SMM modules or hypervisors),
184 they can still access all devices in the system.
185 Enable this option for a good compromise between security and speed.
186
Stefan Reinauerabc0c852010-11-22 08:09:50 +0000187config MULTIPLE_VGA_ADAPTERS
Myles Watson28412f52009-09-17 16:54:46 +0000188 bool
189 default n
190
Timothy Pearsonacbdade2015-10-17 04:36:47 -0500191config SMBUS_HAS_AUX_CHANNELS
192 bool
193 default n
194
Kyösti Mälkki36abdc42014-05-05 16:40:15 +0300195config SPD_CACHE
196 bool
197 default n
198
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800199config PCI
200 bool
201 default n
202
Ronald G. Minnich876d7e92009-08-28 14:23:38 +0000203config HYPERTRANSPORT_PLUGIN_SUPPORT
204 bool
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800205 depends on PCI
Myles Watson74fb8f22009-09-24 15:09:11 +0000206 default n
Ronald G. Minnich876d7e92009-08-28 14:23:38 +0000207
208config PCIX_PLUGIN_SUPPORT
209 bool
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800210 depends on PCI
Myles Watsoned035562009-09-22 21:29:32 +0000211 default y
Ronald G. Minnich876d7e92009-08-28 14:23:38 +0000212
213config PCIEXP_PLUGIN_SUPPORT
214 bool
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800215 depends on PCI
Myles Watsoned035562009-09-22 21:29:32 +0000216 default y
Ronald G. Minnich876d7e92009-08-28 14:23:38 +0000217
Ronald G. Minnich876d7e92009-08-28 14:23:38 +0000218config CARDBUS_PLUGIN_SUPPORT
219 bool
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800220 depends on PCI
Myles Watsoned035562009-09-22 21:29:32 +0000221 default y
Duncan Laurie90dcdd42011-10-25 14:15:11 -0700222
Andrew Wub7bb70d2013-08-12 20:07:47 +0800223config AZALIA_PLUGIN_SUPPORT
224 bool
225 depends on PCI
226 default n
227
Duncan Laurie90dcdd42011-10-25 14:15:11 -0700228config PCIEXP_COMMON_CLOCK
229 prompt "Enable PCIe Common Clock"
230 bool
Stefan Reinauerc4077d42013-01-04 10:07:28 -0800231 depends on PCIEXP_PLUGIN_SUPPORT
Duncan Laurie90dcdd42011-10-25 14:15:11 -0700232 default n
233 help
234 Detect and enable Common Clock on PCIe links.
235
236config PCIEXP_ASPM
237 prompt "Enable PCIe ASPM"
238 bool
Stefan Reinauerc4077d42013-01-04 10:07:28 -0800239 depends on PCIEXP_PLUGIN_SUPPORT
Duncan Laurie90dcdd42011-10-25 14:15:11 -0700240 default n
241 help
242 Detect and enable ASPM on PCIe links.
Stefan Reinauer95a63962012-11-13 17:00:01 -0800243
Kane Chen18cb1342014-10-01 11:13:54 +0800244config PCIEXP_CLK_PM
245 prompt "Enable PCIe Clock Power Management"
246 bool
247 depends on PCIEXP_PLUGIN_SUPPORT
248 default n
249 help
250 Detect and enable Clock Power Management on PCIe.
251
Kyösti Mälkki4c686f22014-02-14 12:45:09 +0200252config EARLY_PCI_BRIDGE
253 bool "Early PCI bridge"
254 depends on PCI
255 default n
256 help
257 While coreboot is executing code from ROM, the coreboot resource
258 allocator has not been running yet. Hence PCI devices living behind
259 a bridge are not yet visible to the system.
260
261 This option enables static configuration for a single pre-defined
262 PCI bridge function on bus 0.
263
Kenji Chen31c6e632014-10-04 01:14:44 +0800264config PCIEXP_L1_SUB_STATE
265 prompt "Enable PCIe ASPM L1 SubState"
266 bool
267 depends on PCIEXP_PLUGIN_SUPPORT && MMCONF_SUPPORT
268 default n
269 help
270 Detect and enable ASPM on PCIe links.
271
Kyösti Mälkki4c686f22014-02-14 12:45:09 +0200272if EARLY_PCI_BRIDGE
273
274config EARLY_PCI_BRIDGE_DEVICE
275 hex "bridge device"
276 default 0x0
277
278config EARLY_PCI_BRIDGE_FUNCTION
279 hex "bridge function"
280 default 0x0
281
282config EARLY_PCI_MMIO_BASE
283 hex "MMIO window base"
284 default 0x0
285
286endif # EARLY_PCI_BRIDGE
287
Stefan Reinauer58470e32014-10-17 13:08:36 +0200288config SUBSYSTEM_VENDOR_ID
289 hex "Override PCI Subsystem Vendor ID"
290 depends on PCI
291 default "0x0000"
292 help
293 This config option will override the devicetree settings for
294 PCI Subsystem Vendor ID.
Stefan Reinauer95a63962012-11-13 17:00:01 -0800295
Stefan Reinauer58470e32014-10-17 13:08:36 +0200296config SUBSYSTEM_DEVICE_ID
297 hex "Override PCI Subsystem Device ID"
298 depends on PCI
299 default "0x0000"
300 help
301 This config option will override the devicetree settings for
302 PCI Subsystem Device ID.
Stefan Reinauer95a63962012-11-13 17:00:01 -0800303
304config VGA_BIOS
305 bool "Add a VGA BIOS image"
306 help
307 Select this option if you have a VGA BIOS image that you would
308 like to add to your ROM.
309
310 You will be able to specify the location and file name of the
311 image later.
312
313config VGA_BIOS_FILE
314 string "VGA BIOS path and filename"
315 depends on VGA_BIOS
316 default "vgabios.bin"
317 help
318 The path and filename of the file to use as VGA BIOS.
319
320config VGA_BIOS_ID
321 string "VGA device PCI IDs"
322 depends on VGA_BIOS
323 default "1106,3230"
324 help
325 The comma-separated PCI vendor and device ID that would associate
326 your VGA BIOS to your video card.
327
328 Example: 1106,3230
329
330 In the above example 1106 is the PCI vendor ID (in hex, but without
331 the "0x" prefix) and 3230 specifies the PCI device ID of the
332 video card (also in hex, without "0x" prefix).
333
Daniele Forsif2fb7d92014-07-17 11:59:41 +0200334 Under GNU/Linux you can run `lspci -nn` to list the IDs of your PCI devices.
335
Stefan Reinauer95a63962012-11-13 17:00:01 -0800336config INTEL_MBI
337 bool "Add an MBI image"
338 depends on NORTHBRIDGE_INTEL_I82830
339 help
340 Select this option if you have an Intel MBI image that you would
341 like to add to your ROM.
342
343 You will be able to specify the location and file name of the
344 image later.
345
346config MBI_FILE
347 string "Intel MBI path and filename"
348 depends on INTEL_MBI
349 default "mbi.bin"
350 help
351 The path and filename of the file to use as VGA BIOS.
352
Stefan Reinauer58470e32014-10-17 13:08:36 +0200353config PXE_ROM
354 bool "Add a PXE ROM image"
355 help
356 Select this option if you have a PXE ROM image that you would
357 like to add to your ROM.
358
359config PXE_ROM_FILE
360 string "PXE ROM filename"
361 depends on PXE_ROM
362 default "pxe.rom"
363 help
364 The path and filename of the file to use as PXE ROM.
365
366config PXE_ROM_ID
367 string "network card PCI IDs"
368 depends on PXE_ROM
369 default "10ec,8168"
370 help
371 The comma-separated PCI vendor and device ID that would associate
372 your PXE ROM to your network card.
373
374 Example: 10ec,8168
375
376 In the above example 10ec is the PCI vendor ID (in hex, but without
377 the "0x" prefix) and 8168 specifies the PCI device ID of the
378 network card (also in hex, without "0x" prefix).
379
380 Under GNU/Linux you can run `lspci -nn` to list the IDs of your PCI devices.
381
Julius Werner37d7ac82014-05-05 18:03:46 -0700382config SOFTWARE_I2C
383 bool "Enable I2C controller emulation in software"
384 default n
385 help
386 This config option will enable code to override the i2c_transfer
387 routine with a (simple) software emulation of the protocol. This may
388 be useful for debugging or on platforms where a driver for the real
389 I2C controller is not (yet) available. The platform code needs to
390 provide bindings to manually toggle I2C lines.
Kyösti Mälkkia91e1e62014-12-31 10:36:08 +0200391
Stefan Reinauer95a63962012-11-13 17:00:01 -0800392endmenu
393
394menu "Display"
Ronald G. Minnich69efaa02013-02-26 10:07:40 -0800395 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE || MAINBOARD_DO_NATIVE_VGA_INIT
Stefan Reinauer95a63962012-11-13 17:00:01 -0800396
397config FRAMEBUFFER_SET_VESA_MODE
Ronald G. Minnich69efaa02013-02-26 10:07:40 -0800398 prompt "Set framebuffer graphics resolution"
Stefan Reinauer95a63962012-11-13 17:00:01 -0800399 bool
400 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE
401 help
Ronald G. Minnich69efaa02013-02-26 10:07:40 -0800402 Set VESA/native framebuffer mode (needed for bootsplash and graphical framebuffer console)
Stefan Reinauer95a63962012-11-13 17:00:01 -0800403
404choice
Ronald G. Minnich69efaa02013-02-26 10:07:40 -0800405 prompt "framebuffer graphics resolution"
Stefan Reinauer95a63962012-11-13 17:00:01 -0800406 default FRAMEBUFFER_VESA_MODE_117
Vladimir Serbinenkofb6d25f2014-02-21 08:38:27 +0100407 depends on FRAMEBUFFER_SET_VESA_MODE
Stefan Reinauer95a63962012-11-13 17:00:01 -0800408 help
409 This option sets the resolution used for the coreboot framebuffer (and
410 bootsplash screen).
411
412config FRAMEBUFFER_VESA_MODE_100
413 bool "640x400 256-color"
414
415config FRAMEBUFFER_VESA_MODE_101
416 bool "640x480 256-color"
417
418config FRAMEBUFFER_VESA_MODE_102
419 bool "800x600 16-color"
420
421config FRAMEBUFFER_VESA_MODE_103
422 bool "800x600 256-color"
423
424config FRAMEBUFFER_VESA_MODE_104
425 bool "1024x768 16-color"
426
427config FRAMEBUFFER_VESA_MODE_105
Daniele Forsied3d0e82014-07-19 15:40:40 +0200428 bool "1024x768 256-color"
Stefan Reinauer95a63962012-11-13 17:00:01 -0800429
430config FRAMEBUFFER_VESA_MODE_106
431 bool "1280x1024 16-color"
432
433config FRAMEBUFFER_VESA_MODE_107
434 bool "1280x1024 256-color"
435
436config FRAMEBUFFER_VESA_MODE_108
437 bool "80x60 text"
438
439config FRAMEBUFFER_VESA_MODE_109
440 bool "132x25 text"
441
442config FRAMEBUFFER_VESA_MODE_10A
443 bool "132x43 text"
444
445config FRAMEBUFFER_VESA_MODE_10B
446 bool "132x50 text"
447
448config FRAMEBUFFER_VESA_MODE_10C
449 bool "132x60 text"
450
451config FRAMEBUFFER_VESA_MODE_10D
452 bool "320x200 32k-color (1:5:5:5)"
453
454config FRAMEBUFFER_VESA_MODE_10E
455 bool "320x200 64k-color (5:6:5)"
456
457config FRAMEBUFFER_VESA_MODE_10F
458 bool "320x200 16.8M-color (8:8:8)"
459
460config FRAMEBUFFER_VESA_MODE_110
461 bool "640x480 32k-color (1:5:5:5)"
462
463config FRAMEBUFFER_VESA_MODE_111
464 bool "640x480 64k-color (5:6:5)"
465
466config FRAMEBUFFER_VESA_MODE_112
467 bool "640x480 16.8M-color (8:8:8)"
468
469config FRAMEBUFFER_VESA_MODE_113
470 bool "800x600 32k-color (1:5:5:5)"
471
472config FRAMEBUFFER_VESA_MODE_114
473 bool "800x600 64k-color (5:6:5)"
474
475config FRAMEBUFFER_VESA_MODE_115
476 bool "800x600 16.8M-color (8:8:8)"
477
478config FRAMEBUFFER_VESA_MODE_116
479 bool "1024x768 32k-color (1:5:5:5)"
480
481config FRAMEBUFFER_VESA_MODE_117
482 bool "1024x768 64k-color (5:6:5)"
483
484config FRAMEBUFFER_VESA_MODE_118
485 bool "1024x768 16.8M-color (8:8:8)"
486
487config FRAMEBUFFER_VESA_MODE_119
488 bool "1280x1024 32k-color (1:5:5:5)"
489
490config FRAMEBUFFER_VESA_MODE_11A
491 bool "1280x1024 64k-color (5:6:5)"
492
493config FRAMEBUFFER_VESA_MODE_11B
494 bool "1280x1024 16.8M-color (8:8:8)"
495
496config FRAMEBUFFER_VESA_MODE_USER
497 bool "Manually select VESA mode"
Ronald G. Minnich69efaa02013-02-26 10:07:40 -0800498 depends on !MAINBOARD_DO_NATIVE_VGA_INIT
Stefan Reinauer95a63962012-11-13 17:00:01 -0800499
500endchoice
501
502# Map the config names to an integer (KB).
503config FRAMEBUFFER_VESA_MODE
504 prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER
505 hex
506 default 0x100 if FRAMEBUFFER_VESA_MODE_100
507 default 0x101 if FRAMEBUFFER_VESA_MODE_101
508 default 0x102 if FRAMEBUFFER_VESA_MODE_102
509 default 0x103 if FRAMEBUFFER_VESA_MODE_103
510 default 0x104 if FRAMEBUFFER_VESA_MODE_104
511 default 0x105 if FRAMEBUFFER_VESA_MODE_105
512 default 0x106 if FRAMEBUFFER_VESA_MODE_106
513 default 0x107 if FRAMEBUFFER_VESA_MODE_107
514 default 0x108 if FRAMEBUFFER_VESA_MODE_108
515 default 0x109 if FRAMEBUFFER_VESA_MODE_109
516 default 0x10A if FRAMEBUFFER_VESA_MODE_10A
517 default 0x10B if FRAMEBUFFER_VESA_MODE_10B
518 default 0x10C if FRAMEBUFFER_VESA_MODE_10C
519 default 0x10D if FRAMEBUFFER_VESA_MODE_10D
520 default 0x10E if FRAMEBUFFER_VESA_MODE_10E
521 default 0x10F if FRAMEBUFFER_VESA_MODE_10F
522 default 0x110 if FRAMEBUFFER_VESA_MODE_110
523 default 0x111 if FRAMEBUFFER_VESA_MODE_111
524 default 0x112 if FRAMEBUFFER_VESA_MODE_112
525 default 0x113 if FRAMEBUFFER_VESA_MODE_113
526 default 0x114 if FRAMEBUFFER_VESA_MODE_114
527 default 0x115 if FRAMEBUFFER_VESA_MODE_115
528 default 0x116 if FRAMEBUFFER_VESA_MODE_116
529 default 0x117 if FRAMEBUFFER_VESA_MODE_117
530 default 0x118 if FRAMEBUFFER_VESA_MODE_118
531 default 0x119 if FRAMEBUFFER_VESA_MODE_119
532 default 0x11A if FRAMEBUFFER_VESA_MODE_11A
533 default 0x11B if FRAMEBUFFER_VESA_MODE_11B
534 default 0x117 if FRAMEBUFFER_VESA_MODE_USER
535
536config FRAMEBUFFER_KEEP_VESA_MODE
537 prompt "Keep VESA framebuffer"
538 bool
Vladimir Serbinenko160e9a02014-02-22 10:34:47 +0100539 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE || (MAINBOARD_HAS_NATIVE_VGA_INIT_TEXTMODECFG && MAINBOARD_DO_NATIVE_VGA_INIT)
Stefan Reinauer95a63962012-11-13 17:00:01 -0800540 help
541 This option keeps the framebuffer mode set after coreboot finishes
542 execution. If this option is enabled, coreboot will pass a
543 framebuffer entry in its coreboot table and the payload will need a
544 framebuffer driver. If this option is disabled, coreboot will switch
545 back to text mode before handing control to a payload.
546
547config BOOTSPLASH
548 prompt "Show graphical bootsplash"
549 bool
550 depends on FRAMEBUFFER_SET_VESA_MODE
551 help
Daniele Forsi53847a22014-07-22 18:00:56 +0200552 This option shows a graphical bootsplash screen. The graphics are
Stefan Reinauer95a63962012-11-13 17:00:01 -0800553 loaded from the CBFS file bootsplash.jpg.
554
Konstantin Aladyshev6544cb32015-01-24 18:52:10 +0400555 You can either specify the location and file name of the
556 image in the 'General' section or add it manually to CBFS, using,
557 for example, cbfstool.
Daniele Forsi53847a22014-07-22 18:00:56 +0200558
Stefan Reinauer95a63962012-11-13 17:00:01 -0800559endmenu