xref: /OK3568_Linux_fs/u-boot/arch/x86/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyunmenu "x86 architecture"
2*4882a593Smuzhiyun	depends on X86
3*4882a593Smuzhiyun
4*4882a593Smuzhiyunconfig SYS_ARCH
5*4882a593Smuzhiyun	default "x86"
6*4882a593Smuzhiyun
7*4882a593Smuzhiyunchoice
8*4882a593Smuzhiyun	prompt "Run U-Boot in 32/64-bit mode"
9*4882a593Smuzhiyun	default X86_RUN_32BIT
10*4882a593Smuzhiyun	help
11*4882a593Smuzhiyun	  U-Boot can be built as a 32-bit binary which runs in 32-bit mode
12*4882a593Smuzhiyun	  even on 64-bit machines. In this case SPL is not used, and U-Boot
13*4882a593Smuzhiyun	  runs directly from the reset vector (via 16-bit start-up).
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun	  Alternatively it can be run as a 64-bit binary, thus requiring a
16*4882a593Smuzhiyun	  64-bit machine. In this case SPL runs in 32-bit mode (via 16-bit
17*4882a593Smuzhiyun	  start-up) then jumps to U-Boot in 64-bit mode.
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun	  For now, 32-bit mode is recommended, as 64-bit is still
20*4882a593Smuzhiyun	  experimental and is missing a lot of features.
21*4882a593Smuzhiyun
22*4882a593Smuzhiyunconfig X86_RUN_32BIT
23*4882a593Smuzhiyun	bool "32-bit"
24*4882a593Smuzhiyun	help
25*4882a593Smuzhiyun	  Build U-Boot as a 32-bit binary with no SPL. This is the currently
26*4882a593Smuzhiyun	  supported normal setup. U-Boot will stay in 32-bit mode even on
27*4882a593Smuzhiyun	  64-bit machines. When booting a 64-bit kernel, U-Boot will switch
28*4882a593Smuzhiyun	  to 64-bit just before starting the kernel. Only the bottom 4GB of
29*4882a593Smuzhiyun	  memory can be accessed through normal means, although
30*4882a593Smuzhiyun	  arch_phys_memset() can be used for basic access to other memory.
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunconfig X86_RUN_64BIT
33*4882a593Smuzhiyun	bool "64-bit"
34*4882a593Smuzhiyun	select X86_64
35*4882a593Smuzhiyun	select SUPPORT_SPL
36*4882a593Smuzhiyun	select SPL
37*4882a593Smuzhiyun	select SPL_SEPARATE_BSS
38*4882a593Smuzhiyun	help
39*4882a593Smuzhiyun	  Build U-Boot as a 64-bit binary with a 32-bit SPL. This is
40*4882a593Smuzhiyun	  experimental and many features are missing. U-Boot SPL starts up,
41*4882a593Smuzhiyun	  runs through the 16-bit and 32-bit init, then switches to 64-bit
42*4882a593Smuzhiyun	  mode and jumps to U-Boot proper.
43*4882a593Smuzhiyun
44*4882a593Smuzhiyunendchoice
45*4882a593Smuzhiyun
46*4882a593Smuzhiyunconfig X86_64
47*4882a593Smuzhiyun	bool
48*4882a593Smuzhiyun
49*4882a593Smuzhiyunconfig SPL_X86_64
50*4882a593Smuzhiyun	bool
51*4882a593Smuzhiyun	depends on SPL
52*4882a593Smuzhiyun
53*4882a593Smuzhiyunchoice
54*4882a593Smuzhiyun	prompt "Mainboard vendor"
55*4882a593Smuzhiyun	default VENDOR_EMULATION
56*4882a593Smuzhiyun
57*4882a593Smuzhiyunconfig VENDOR_ADVANTECH
58*4882a593Smuzhiyun	bool "advantech"
59*4882a593Smuzhiyun
60*4882a593Smuzhiyunconfig VENDOR_CONGATEC
61*4882a593Smuzhiyun	bool "congatec"
62*4882a593Smuzhiyun
63*4882a593Smuzhiyunconfig VENDOR_COREBOOT
64*4882a593Smuzhiyun	bool "coreboot"
65*4882a593Smuzhiyun
66*4882a593Smuzhiyunconfig VENDOR_DFI
67*4882a593Smuzhiyun	bool "dfi"
68*4882a593Smuzhiyun
69*4882a593Smuzhiyunconfig VENDOR_EFI
70*4882a593Smuzhiyun	bool "efi"
71*4882a593Smuzhiyun
72*4882a593Smuzhiyunconfig VENDOR_EMULATION
73*4882a593Smuzhiyun	bool "emulation"
74*4882a593Smuzhiyun
75*4882a593Smuzhiyunconfig VENDOR_GOOGLE
76*4882a593Smuzhiyun	bool "Google"
77*4882a593Smuzhiyun
78*4882a593Smuzhiyunconfig VENDOR_INTEL
79*4882a593Smuzhiyun	bool "Intel"
80*4882a593Smuzhiyun
81*4882a593Smuzhiyunendchoice
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun# subarchitectures-specific options below
84*4882a593Smuzhiyunconfig INTEL_MID
85*4882a593Smuzhiyun	bool "Intel MID platform support"
86*4882a593Smuzhiyun	select REGMAP
87*4882a593Smuzhiyun	select SYSCON
88*4882a593Smuzhiyun	help
89*4882a593Smuzhiyun	  Select to build a U-Boot capable of supporting Intel MID
90*4882a593Smuzhiyun	  (Mobile Internet Device) platform systems which do not have
91*4882a593Smuzhiyun	  the PCI legacy interfaces.
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun	  If you are building for a PC class system say N here.
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun	  Intel MID platforms are based on an Intel processor and
96*4882a593Smuzhiyun	  chipset which consume less power than most of the x86
97*4882a593Smuzhiyun	  derivatives.
98*4882a593Smuzhiyun
99*4882a593Smuzhiyun# board-specific options below
100*4882a593Smuzhiyunsource "board/advantech/Kconfig"
101*4882a593Smuzhiyunsource "board/congatec/Kconfig"
102*4882a593Smuzhiyunsource "board/coreboot/Kconfig"
103*4882a593Smuzhiyunsource "board/dfi/Kconfig"
104*4882a593Smuzhiyunsource "board/efi/Kconfig"
105*4882a593Smuzhiyunsource "board/emulation/Kconfig"
106*4882a593Smuzhiyunsource "board/google/Kconfig"
107*4882a593Smuzhiyunsource "board/intel/Kconfig"
108*4882a593Smuzhiyun
109*4882a593Smuzhiyun# platform-specific options below
110*4882a593Smuzhiyunsource "arch/x86/cpu/baytrail/Kconfig"
111*4882a593Smuzhiyunsource "arch/x86/cpu/broadwell/Kconfig"
112*4882a593Smuzhiyunsource "arch/x86/cpu/coreboot/Kconfig"
113*4882a593Smuzhiyunsource "arch/x86/cpu/ivybridge/Kconfig"
114*4882a593Smuzhiyunsource "arch/x86/cpu/qemu/Kconfig"
115*4882a593Smuzhiyunsource "arch/x86/cpu/quark/Kconfig"
116*4882a593Smuzhiyunsource "arch/x86/cpu/queensbay/Kconfig"
117*4882a593Smuzhiyunsource "arch/x86/cpu/tangier/Kconfig"
118*4882a593Smuzhiyun
119*4882a593Smuzhiyun# architecture-specific options below
120*4882a593Smuzhiyun
121*4882a593Smuzhiyunconfig AHCI
122*4882a593Smuzhiyun	default y
123*4882a593Smuzhiyun
124*4882a593Smuzhiyunconfig SYS_MALLOC_F_LEN
125*4882a593Smuzhiyun	default 0x800
126*4882a593Smuzhiyun
127*4882a593Smuzhiyunconfig RAMBASE
128*4882a593Smuzhiyun	hex
129*4882a593Smuzhiyun	default 0x100000
130*4882a593Smuzhiyun
131*4882a593Smuzhiyunconfig XIP_ROM_SIZE
132*4882a593Smuzhiyun	hex
133*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
134*4882a593Smuzhiyun	default ROM_SIZE
135*4882a593Smuzhiyun
136*4882a593Smuzhiyunconfig CPU_ADDR_BITS
137*4882a593Smuzhiyun	int
138*4882a593Smuzhiyun	default 36
139*4882a593Smuzhiyun
140*4882a593Smuzhiyunconfig HPET_ADDRESS
141*4882a593Smuzhiyun	hex
142*4882a593Smuzhiyun	default 0xfed00000 if !HPET_ADDRESS_OVERRIDE
143*4882a593Smuzhiyun
144*4882a593Smuzhiyunconfig SMM_TSEG
145*4882a593Smuzhiyun	bool
146*4882a593Smuzhiyun	default n
147*4882a593Smuzhiyun
148*4882a593Smuzhiyunconfig SMM_TSEG_SIZE
149*4882a593Smuzhiyun	hex
150*4882a593Smuzhiyun
151*4882a593Smuzhiyunconfig X86_RESET_VECTOR
152*4882a593Smuzhiyun	bool
153*4882a593Smuzhiyun	default n
154*4882a593Smuzhiyun	select BINMAN
155*4882a593Smuzhiyun
156*4882a593Smuzhiyun# The following options control where the 16-bit and 32-bit init lies
157*4882a593Smuzhiyun# If SPL is enabled then it normally holds this init code, and U-Boot proper
158*4882a593Smuzhiyun# is normally a 64-bit build.
159*4882a593Smuzhiyun#
160*4882a593Smuzhiyun# The 16-bit init refers to the reset vector and the small amount of code to
161*4882a593Smuzhiyun# get the processor into 32-bit mode. It may be in SPL or in U-Boot proper,
162*4882a593Smuzhiyun# or missing altogether if U-Boot is started from EFI or coreboot.
163*4882a593Smuzhiyun#
164*4882a593Smuzhiyun# The 32-bit init refers to processor init, running binary blobs including
165*4882a593Smuzhiyun# FSP, setting up interrupts and anything else that needs to be done in
166*4882a593Smuzhiyun# 32-bit code. It is normally in the same place as 16-bit init if that is
167*4882a593Smuzhiyun# enabled (i.e. they are both in SPL, or both in U-Boot proper).
168*4882a593Smuzhiyunconfig X86_16BIT_INIT
169*4882a593Smuzhiyun	bool
170*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
171*4882a593Smuzhiyun	default y if X86_RESET_VECTOR && !SPL
172*4882a593Smuzhiyun	help
173*4882a593Smuzhiyun	  This is enabled when 16-bit init is in U-Boot proper
174*4882a593Smuzhiyun
175*4882a593Smuzhiyunconfig SPL_X86_16BIT_INIT
176*4882a593Smuzhiyun	bool
177*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
178*4882a593Smuzhiyun	default y if X86_RESET_VECTOR && SPL
179*4882a593Smuzhiyun	help
180*4882a593Smuzhiyun	  This is enabled when 16-bit init is in SPL
181*4882a593Smuzhiyun
182*4882a593Smuzhiyunconfig X86_32BIT_INIT
183*4882a593Smuzhiyun	bool
184*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
185*4882a593Smuzhiyun	default y if X86_RESET_VECTOR && !SPL
186*4882a593Smuzhiyun	help
187*4882a593Smuzhiyun	  This is enabled when 32-bit init is in U-Boot proper
188*4882a593Smuzhiyun
189*4882a593Smuzhiyunconfig SPL_X86_32BIT_INIT
190*4882a593Smuzhiyun	bool
191*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
192*4882a593Smuzhiyun	default y if X86_RESET_VECTOR && SPL
193*4882a593Smuzhiyun	help
194*4882a593Smuzhiyun	  This is enabled when 32-bit init is in SPL
195*4882a593Smuzhiyun
196*4882a593Smuzhiyunconfig RESET_SEG_START
197*4882a593Smuzhiyun	hex
198*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
199*4882a593Smuzhiyun	default 0xffff0000
200*4882a593Smuzhiyun
201*4882a593Smuzhiyunconfig RESET_SEG_SIZE
202*4882a593Smuzhiyun	hex
203*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
204*4882a593Smuzhiyun	default 0x10000
205*4882a593Smuzhiyun
206*4882a593Smuzhiyunconfig RESET_VEC_LOC
207*4882a593Smuzhiyun	hex
208*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
209*4882a593Smuzhiyun	default 0xfffffff0
210*4882a593Smuzhiyun
211*4882a593Smuzhiyunconfig SYS_X86_START16
212*4882a593Smuzhiyun	hex
213*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
214*4882a593Smuzhiyun	default 0xfffff800
215*4882a593Smuzhiyun
216*4882a593Smuzhiyunconfig X86_LOAD_FROM_32_BIT
217*4882a593Smuzhiyun	bool "Boot from a 32-bit program"
218*4882a593Smuzhiyun	help
219*4882a593Smuzhiyun	  Define this to boot U-Boot from a 32-bit program which sets
220*4882a593Smuzhiyun	  the GDT differently. This can be used to boot directly from
221*4882a593Smuzhiyun	  any stage of coreboot, for example, bypassing the normal
222*4882a593Smuzhiyun	  payload-loading feature.
223*4882a593Smuzhiyun
224*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_512
225*4882a593Smuzhiyun	bool
226*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_1024
227*4882a593Smuzhiyun	bool
228*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_2048
229*4882a593Smuzhiyun	bool
230*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_4096
231*4882a593Smuzhiyun	bool
232*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_8192
233*4882a593Smuzhiyun	bool
234*4882a593Smuzhiyunconfig BOARD_ROMSIZE_KB_16384
235*4882a593Smuzhiyun	bool
236*4882a593Smuzhiyun
237*4882a593Smuzhiyunchoice
238*4882a593Smuzhiyun	prompt "ROM chip size"
239*4882a593Smuzhiyun	depends on X86_RESET_VECTOR
240*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_512 if BOARD_ROMSIZE_KB_512
241*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_1024 if BOARD_ROMSIZE_KB_1024
242*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_2048 if BOARD_ROMSIZE_KB_2048
243*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_4096 if BOARD_ROMSIZE_KB_4096
244*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_8192 if BOARD_ROMSIZE_KB_8192
245*4882a593Smuzhiyun	default UBOOT_ROMSIZE_KB_16384 if BOARD_ROMSIZE_KB_16384
246*4882a593Smuzhiyun	help
247*4882a593Smuzhiyun	  Select the size of the ROM chip you intend to flash U-Boot on.
248*4882a593Smuzhiyun
249*4882a593Smuzhiyun	  The build system will take care of creating a u-boot.rom file
250*4882a593Smuzhiyun	  of the matching size.
251*4882a593Smuzhiyun
252*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_512
253*4882a593Smuzhiyun	bool "512 KB"
254*4882a593Smuzhiyun	help
255*4882a593Smuzhiyun	  Choose this option if you have a 512 KB ROM chip.
256*4882a593Smuzhiyun
257*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_1024
258*4882a593Smuzhiyun	bool "1024 KB (1 MB)"
259*4882a593Smuzhiyun	help
260*4882a593Smuzhiyun	  Choose this option if you have a 1024 KB (1 MB) ROM chip.
261*4882a593Smuzhiyun
262*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_2048
263*4882a593Smuzhiyun	bool "2048 KB (2 MB)"
264*4882a593Smuzhiyun	help
265*4882a593Smuzhiyun	  Choose this option if you have a 2048 KB (2 MB) ROM chip.
266*4882a593Smuzhiyun
267*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_4096
268*4882a593Smuzhiyun	bool "4096 KB (4 MB)"
269*4882a593Smuzhiyun	help
270*4882a593Smuzhiyun	  Choose this option if you have a 4096 KB (4 MB) ROM chip.
271*4882a593Smuzhiyun
272*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_8192
273*4882a593Smuzhiyun	bool "8192 KB (8 MB)"
274*4882a593Smuzhiyun	help
275*4882a593Smuzhiyun	  Choose this option if you have a 8192 KB (8 MB) ROM chip.
276*4882a593Smuzhiyun
277*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB_16384
278*4882a593Smuzhiyun	bool "16384 KB (16 MB)"
279*4882a593Smuzhiyun	help
280*4882a593Smuzhiyun	  Choose this option if you have a 16384 KB (16 MB) ROM chip.
281*4882a593Smuzhiyun
282*4882a593Smuzhiyunendchoice
283*4882a593Smuzhiyun
284*4882a593Smuzhiyun# Map the config names to an integer (KB).
285*4882a593Smuzhiyunconfig UBOOT_ROMSIZE_KB
286*4882a593Smuzhiyun	int
287*4882a593Smuzhiyun	default 512 if UBOOT_ROMSIZE_KB_512
288*4882a593Smuzhiyun	default 1024 if UBOOT_ROMSIZE_KB_1024
289*4882a593Smuzhiyun	default 2048 if UBOOT_ROMSIZE_KB_2048
290*4882a593Smuzhiyun	default 4096 if UBOOT_ROMSIZE_KB_4096
291*4882a593Smuzhiyun	default 8192 if UBOOT_ROMSIZE_KB_8192
292*4882a593Smuzhiyun	default 16384 if UBOOT_ROMSIZE_KB_16384
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun# Map the config names to a hex value (bytes).
295*4882a593Smuzhiyunconfig ROM_SIZE
296*4882a593Smuzhiyun	hex
297*4882a593Smuzhiyun	default 0x80000 if UBOOT_ROMSIZE_KB_512
298*4882a593Smuzhiyun	default 0x100000 if UBOOT_ROMSIZE_KB_1024
299*4882a593Smuzhiyun	default 0x200000 if UBOOT_ROMSIZE_KB_2048
300*4882a593Smuzhiyun	default 0x400000 if UBOOT_ROMSIZE_KB_4096
301*4882a593Smuzhiyun	default 0x800000 if UBOOT_ROMSIZE_KB_8192
302*4882a593Smuzhiyun	default 0xc00000 if UBOOT_ROMSIZE_KB_12288
303*4882a593Smuzhiyun	default 0x1000000 if UBOOT_ROMSIZE_KB_16384
304*4882a593Smuzhiyun
305*4882a593Smuzhiyunconfig HAVE_INTEL_ME
306*4882a593Smuzhiyun	bool "Platform requires Intel Management Engine"
307*4882a593Smuzhiyun	help
308*4882a593Smuzhiyun	  Newer higher-end devices have an Intel Management Engine (ME)
309*4882a593Smuzhiyun	  which is a very large binary blob (typically 1.5MB) which is
310*4882a593Smuzhiyun	  required for the platform to work. This enforces a particular
311*4882a593Smuzhiyun	  SPI flash format. You will need to supply the me.bin file in
312*4882a593Smuzhiyun	  your board directory.
313*4882a593Smuzhiyun
314*4882a593Smuzhiyunconfig X86_RAMTEST
315*4882a593Smuzhiyun	bool "Perform a simple RAM test after SDRAM initialisation"
316*4882a593Smuzhiyun	help
317*4882a593Smuzhiyun	  If there is something wrong with SDRAM then the platform will
318*4882a593Smuzhiyun	  often crash within U-Boot or the kernel. This option enables a
319*4882a593Smuzhiyun	  very simple RAM test that quickly checks whether the SDRAM seems
320*4882a593Smuzhiyun	  to work correctly. It is not exhaustive but can save time by
321*4882a593Smuzhiyun	  detecting obvious failures.
322*4882a593Smuzhiyun
323*4882a593Smuzhiyunconfig FLASH_DESCRIPTOR_FILE
324*4882a593Smuzhiyun	string "Flash descriptor binary filename"
325*4882a593Smuzhiyun	depends on HAVE_INTEL_ME
326*4882a593Smuzhiyun	default "descriptor.bin"
327*4882a593Smuzhiyun	help
328*4882a593Smuzhiyun	  The filename of the file to use as flash descriptor in the
329*4882a593Smuzhiyun	  board directory.
330*4882a593Smuzhiyun
331*4882a593Smuzhiyunconfig INTEL_ME_FILE
332*4882a593Smuzhiyun	string "Intel Management Engine binary filename"
333*4882a593Smuzhiyun	depends on HAVE_INTEL_ME
334*4882a593Smuzhiyun	default "me.bin"
335*4882a593Smuzhiyun	help
336*4882a593Smuzhiyun	  The filename of the file to use as Intel Management Engine in the
337*4882a593Smuzhiyun	  board directory.
338*4882a593Smuzhiyun
339*4882a593Smuzhiyunconfig HAVE_FSP
340*4882a593Smuzhiyun	bool "Add an Firmware Support Package binary"
341*4882a593Smuzhiyun	depends on !EFI
342*4882a593Smuzhiyun	help
343*4882a593Smuzhiyun	  Select this option to add an Firmware Support Package binary to
344*4882a593Smuzhiyun	  the resulting U-Boot image. It is a binary blob which U-Boot uses
345*4882a593Smuzhiyun	  to set up SDRAM and other chipset specific initialization.
346*4882a593Smuzhiyun
347*4882a593Smuzhiyun	  Note: Without this binary U-Boot will not be able to set up its
348*4882a593Smuzhiyun	  SDRAM so will not boot.
349*4882a593Smuzhiyun
350*4882a593Smuzhiyunconfig FSP_FILE
351*4882a593Smuzhiyun	string "Firmware Support Package binary filename"
352*4882a593Smuzhiyun	depends on HAVE_FSP
353*4882a593Smuzhiyun	default "fsp.bin"
354*4882a593Smuzhiyun	help
355*4882a593Smuzhiyun	  The filename of the file to use as Firmware Support Package binary
356*4882a593Smuzhiyun	  in the board directory.
357*4882a593Smuzhiyun
358*4882a593Smuzhiyunconfig FSP_ADDR
359*4882a593Smuzhiyun	hex "Firmware Support Package binary location"
360*4882a593Smuzhiyun	depends on HAVE_FSP
361*4882a593Smuzhiyun	default 0xfffc0000
362*4882a593Smuzhiyun	help
363*4882a593Smuzhiyun	  FSP is not Position Independent Code (PIC) and the whole FSP has to
364*4882a593Smuzhiyun	  be rebased if it is placed at a location which is different from the
365*4882a593Smuzhiyun	  perferred base address specified during the FSP build. Use Intel's
366*4882a593Smuzhiyun	  Binary Configuration Tool (BCT) to do the rebase.
367*4882a593Smuzhiyun
368*4882a593Smuzhiyun	  The default base address of 0xfffc0000 indicates that the binary must
369*4882a593Smuzhiyun	  be located at offset 0xc0000 from the beginning of a 1MB flash device.
370*4882a593Smuzhiyun
371*4882a593Smuzhiyunconfig FSP_TEMP_RAM_ADDR
372*4882a593Smuzhiyun	hex
373*4882a593Smuzhiyun	depends on HAVE_FSP
374*4882a593Smuzhiyun	default 0x2000000
375*4882a593Smuzhiyun	help
376*4882a593Smuzhiyun	  Stack top address which is used in fsp_init() after DRAM is ready and
377*4882a593Smuzhiyun	  CAR is disabled.
378*4882a593Smuzhiyun
379*4882a593Smuzhiyunconfig FSP_SYS_MALLOC_F_LEN
380*4882a593Smuzhiyun	hex
381*4882a593Smuzhiyun	depends on HAVE_FSP
382*4882a593Smuzhiyun	default 0x100000
383*4882a593Smuzhiyun	help
384*4882a593Smuzhiyun	  Additional size of malloc() pool before relocation.
385*4882a593Smuzhiyun
386*4882a593Smuzhiyunconfig FSP_USE_UPD
387*4882a593Smuzhiyun	bool
388*4882a593Smuzhiyun	depends on HAVE_FSP
389*4882a593Smuzhiyun	default y
390*4882a593Smuzhiyun	help
391*4882a593Smuzhiyun	  Most FSPs use UPD data region for some FSP customization. But there
392*4882a593Smuzhiyun	  are still some FSPs that might not even have UPD. For such FSPs,
393*4882a593Smuzhiyun	  override this to n in their platform Kconfig files.
394*4882a593Smuzhiyun
395*4882a593Smuzhiyunconfig FSP_BROKEN_HOB
396*4882a593Smuzhiyun	bool
397*4882a593Smuzhiyun	depends on HAVE_FSP
398*4882a593Smuzhiyun	help
399*4882a593Smuzhiyun	  Indicate some buggy FSPs that does not report memory used by FSP
400*4882a593Smuzhiyun	  itself as reserved in the resource descriptor HOB. Select this to
401*4882a593Smuzhiyun	  tell U-Boot to do some additional work to ensure U-Boot relocation
402*4882a593Smuzhiyun	  do not overwrite the important boot service data which is used by
403*4882a593Smuzhiyun	  FSP, otherwise the subsequent call to fsp_notify() will fail.
404*4882a593Smuzhiyun
405*4882a593Smuzhiyunconfig FSP_LOCKDOWN_SPI
406*4882a593Smuzhiyun	bool
407*4882a593Smuzhiyun	depends on HAVE_FSP
408*4882a593Smuzhiyun	help
409*4882a593Smuzhiyun	  Some Intel FSP (like Braswell) does SPI lock-down during the call
410*4882a593Smuzhiyun	  to fsp_notify(INIT_PHASE_BOOT). This option should be turned on
411*4882a593Smuzhiyun	  for such FSP and U-Boot will configure the SPI opcode registers
412*4882a593Smuzhiyun	  before the lock-down.
413*4882a593Smuzhiyun
414*4882a593Smuzhiyunconfig ENABLE_MRC_CACHE
415*4882a593Smuzhiyun	bool "Enable MRC cache"
416*4882a593Smuzhiyun	depends on !EFI && !SYS_COREBOOT
417*4882a593Smuzhiyun	help
418*4882a593Smuzhiyun	  Enable this feature to cause MRC data to be cached in NV storage
419*4882a593Smuzhiyun	  to be used for speeding up boot time on future reboots and/or
420*4882a593Smuzhiyun	  power cycles.
421*4882a593Smuzhiyun
422*4882a593Smuzhiyun	  For platforms that use Intel FSP for the memory initialization,
423*4882a593Smuzhiyun	  please check FSP output HOB via U-Boot command 'fsp hob' to see
424*4882a593Smuzhiyun	  if there is FSP_NON_VOLATILE_STORAGE_HOB_GUID (asm/fsp/fsp_hob.h).
425*4882a593Smuzhiyun	  If such GUID does not exist, MRC cache is not avaiable on such
426*4882a593Smuzhiyun	  platform (eg: Intel Queensbay), which means selecting this option
427*4882a593Smuzhiyun	  here does not make any difference.
428*4882a593Smuzhiyun
429*4882a593Smuzhiyunconfig HAVE_MRC
430*4882a593Smuzhiyun	bool "Add a System Agent binary"
431*4882a593Smuzhiyun	depends on !HAVE_FSP
432*4882a593Smuzhiyun	help
433*4882a593Smuzhiyun	  Select this option to add a System Agent binary to
434*4882a593Smuzhiyun	  the resulting U-Boot image. MRC stands for Memory Reference Code.
435*4882a593Smuzhiyun	  It is a binary blob which U-Boot uses to set up SDRAM.
436*4882a593Smuzhiyun
437*4882a593Smuzhiyun	  Note: Without this binary U-Boot will not be able to set up its
438*4882a593Smuzhiyun	  SDRAM so will not boot.
439*4882a593Smuzhiyun
440*4882a593Smuzhiyunconfig CACHE_MRC_BIN
441*4882a593Smuzhiyun	bool
442*4882a593Smuzhiyun	depends on HAVE_MRC
443*4882a593Smuzhiyun	default n
444*4882a593Smuzhiyun	help
445*4882a593Smuzhiyun	  Enable caching for the memory reference code binary. This uses an
446*4882a593Smuzhiyun	  MTRR (memory type range register) to turn on caching for the section
447*4882a593Smuzhiyun	  of SPI flash that contains the memory reference code. This makes
448*4882a593Smuzhiyun	  SDRAM init run faster.
449*4882a593Smuzhiyun
450*4882a593Smuzhiyunconfig CACHE_MRC_SIZE_KB
451*4882a593Smuzhiyun	int
452*4882a593Smuzhiyun	depends on HAVE_MRC
453*4882a593Smuzhiyun	default 512
454*4882a593Smuzhiyun	help
455*4882a593Smuzhiyun	  Sets the size of the cached area for the memory reference code.
456*4882a593Smuzhiyun	  This ends at the end of SPI flash (address 0xffffffff) and is
457*4882a593Smuzhiyun	  measured in KB. Typically this is set to 512, providing for 0.5MB
458*4882a593Smuzhiyun	  of cached space.
459*4882a593Smuzhiyun
460*4882a593Smuzhiyunconfig DCACHE_RAM_BASE
461*4882a593Smuzhiyun	hex
462*4882a593Smuzhiyun	depends on HAVE_MRC
463*4882a593Smuzhiyun	help
464*4882a593Smuzhiyun	  Sets the base of the data cache area in memory space. This is the
465*4882a593Smuzhiyun	  start address of the cache-as-RAM (CAR) area and the address varies
466*4882a593Smuzhiyun	  depending on the CPU. Once CAR is set up, read/write memory becomes
467*4882a593Smuzhiyun	  available at this address and can be used temporarily until SDRAM
468*4882a593Smuzhiyun	  is working.
469*4882a593Smuzhiyun
470*4882a593Smuzhiyunconfig DCACHE_RAM_SIZE
471*4882a593Smuzhiyun	hex
472*4882a593Smuzhiyun	depends on HAVE_MRC
473*4882a593Smuzhiyun	default 0x40000
474*4882a593Smuzhiyun	help
475*4882a593Smuzhiyun	  Sets the total size of the data cache area in memory space. This
476*4882a593Smuzhiyun	  sets the size of the cache-as-RAM (CAR) area. Note that much of the
477*4882a593Smuzhiyun	  CAR space is required by the MRC. The CAR space available to U-Boot
478*4882a593Smuzhiyun	  is normally at the start and typically extends to 1/4 or 1/2 of the
479*4882a593Smuzhiyun	  available size.
480*4882a593Smuzhiyun
481*4882a593Smuzhiyunconfig DCACHE_RAM_MRC_VAR_SIZE
482*4882a593Smuzhiyun	hex
483*4882a593Smuzhiyun	depends on HAVE_MRC
484*4882a593Smuzhiyun	help
485*4882a593Smuzhiyun	  This is the amount of CAR (Cache as RAM) reserved for use by the
486*4882a593Smuzhiyun	  memory reference code. This depends on the implementation of the
487*4882a593Smuzhiyun	  memory reference code and must be set correctly or the board will
488*4882a593Smuzhiyun	  not boot.
489*4882a593Smuzhiyun
490*4882a593Smuzhiyunconfig HAVE_REFCODE
491*4882a593Smuzhiyun        bool "Add a Reference Code binary"
492*4882a593Smuzhiyun        help
493*4882a593Smuzhiyun          Select this option to add a Reference Code binary to the resulting
494*4882a593Smuzhiyun          U-Boot image. This is an Intel binary blob that handles system
495*4882a593Smuzhiyun          initialisation, in this case the PCH and System Agent.
496*4882a593Smuzhiyun
497*4882a593Smuzhiyun          Note: Without this binary (on platforms that need it such as
498*4882a593Smuzhiyun          broadwell) U-Boot will be missing some critical setup steps.
499*4882a593Smuzhiyun          Various peripherals may fail to work.
500*4882a593Smuzhiyun
501*4882a593Smuzhiyunconfig SMP
502*4882a593Smuzhiyun	bool "Enable Symmetric Multiprocessing"
503*4882a593Smuzhiyun	default n
504*4882a593Smuzhiyun	help
505*4882a593Smuzhiyun	  Enable use of more than one CPU in U-Boot and the Operating System
506*4882a593Smuzhiyun	  when loaded. Each CPU will be started up and information can be
507*4882a593Smuzhiyun	  obtained using the 'cpu' command. If this option is disabled, then
508*4882a593Smuzhiyun	  only one CPU will be enabled regardless of the number of CPUs
509*4882a593Smuzhiyun	  available.
510*4882a593Smuzhiyun
511*4882a593Smuzhiyunconfig MAX_CPUS
512*4882a593Smuzhiyun	int "Maximum number of CPUs permitted"
513*4882a593Smuzhiyun	depends on SMP
514*4882a593Smuzhiyun	default 4
515*4882a593Smuzhiyun	help
516*4882a593Smuzhiyun	  When using multi-CPU chips it is possible for U-Boot to start up
517*4882a593Smuzhiyun	  more than one CPU. The stack memory used by all of these CPUs is
518*4882a593Smuzhiyun	  pre-allocated so at present U-Boot wants to know the maximum
519*4882a593Smuzhiyun	  number of CPUs that may be present. Set this to at least as high
520*4882a593Smuzhiyun	  as the number of CPUs in your system (it uses about 4KB of RAM for
521*4882a593Smuzhiyun	  each CPU).
522*4882a593Smuzhiyun
523*4882a593Smuzhiyunconfig AP_STACK_SIZE
524*4882a593Smuzhiyun	hex
525*4882a593Smuzhiyun	depends on SMP
526*4882a593Smuzhiyun	default 0x1000
527*4882a593Smuzhiyun	help
528*4882a593Smuzhiyun	  Each additional CPU started by U-Boot requires its own stack. This
529*4882a593Smuzhiyun	  option sets the stack size used by each CPU and directly affects
530*4882a593Smuzhiyun	  the memory used by this initialisation process. Typically 4KB is
531*4882a593Smuzhiyun	  enough space.
532*4882a593Smuzhiyun
533*4882a593Smuzhiyunconfig CPU_INTEL_TURBO_NOT_PACKAGE_SCOPED
534*4882a593Smuzhiyun	bool
535*4882a593Smuzhiyun	help
536*4882a593Smuzhiyun	  This option indicates that the turbo mode setting is not package
537*4882a593Smuzhiyun	  scoped. i.e. turbo_enable() needs to be called on not just the
538*4882a593Smuzhiyun	  bootstrap processor (BSP).
539*4882a593Smuzhiyun
540*4882a593Smuzhiyunconfig HAVE_VGA_BIOS
541*4882a593Smuzhiyun	bool "Add a VGA BIOS image"
542*4882a593Smuzhiyun	help
543*4882a593Smuzhiyun	  Select this option if you have a VGA BIOS image that you would
544*4882a593Smuzhiyun	  like to add to your ROM.
545*4882a593Smuzhiyun
546*4882a593Smuzhiyunconfig VGA_BIOS_FILE
547*4882a593Smuzhiyun	string "VGA BIOS image filename"
548*4882a593Smuzhiyun	depends on HAVE_VGA_BIOS
549*4882a593Smuzhiyun	default "vga.bin"
550*4882a593Smuzhiyun	help
551*4882a593Smuzhiyun	  The filename of the VGA BIOS image in the board directory.
552*4882a593Smuzhiyun
553*4882a593Smuzhiyunconfig VGA_BIOS_ADDR
554*4882a593Smuzhiyun	hex "VGA BIOS image location"
555*4882a593Smuzhiyun	depends on HAVE_VGA_BIOS
556*4882a593Smuzhiyun	default 0xfff90000
557*4882a593Smuzhiyun	help
558*4882a593Smuzhiyun	  The location of VGA BIOS image in the SPI flash. For example, base
559*4882a593Smuzhiyun	  address of 0xfff90000 indicates that the image will be put at offset
560*4882a593Smuzhiyun	  0x90000 from the beginning of a 1MB flash device.
561*4882a593Smuzhiyun
562*4882a593Smuzhiyunconfig ROM_TABLE_ADDR
563*4882a593Smuzhiyun	hex
564*4882a593Smuzhiyun	default 0xf0000
565*4882a593Smuzhiyun	help
566*4882a593Smuzhiyun	  All x86 tables happen to like the address range from 0x0f0000
567*4882a593Smuzhiyun	  to 0x100000. We use 0xf0000 as the starting address to store
568*4882a593Smuzhiyun	  those tables, including PIRQ routing table, Multi-Processor
569*4882a593Smuzhiyun	  table and ACPI table.
570*4882a593Smuzhiyun
571*4882a593Smuzhiyunconfig ROM_TABLE_SIZE
572*4882a593Smuzhiyun	hex
573*4882a593Smuzhiyun	default 0x10000
574*4882a593Smuzhiyun
575*4882a593Smuzhiyunmenu "System tables"
576*4882a593Smuzhiyun	depends on !EFI && !SYS_COREBOOT
577*4882a593Smuzhiyun
578*4882a593Smuzhiyunconfig GENERATE_PIRQ_TABLE
579*4882a593Smuzhiyun	bool "Generate a PIRQ table"
580*4882a593Smuzhiyun	default n
581*4882a593Smuzhiyun	help
582*4882a593Smuzhiyun	  Generate a PIRQ routing table for this board. The PIRQ routing table
583*4882a593Smuzhiyun	  is generated by U-Boot in the system memory from 0xf0000 to 0xfffff
584*4882a593Smuzhiyun	  at every 16-byte boundary with a PCI IRQ routing signature ("$PIR").
585*4882a593Smuzhiyun	  It specifies the interrupt router information as well how all the PCI
586*4882a593Smuzhiyun	  devices' interrupt pins are wired to PIRQs.
587*4882a593Smuzhiyun
588*4882a593Smuzhiyunconfig GENERATE_SFI_TABLE
589*4882a593Smuzhiyun	bool "Generate a SFI (Simple Firmware Interface) table"
590*4882a593Smuzhiyun	help
591*4882a593Smuzhiyun	  The Simple Firmware Interface (SFI) provides a lightweight method
592*4882a593Smuzhiyun	  for platform firmware to pass information to the operating system
593*4882a593Smuzhiyun	  via static tables in memory.  Kernel SFI support is required to
594*4882a593Smuzhiyun	  boot on SFI-only platforms.  If you have ACPI tables then these are
595*4882a593Smuzhiyun	  used instead.
596*4882a593Smuzhiyun
597*4882a593Smuzhiyun	  U-Boot writes this table in write_sfi_table() just before booting
598*4882a593Smuzhiyun	  the OS.
599*4882a593Smuzhiyun
600*4882a593Smuzhiyun	  For more information, see http://simplefirmware.org
601*4882a593Smuzhiyun
602*4882a593Smuzhiyunconfig GENERATE_MP_TABLE
603*4882a593Smuzhiyun	bool "Generate an MP (Multi-Processor) table"
604*4882a593Smuzhiyun	default n
605*4882a593Smuzhiyun	help
606*4882a593Smuzhiyun	  Generate an MP (Multi-Processor) table for this board. The MP table
607*4882a593Smuzhiyun	  provides a way for the operating system to support for symmetric
608*4882a593Smuzhiyun	  multiprocessing as well as symmetric I/O interrupt handling with
609*4882a593Smuzhiyun	  the local APIC and I/O APIC.
610*4882a593Smuzhiyun
611*4882a593Smuzhiyunconfig GENERATE_ACPI_TABLE
612*4882a593Smuzhiyun	bool "Generate an ACPI (Advanced Configuration and Power Interface) table"
613*4882a593Smuzhiyun	default n
614*4882a593Smuzhiyun	select QFW if QEMU
615*4882a593Smuzhiyun	help
616*4882a593Smuzhiyun	  The Advanced Configuration and Power Interface (ACPI) specification
617*4882a593Smuzhiyun	  provides an open standard for device configuration and management
618*4882a593Smuzhiyun	  by the operating system. It defines platform-independent interfaces
619*4882a593Smuzhiyun	  for configuration and power management monitoring.
620*4882a593Smuzhiyun
621*4882a593Smuzhiyunendmenu
622*4882a593Smuzhiyun
623*4882a593Smuzhiyunconfig HAVE_ACPI_RESUME
624*4882a593Smuzhiyun	bool "Enable ACPI S3 resume"
625*4882a593Smuzhiyun	help
626*4882a593Smuzhiyun	  Select this to enable ACPI S3 resume. S3 is an ACPI-defined sleeping
627*4882a593Smuzhiyun	  state where all system context is lost except system memory. U-Boot
628*4882a593Smuzhiyun	  is responsible for restoring the machine state as it was before sleep.
629*4882a593Smuzhiyun	  It needs restore the memory controller, without overwriting memory
630*4882a593Smuzhiyun	  which is not marked as reserved. For the peripherals which lose their
631*4882a593Smuzhiyun	  registers, U-Boot needs to write the original value. When everything
632*4882a593Smuzhiyun	  is done, U-Boot needs to find out the wakeup vector provided by OSes
633*4882a593Smuzhiyun	  and jump there.
634*4882a593Smuzhiyun
635*4882a593Smuzhiyunconfig S3_VGA_ROM_RUN
636*4882a593Smuzhiyun	bool "Re-run VGA option ROMs on S3 resume"
637*4882a593Smuzhiyun	depends on HAVE_ACPI_RESUME
638*4882a593Smuzhiyun	default y if HAVE_ACPI_RESUME
639*4882a593Smuzhiyun	help
640*4882a593Smuzhiyun	  Execute VGA option ROMs in U-Boot when resuming from S3. Normally
641*4882a593Smuzhiyun	  this is needed when graphics console is being used in the kernel.
642*4882a593Smuzhiyun
643*4882a593Smuzhiyun	  Turning it off can reduce some resume time, but be aware that your
644*4882a593Smuzhiyun	  graphics console won't work without VGA options ROMs. Set it to N
645*4882a593Smuzhiyun	  if your kernel is only on a serial console.
646*4882a593Smuzhiyun
647*4882a593Smuzhiyunconfig STACK_SIZE
648*4882a593Smuzhiyun	hex
649*4882a593Smuzhiyun	depends on HAVE_ACPI_RESUME
650*4882a593Smuzhiyun	default 0x1000
651*4882a593Smuzhiyun	help
652*4882a593Smuzhiyun	  Estimated U-Boot's runtime stack size that needs to be reserved
653*4882a593Smuzhiyun	  during an ACPI S3 resume.
654*4882a593Smuzhiyun
655*4882a593Smuzhiyunconfig MAX_PIRQ_LINKS
656*4882a593Smuzhiyun	int
657*4882a593Smuzhiyun	default 8
658*4882a593Smuzhiyun	help
659*4882a593Smuzhiyun	  This variable specifies the number of PIRQ interrupt links which are
660*4882a593Smuzhiyun	  routable. On most older chipsets, this is 4, PIRQA through PIRQD.
661*4882a593Smuzhiyun	  Some newer chipsets offer more than four links, commonly up to PIRQH.
662*4882a593Smuzhiyun
663*4882a593Smuzhiyunconfig IRQ_SLOT_COUNT
664*4882a593Smuzhiyun	int
665*4882a593Smuzhiyun	default 128
666*4882a593Smuzhiyun	help
667*4882a593Smuzhiyun	  U-Boot can support up to 254 IRQ slot info in the PIRQ routing table
668*4882a593Smuzhiyun	  which in turns forms a table of exact 4KiB. The default value 128
669*4882a593Smuzhiyun	  should be enough for most boards. If this does not fit your board,
670*4882a593Smuzhiyun	  change it according to your needs.
671*4882a593Smuzhiyun
672*4882a593Smuzhiyunconfig PCIE_ECAM_BASE
673*4882a593Smuzhiyun	hex
674*4882a593Smuzhiyun	default 0xe0000000
675*4882a593Smuzhiyun	help
676*4882a593Smuzhiyun	  This is the memory-mapped address of PCI configuration space, which
677*4882a593Smuzhiyun	  is only available through the Enhanced Configuration Access
678*4882a593Smuzhiyun	  Mechanism (ECAM) with PCI Express. It can be set up almost
679*4882a593Smuzhiyun	  anywhere. Before it is set up, it is possible to access PCI
680*4882a593Smuzhiyun	  configuration space through I/O access, but memory access is more
681*4882a593Smuzhiyun	  convenient. Using this, PCI can be scanned and configured. This
682*4882a593Smuzhiyun	  should be set to a region that does not conflict with memory
683*4882a593Smuzhiyun	  assigned to PCI devices - i.e. the memory and prefetch regions, as
684*4882a593Smuzhiyun	  passed to pci_set_region().
685*4882a593Smuzhiyun
686*4882a593Smuzhiyunconfig PCIE_ECAM_SIZE
687*4882a593Smuzhiyun	hex
688*4882a593Smuzhiyun	default 0x10000000
689*4882a593Smuzhiyun	help
690*4882a593Smuzhiyun	  This is the size of memory-mapped address of PCI configuration space,
691*4882a593Smuzhiyun	  which is only available through the Enhanced Configuration Access
692*4882a593Smuzhiyun	  Mechanism (ECAM) with PCI Express. Each bus consumes 1 MiB memory,
693*4882a593Smuzhiyun	  so a default 0x10000000 size covers all of the 256 buses which is the
694*4882a593Smuzhiyun	  maximum number of PCI buses as defined by the PCI specification.
695*4882a593Smuzhiyun
696*4882a593Smuzhiyunconfig I8259_PIC
697*4882a593Smuzhiyun	bool
698*4882a593Smuzhiyun	default y
699*4882a593Smuzhiyun	help
700*4882a593Smuzhiyun	  Intel 8259 ISA compatible chipset incorporates two 8259 (master and
701*4882a593Smuzhiyun	  slave) interrupt controllers. Include this to have U-Boot set up
702*4882a593Smuzhiyun	  the interrupt correctly.
703*4882a593Smuzhiyun
704*4882a593Smuzhiyunconfig I8254_TIMER
705*4882a593Smuzhiyun	bool
706*4882a593Smuzhiyun	default y
707*4882a593Smuzhiyun	help
708*4882a593Smuzhiyun	  Intel 8254 timer contains three counters which have fixed uses.
709*4882a593Smuzhiyun	  Include this to have U-Boot set up the timer correctly.
710*4882a593Smuzhiyun
711*4882a593Smuzhiyunconfig SEABIOS
712*4882a593Smuzhiyun	bool "Support booting SeaBIOS"
713*4882a593Smuzhiyun	help
714*4882a593Smuzhiyun	  SeaBIOS is an open source implementation of a 16-bit X86 BIOS.
715*4882a593Smuzhiyun	  It can run in an emulator or natively on X86 hardware with the use
716*4882a593Smuzhiyun	  of coreboot/U-Boot. By turning on this option, U-Boot prepares
717*4882a593Smuzhiyun	  all the configuration tables that are necessary to boot SeaBIOS.
718*4882a593Smuzhiyun
719*4882a593Smuzhiyun	  Check http://www.seabios.org/SeaBIOS for details.
720*4882a593Smuzhiyun
721*4882a593Smuzhiyunconfig HIGH_TABLE_SIZE
722*4882a593Smuzhiyun	hex "Size of configuration tables which reside in high memory"
723*4882a593Smuzhiyun	default 0x10000
724*4882a593Smuzhiyun	depends on SEABIOS
725*4882a593Smuzhiyun	help
726*4882a593Smuzhiyun	  SeaBIOS itself resides in E seg and F seg, where U-Boot puts all
727*4882a593Smuzhiyun	  configuration tables like PIRQ/MP/ACPI. To avoid conflicts, U-Boot
728*4882a593Smuzhiyun	  puts a copy of configuration tables in high memory region which
729*4882a593Smuzhiyun	  is reserved on the stack before relocation. The region size is
730*4882a593Smuzhiyun	  determined by this option.
731*4882a593Smuzhiyun
732*4882a593Smuzhiyun	  Increse it if the default size does not fit the board's needs.
733*4882a593Smuzhiyun	  This is most likely due to a large ACPI DSDT table is used.
734*4882a593Smuzhiyun
735*4882a593Smuzhiyunsource "arch/x86/lib/efi/Kconfig"
736*4882a593Smuzhiyun
737*4882a593Smuzhiyunendmenu
738