x86: Add vesa mode configuration options
authorSimon Glass <sjg@chromium.org>
Sat, 15 Nov 2014 03:56:30 +0000 (20:56 -0700)
committerSimon Glass <sjg@chromium.org>
Tue, 25 Nov 2014 13:34:15 +0000 (06:34 -0700)
Add Kconfig options to allow selection of a vesa mode on x86 machines.

Signed-off-by: Simon Glass <sjg@chromium.org>
arch/x86/Kconfig

index 6e29868f5f8f90fcb03e115e6375e02ab90a6997..4f5ce38d6f31ada28c07e7d83746b70992d478ef 100644 (file)
@@ -83,6 +83,155 @@ config X86_RAMTEST
          to work correctly. It is not exhaustive but can save time by
          detecting obvious failures.
 
+config MARK_GRAPHICS_MEM_WRCOMB
+       bool "Mark graphics memory as write-combining."
+       default n
+       help
+        The graphics performance may increase if the graphics
+        memory is set as write-combining cache type. This option
+        enables marking the graphics memory as write-combining.
+
+menu "Display"
+
+config FRAMEBUFFER_SET_VESA_MODE
+       prompt "Set framebuffer graphics resolution"
+       bool
+       help
+         Set VESA/native framebuffer mode (needed for bootsplash and graphical framebuffer console)
+
+choice
+       prompt "framebuffer graphics resolution"
+       default FRAMEBUFFER_VESA_MODE_117
+       depends on FRAMEBUFFER_SET_VESA_MODE
+       help
+         This option sets the resolution used for the coreboot framebuffer (and
+         bootsplash screen).
+
+config FRAMEBUFFER_VESA_MODE_100
+       bool "640x400 256-color"
+
+config FRAMEBUFFER_VESA_MODE_101
+       bool "640x480 256-color"
+
+config FRAMEBUFFER_VESA_MODE_102
+       bool "800x600 16-color"
+
+config FRAMEBUFFER_VESA_MODE_103
+       bool "800x600 256-color"
+
+config FRAMEBUFFER_VESA_MODE_104
+       bool "1024x768 16-color"
+
+config FRAMEBUFFER_VESA_MODE_105
+       bool "1024x7686 256-color"
+
+config FRAMEBUFFER_VESA_MODE_106
+       bool "1280x1024 16-color"
+
+config FRAMEBUFFER_VESA_MODE_107
+       bool "1280x1024 256-color"
+
+config FRAMEBUFFER_VESA_MODE_108
+       bool "80x60 text"
+
+config FRAMEBUFFER_VESA_MODE_109
+       bool "132x25 text"
+
+config FRAMEBUFFER_VESA_MODE_10A
+       bool "132x43 text"
+
+config FRAMEBUFFER_VESA_MODE_10B
+       bool "132x50 text"
+
+config FRAMEBUFFER_VESA_MODE_10C
+       bool "132x60 text"
+
+config FRAMEBUFFER_VESA_MODE_10D
+       bool "320x200 32k-color (1:5:5:5)"
+
+config FRAMEBUFFER_VESA_MODE_10E
+       bool "320x200 64k-color (5:6:5)"
+
+config FRAMEBUFFER_VESA_MODE_10F
+       bool "320x200 16.8M-color (8:8:8)"
+
+config FRAMEBUFFER_VESA_MODE_110
+       bool "640x480 32k-color (1:5:5:5)"
+
+config FRAMEBUFFER_VESA_MODE_111
+       bool "640x480 64k-color (5:6:5)"
+
+config FRAMEBUFFER_VESA_MODE_112
+       bool "640x480 16.8M-color (8:8:8)"
+
+config FRAMEBUFFER_VESA_MODE_113
+       bool "800x600 32k-color (1:5:5:5)"
+
+config FRAMEBUFFER_VESA_MODE_114
+       bool "800x600 64k-color (5:6:5)"
+
+config FRAMEBUFFER_VESA_MODE_115
+       bool "800x600 16.8M-color (8:8:8)"
+
+config FRAMEBUFFER_VESA_MODE_116
+       bool "1024x768 32k-color (1:5:5:5)"
+
+config FRAMEBUFFER_VESA_MODE_117
+       bool "1024x768 64k-color (5:6:5)"
+
+config FRAMEBUFFER_VESA_MODE_118
+       bool "1024x768 16.8M-color (8:8:8)"
+
+config FRAMEBUFFER_VESA_MODE_119
+       bool "1280x1024 32k-color (1:5:5:5)"
+
+config FRAMEBUFFER_VESA_MODE_11A
+       bool "1280x1024 64k-color (5:6:5)"
+
+config FRAMEBUFFER_VESA_MODE_11B
+       bool "1280x1024 16.8M-color (8:8:8)"
+
+config FRAMEBUFFER_VESA_MODE_USER
+       bool "Manually select VESA mode"
+
+endchoice
+
+# Map the config names to an integer (KB).
+config FRAMEBUFFER_VESA_MODE
+       prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER
+       hex
+       default 0x100 if FRAMEBUFFER_VESA_MODE_100
+       default 0x101 if FRAMEBUFFER_VESA_MODE_101
+       default 0x102 if FRAMEBUFFER_VESA_MODE_102
+       default 0x103 if FRAMEBUFFER_VESA_MODE_103
+       default 0x104 if FRAMEBUFFER_VESA_MODE_104
+       default 0x105 if FRAMEBUFFER_VESA_MODE_105
+       default 0x106 if FRAMEBUFFER_VESA_MODE_106
+       default 0x107 if FRAMEBUFFER_VESA_MODE_107
+       default 0x108 if FRAMEBUFFER_VESA_MODE_108
+       default 0x109 if FRAMEBUFFER_VESA_MODE_109
+       default 0x10A if FRAMEBUFFER_VESA_MODE_10A
+       default 0x10B if FRAMEBUFFER_VESA_MODE_10B
+       default 0x10C if FRAMEBUFFER_VESA_MODE_10C
+       default 0x10D if FRAMEBUFFER_VESA_MODE_10D
+       default 0x10E if FRAMEBUFFER_VESA_MODE_10E
+       default 0x10F if FRAMEBUFFER_VESA_MODE_10F
+       default 0x110 if FRAMEBUFFER_VESA_MODE_110
+       default 0x111 if FRAMEBUFFER_VESA_MODE_111
+       default 0x112 if FRAMEBUFFER_VESA_MODE_112
+       default 0x113 if FRAMEBUFFER_VESA_MODE_113
+       default 0x114 if FRAMEBUFFER_VESA_MODE_114
+       default 0x115 if FRAMEBUFFER_VESA_MODE_115
+       default 0x116 if FRAMEBUFFER_VESA_MODE_116
+       default 0x117 if FRAMEBUFFER_VESA_MODE_117
+       default 0x118 if FRAMEBUFFER_VESA_MODE_118
+       default 0x119 if FRAMEBUFFER_VESA_MODE_119
+       default 0x11A if FRAMEBUFFER_VESA_MODE_11A
+       default 0x11B if FRAMEBUFFER_VESA_MODE_11B
+       default 0x117 if FRAMEBUFFER_VESA_MODE_USER
+
+endmenu
+
 source "arch/x86/cpu/ivybridge/Kconfig"
 
 source "board/coreboot/coreboot/Kconfig"