xref: /openbmc/u-boot/arch/x86/Kconfig (revision bbd43d659c55c3fedddae1eba2a520bc8a93d3fd)
1dd84058dSMasahiro Yamadamenu "x86 architecture"
2dd84058dSMasahiro Yamada	depends on X86
3dd84058dSMasahiro Yamada
4dd84058dSMasahiro Yamadaconfig SYS_ARCH
5dd84058dSMasahiro Yamada	default "x86"
6dd84058dSMasahiro Yamada
745ccec8fSMasahiro Yamadaconfig USE_PRIVATE_LIBGCC
845ccec8fSMasahiro Yamada	default y
945ccec8fSMasahiro Yamada
10dd84058dSMasahiro Yamadachoice
11dd84058dSMasahiro Yamada	prompt "Target select"
12dd84058dSMasahiro Yamada
13dd84058dSMasahiro Yamadaconfig TARGET_COREBOOT
14dd84058dSMasahiro Yamada	bool "Support coreboot"
158ef07571SSimon Glass	help
168ef07571SSimon Glass	  This target is used for running U-Boot on top of Coreboot. In
178ef07571SSimon Glass	  this case Coreboot does the early inititalisation, and U-Boot
188ef07571SSimon Glass	  takes over once the RAM, video and CPU are fully running.
198ef07571SSimon Glass	  U-Boot is loaded as a fallback payload from Coreboot, in
208ef07571SSimon Glass	  Coreboot terminology. This method was used for the Chromebook
218ef07571SSimon Glass	  Pixel when launched.
228ef07571SSimon Glass
238ef07571SSimon Glassconfig TARGET_CHROMEBOOK_LINK
248ef07571SSimon Glass	bool "Support Chromebook link"
258ef07571SSimon Glass	help
268ef07571SSimon Glass	  This is the Chromebook Pixel released in 2013. It uses an Intel
278ef07571SSimon Glass	  i5 Ivybridge which is a die-shrink of Sandybridge, with 4GB of
288ef07571SSimon Glass	  SDRAM. It has a Panther Point platform controller hub, PCIe
298ef07571SSimon Glass	  WiFi and Bluetooth. It also includes a 720p webcam, USB SD
308ef07571SSimon Glass	  reader, microphone and speakers, display port and 32GB SATA
318ef07571SSimon Glass	  solid state drive. There is a Chrome OS EC connected on LPC,
328ef07571SSimon Glass	  and it provides a 2560x1700 high resolution touch-enabled LCD
338ef07571SSimon Glass	  display.
34dd84058dSMasahiro Yamada
3558f542deSBin Mengconfig TARGET_CROWNBAY
3658f542deSBin Meng	bool "Support Intel Crown Bay CRB"
3758f542deSBin Meng	help
3858f542deSBin Meng	  This is the Intel Crown Bay Customer Reference Board. It contains
3958f542deSBin Meng	  the Intel Atom Processor E6xx populated on the COM Express module
4058f542deSBin Meng	  with 1GB DDR2 soldered down memory and a carrier board with the
4158f542deSBin Meng	  Intel Platform Controller Hub EG20T, other system components and
4258f542deSBin Meng	  peripheral connectors for PCIe/SATA/USB/LAN/SD/UART/Audio/LVDS.
4358f542deSBin Meng
44dd84058dSMasahiro Yamadaendchoice
45dd84058dSMasahiro Yamada
4670a09c6cSSimon Glassconfig RAMBASE
4770a09c6cSSimon Glass	hex
4870a09c6cSSimon Glass	default 0x100000
4970a09c6cSSimon Glass
5070a09c6cSSimon Glassconfig RAMTOP
5170a09c6cSSimon Glass	hex
5270a09c6cSSimon Glass	default 0x200000
5370a09c6cSSimon Glass
5470a09c6cSSimon Glassconfig XIP_ROM_SIZE
5570a09c6cSSimon Glass	hex
56*bbd43d65SSimon Glass	default ROM_SIZE
5770a09c6cSSimon Glass
5870a09c6cSSimon Glassconfig CPU_ADDR_BITS
5970a09c6cSSimon Glass	int
6070a09c6cSSimon Glass	default 36
6170a09c6cSSimon Glass
6265dd74a6SSimon Glassconfig HPET_ADDRESS
6365dd74a6SSimon Glass	hex
6465dd74a6SSimon Glass	default 0xfed00000 if !HPET_ADDRESS_OVERRIDE
6565dd74a6SSimon Glass
6665dd74a6SSimon Glassconfig SMM_TSEG
6765dd74a6SSimon Glass	bool
6865dd74a6SSimon Glass	default n
6965dd74a6SSimon Glass
7065dd74a6SSimon Glassconfig SMM_TSEG_SIZE
7165dd74a6SSimon Glass	hex
7265dd74a6SSimon Glass
7364542f46SBin Mengconfig BOARD_ROMSIZE_KB_512
7464542f46SBin Meng	bool
7564542f46SBin Mengconfig BOARD_ROMSIZE_KB_1024
7664542f46SBin Meng	bool
7764542f46SBin Mengconfig BOARD_ROMSIZE_KB_2048
7864542f46SBin Meng	bool
7964542f46SBin Mengconfig BOARD_ROMSIZE_KB_4096
8064542f46SBin Meng	bool
8164542f46SBin Mengconfig BOARD_ROMSIZE_KB_8192
8264542f46SBin Meng	bool
8364542f46SBin Mengconfig BOARD_ROMSIZE_KB_16384
8464542f46SBin Meng	bool
8564542f46SBin Meng
8664542f46SBin Mengchoice
8764542f46SBin Meng	prompt "ROM chip size"
8864542f46SBin Meng	default UBOOT_ROMSIZE_KB_512 if BOARD_ROMSIZE_KB_512
8964542f46SBin Meng	default UBOOT_ROMSIZE_KB_1024 if BOARD_ROMSIZE_KB_1024
9064542f46SBin Meng	default UBOOT_ROMSIZE_KB_2048 if BOARD_ROMSIZE_KB_2048
9164542f46SBin Meng	default UBOOT_ROMSIZE_KB_4096 if BOARD_ROMSIZE_KB_4096
9264542f46SBin Meng	default UBOOT_ROMSIZE_KB_8192 if BOARD_ROMSIZE_KB_8192
9364542f46SBin Meng	default UBOOT_ROMSIZE_KB_16384 if BOARD_ROMSIZE_KB_16384
9464542f46SBin Meng	help
9564542f46SBin Meng	  Select the size of the ROM chip you intend to flash U-Boot on.
9664542f46SBin Meng
9764542f46SBin Meng	  The build system will take care of creating a u-boot.rom file
9864542f46SBin Meng	  of the matching size.
9964542f46SBin Meng
10064542f46SBin Mengconfig UBOOT_ROMSIZE_KB_512
10164542f46SBin Meng	bool "512 KB"
10264542f46SBin Meng	help
10364542f46SBin Meng	  Choose this option if you have a 512 KB ROM chip.
10464542f46SBin Meng
10564542f46SBin Mengconfig UBOOT_ROMSIZE_KB_1024
10664542f46SBin Meng	bool "1024 KB (1 MB)"
10764542f46SBin Meng	help
10864542f46SBin Meng	  Choose this option if you have a 1024 KB (1 MB) ROM chip.
10964542f46SBin Meng
11064542f46SBin Mengconfig UBOOT_ROMSIZE_KB_2048
11164542f46SBin Meng	bool "2048 KB (2 MB)"
11264542f46SBin Meng	help
11364542f46SBin Meng	  Choose this option if you have a 2048 KB (2 MB) ROM chip.
11464542f46SBin Meng
11564542f46SBin Mengconfig UBOOT_ROMSIZE_KB_4096
11664542f46SBin Meng	bool "4096 KB (4 MB)"
11764542f46SBin Meng	help
11864542f46SBin Meng	  Choose this option if you have a 4096 KB (4 MB) ROM chip.
11964542f46SBin Meng
12064542f46SBin Mengconfig UBOOT_ROMSIZE_KB_8192
12164542f46SBin Meng	bool "8192 KB (8 MB)"
12264542f46SBin Meng	help
12364542f46SBin Meng	  Choose this option if you have a 8192 KB (8 MB) ROM chip.
12464542f46SBin Meng
12564542f46SBin Mengconfig UBOOT_ROMSIZE_KB_16384
12664542f46SBin Meng	bool "16384 KB (16 MB)"
12764542f46SBin Meng	help
12864542f46SBin Meng	  Choose this option if you have a 16384 KB (16 MB) ROM chip.
12964542f46SBin Meng
13064542f46SBin Mengendchoice
13164542f46SBin Meng
13264542f46SBin Meng# Map the config names to an integer (KB).
13364542f46SBin Mengconfig UBOOT_ROMSIZE_KB
13464542f46SBin Meng	int
13564542f46SBin Meng	default 512 if UBOOT_ROMSIZE_KB_512
13664542f46SBin Meng	default 1024 if UBOOT_ROMSIZE_KB_1024
13764542f46SBin Meng	default 2048 if UBOOT_ROMSIZE_KB_2048
13864542f46SBin Meng	default 4096 if UBOOT_ROMSIZE_KB_4096
13964542f46SBin Meng	default 8192 if UBOOT_ROMSIZE_KB_8192
14064542f46SBin Meng	default 16384 if UBOOT_ROMSIZE_KB_16384
14164542f46SBin Meng
14264542f46SBin Meng# Map the config names to a hex value (bytes).
143fce7b276SSimon Glassconfig ROM_SIZE
144fce7b276SSimon Glass	hex
14564542f46SBin Meng	default 0x80000 if UBOOT_ROMSIZE_KB_512
14664542f46SBin Meng	default 0x100000 if UBOOT_ROMSIZE_KB_1024
14764542f46SBin Meng	default 0x200000 if UBOOT_ROMSIZE_KB_2048
14864542f46SBin Meng	default 0x400000 if UBOOT_ROMSIZE_KB_4096
14964542f46SBin Meng	default 0x800000 if UBOOT_ROMSIZE_KB_8192
15064542f46SBin Meng	default 0xc00000 if UBOOT_ROMSIZE_KB_12288
15164542f46SBin Meng	default 0x1000000 if UBOOT_ROMSIZE_KB_16384
152fce7b276SSimon Glass
153fce7b276SSimon Glassconfig HAVE_INTEL_ME
154fce7b276SSimon Glass	bool "Platform requires Intel Management Engine"
155fce7b276SSimon Glass	help
156fce7b276SSimon Glass	  Newer higher-end devices have an Intel Management Engine (ME)
157fce7b276SSimon Glass	  which is a very large binary blob (typically 1.5MB) which is
158fce7b276SSimon Glass	  required for the platform to work. This enforces a particular
159fce7b276SSimon Glass	  SPI flash format. You will need to supply the me.bin file in
160fce7b276SSimon Glass	  your board directory.
161fce7b276SSimon Glass
16265dd74a6SSimon Glassconfig X86_RAMTEST
16365dd74a6SSimon Glass	bool "Perform a simple RAM test after SDRAM initialisation"
16465dd74a6SSimon Glass	help
16565dd74a6SSimon Glass	  If there is something wrong with SDRAM then the platform will
16665dd74a6SSimon Glass	  often crash within U-Boot or the kernel. This option enables a
16765dd74a6SSimon Glass	  very simple RAM test that quickly checks whether the SDRAM seems
16865dd74a6SSimon Glass	  to work correctly. It is not exhaustive but can save time by
16965dd74a6SSimon Glass	  detecting obvious failures.
17065dd74a6SSimon Glass
17122465fc4SSimon Glassconfig MARK_GRAPHICS_MEM_WRCOMB
17222465fc4SSimon Glass	bool "Mark graphics memory as write-combining."
17322465fc4SSimon Glass	default n
17422465fc4SSimon Glass	help
17522465fc4SSimon Glass	 The graphics performance may increase if the graphics
17622465fc4SSimon Glass	 memory is set as write-combining cache type. This option
17722465fc4SSimon Glass	 enables marking the graphics memory as write-combining.
17822465fc4SSimon Glass
17922465fc4SSimon Glassmenu "Display"
18022465fc4SSimon Glass
18122465fc4SSimon Glassconfig FRAMEBUFFER_SET_VESA_MODE
18222465fc4SSimon Glass	prompt "Set framebuffer graphics resolution"
18322465fc4SSimon Glass	bool
18422465fc4SSimon Glass	help
18522465fc4SSimon Glass	  Set VESA/native framebuffer mode (needed for bootsplash and graphical framebuffer console)
18622465fc4SSimon Glass
18722465fc4SSimon Glasschoice
18822465fc4SSimon Glass	prompt "framebuffer graphics resolution"
18922465fc4SSimon Glass	default FRAMEBUFFER_VESA_MODE_117
19022465fc4SSimon Glass	depends on FRAMEBUFFER_SET_VESA_MODE
19122465fc4SSimon Glass	help
19222465fc4SSimon Glass	  This option sets the resolution used for the coreboot framebuffer (and
19322465fc4SSimon Glass	  bootsplash screen).
19422465fc4SSimon Glass
19522465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_100
19622465fc4SSimon Glass	bool "640x400 256-color"
19722465fc4SSimon Glass
19822465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_101
19922465fc4SSimon Glass	bool "640x480 256-color"
20022465fc4SSimon Glass
20122465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_102
20222465fc4SSimon Glass	bool "800x600 16-color"
20322465fc4SSimon Glass
20422465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_103
20522465fc4SSimon Glass	bool "800x600 256-color"
20622465fc4SSimon Glass
20722465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_104
20822465fc4SSimon Glass	bool "1024x768 16-color"
20922465fc4SSimon Glass
21022465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_105
21122465fc4SSimon Glass	bool "1024x7686 256-color"
21222465fc4SSimon Glass
21322465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_106
21422465fc4SSimon Glass	bool "1280x1024 16-color"
21522465fc4SSimon Glass
21622465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_107
21722465fc4SSimon Glass	bool "1280x1024 256-color"
21822465fc4SSimon Glass
21922465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_108
22022465fc4SSimon Glass	bool "80x60 text"
22122465fc4SSimon Glass
22222465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_109
22322465fc4SSimon Glass	bool "132x25 text"
22422465fc4SSimon Glass
22522465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10A
22622465fc4SSimon Glass	bool "132x43 text"
22722465fc4SSimon Glass
22822465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10B
22922465fc4SSimon Glass	bool "132x50 text"
23022465fc4SSimon Glass
23122465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10C
23222465fc4SSimon Glass	bool "132x60 text"
23322465fc4SSimon Glass
23422465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10D
23522465fc4SSimon Glass	bool "320x200 32k-color (1:5:5:5)"
23622465fc4SSimon Glass
23722465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10E
23822465fc4SSimon Glass	bool "320x200 64k-color (5:6:5)"
23922465fc4SSimon Glass
24022465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_10F
24122465fc4SSimon Glass	bool "320x200 16.8M-color (8:8:8)"
24222465fc4SSimon Glass
24322465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_110
24422465fc4SSimon Glass	bool "640x480 32k-color (1:5:5:5)"
24522465fc4SSimon Glass
24622465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_111
24722465fc4SSimon Glass	bool "640x480 64k-color (5:6:5)"
24822465fc4SSimon Glass
24922465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_112
25022465fc4SSimon Glass	bool "640x480 16.8M-color (8:8:8)"
25122465fc4SSimon Glass
25222465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_113
25322465fc4SSimon Glass	bool "800x600 32k-color (1:5:5:5)"
25422465fc4SSimon Glass
25522465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_114
25622465fc4SSimon Glass	bool "800x600 64k-color (5:6:5)"
25722465fc4SSimon Glass
25822465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_115
25922465fc4SSimon Glass	bool "800x600 16.8M-color (8:8:8)"
26022465fc4SSimon Glass
26122465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_116
26222465fc4SSimon Glass	bool "1024x768 32k-color (1:5:5:5)"
26322465fc4SSimon Glass
26422465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_117
26522465fc4SSimon Glass	bool "1024x768 64k-color (5:6:5)"
26622465fc4SSimon Glass
26722465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_118
26822465fc4SSimon Glass	bool "1024x768 16.8M-color (8:8:8)"
26922465fc4SSimon Glass
27022465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_119
27122465fc4SSimon Glass	bool "1280x1024 32k-color (1:5:5:5)"
27222465fc4SSimon Glass
27322465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_11A
27422465fc4SSimon Glass	bool "1280x1024 64k-color (5:6:5)"
27522465fc4SSimon Glass
27622465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_11B
27722465fc4SSimon Glass	bool "1280x1024 16.8M-color (8:8:8)"
27822465fc4SSimon Glass
27922465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE_USER
28022465fc4SSimon Glass	bool "Manually select VESA mode"
28122465fc4SSimon Glass
28222465fc4SSimon Glassendchoice
28322465fc4SSimon Glass
28422465fc4SSimon Glass# Map the config names to an integer (KB).
28522465fc4SSimon Glassconfig FRAMEBUFFER_VESA_MODE
28622465fc4SSimon Glass	prompt "VESA mode" if FRAMEBUFFER_VESA_MODE_USER
28722465fc4SSimon Glass	hex
28822465fc4SSimon Glass	default 0x100 if FRAMEBUFFER_VESA_MODE_100
28922465fc4SSimon Glass	default 0x101 if FRAMEBUFFER_VESA_MODE_101
29022465fc4SSimon Glass	default 0x102 if FRAMEBUFFER_VESA_MODE_102
29122465fc4SSimon Glass	default 0x103 if FRAMEBUFFER_VESA_MODE_103
29222465fc4SSimon Glass	default 0x104 if FRAMEBUFFER_VESA_MODE_104
29322465fc4SSimon Glass	default 0x105 if FRAMEBUFFER_VESA_MODE_105
29422465fc4SSimon Glass	default 0x106 if FRAMEBUFFER_VESA_MODE_106
29522465fc4SSimon Glass	default 0x107 if FRAMEBUFFER_VESA_MODE_107
29622465fc4SSimon Glass	default 0x108 if FRAMEBUFFER_VESA_MODE_108
29722465fc4SSimon Glass	default 0x109 if FRAMEBUFFER_VESA_MODE_109
29822465fc4SSimon Glass	default 0x10A if FRAMEBUFFER_VESA_MODE_10A
29922465fc4SSimon Glass	default 0x10B if FRAMEBUFFER_VESA_MODE_10B
30022465fc4SSimon Glass	default 0x10C if FRAMEBUFFER_VESA_MODE_10C
30122465fc4SSimon Glass	default 0x10D if FRAMEBUFFER_VESA_MODE_10D
30222465fc4SSimon Glass	default 0x10E if FRAMEBUFFER_VESA_MODE_10E
30322465fc4SSimon Glass	default 0x10F if FRAMEBUFFER_VESA_MODE_10F
30422465fc4SSimon Glass	default 0x110 if FRAMEBUFFER_VESA_MODE_110
30522465fc4SSimon Glass	default 0x111 if FRAMEBUFFER_VESA_MODE_111
30622465fc4SSimon Glass	default 0x112 if FRAMEBUFFER_VESA_MODE_112
30722465fc4SSimon Glass	default 0x113 if FRAMEBUFFER_VESA_MODE_113
30822465fc4SSimon Glass	default 0x114 if FRAMEBUFFER_VESA_MODE_114
30922465fc4SSimon Glass	default 0x115 if FRAMEBUFFER_VESA_MODE_115
31022465fc4SSimon Glass	default 0x116 if FRAMEBUFFER_VESA_MODE_116
31122465fc4SSimon Glass	default 0x117 if FRAMEBUFFER_VESA_MODE_117
31222465fc4SSimon Glass	default 0x118 if FRAMEBUFFER_VESA_MODE_118
31322465fc4SSimon Glass	default 0x119 if FRAMEBUFFER_VESA_MODE_119
31422465fc4SSimon Glass	default 0x11A if FRAMEBUFFER_VESA_MODE_11A
31522465fc4SSimon Glass	default 0x11B if FRAMEBUFFER_VESA_MODE_11B
31622465fc4SSimon Glass	default 0x117 if FRAMEBUFFER_VESA_MODE_USER
31722465fc4SSimon Glass
31822465fc4SSimon Glassendmenu
31922465fc4SSimon Glass
3208ef07571SSimon Glasssource "arch/x86/cpu/ivybridge/Kconfig"
3218ef07571SSimon Glass
32258f542deSBin Mengsource "arch/x86/cpu/queensbay/Kconfig"
32358f542deSBin Meng
324fe5b9b44SSimon Glasssource "board/coreboot/coreboot/Kconfig"
325dd84058dSMasahiro Yamada
3268ef07571SSimon Glasssource "board/google/chromebook_link/Kconfig"
3278ef07571SSimon Glass
32858f542deSBin Mengsource "board/intel/crownbay/Kconfig"
32958f542deSBin Meng
330dd84058dSMasahiro Yamadaendmenu
331