浏览代码

x86: baytrail: Support operation as an EFI payload

Disable a few things which interfere with the EFI init. This allows the
Minnowboard MAX to boot into EFI, load a U-Boot payload then boot to the
U-Boot prompt.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Simon Glass 9 年之前
父节点
当前提交
b4302582f3
共有 4 个文件被更改,包括 8 次插入3 次删除
  1. 1 1
      arch/x86/cpu/baytrail/Kconfig
  2. 2 0
      arch/x86/cpu/baytrail/cpu.c
  3. 2 0
      arch/x86/cpu/baytrail/valleyview.c
  4. 3 2
      board/intel/minnowmax/Kconfig

+ 1 - 1
arch/x86/cpu/baytrail/Kconfig

@@ -6,4 +6,4 @@
 
 config INTEL_BAYTRAIL
 	bool
-	select HAVE_FSP
+	select HAVE_FSP if !EFI

+ 2 - 0
arch/x86/cpu/baytrail/cpu.c

@@ -45,6 +45,8 @@ static void set_max_freq(void)
 
 static int cpu_x86_baytrail_probe(struct udevice *dev)
 {
+	if (!ll_boot_init())
+		return 0;
 	debug("Init BayTrail core\n");
 
 	/*

+ 2 - 0
arch/x86/cpu/baytrail/valleyview.c

@@ -21,6 +21,7 @@ int cpu_mmc_init(bd_t *bis)
 			    ARRAY_SIZE(mmc_supported));
 }
 
+#ifndef CONFIG_EFI_APP
 int arch_cpu_init(void)
 {
 	int ret;
@@ -43,3 +44,4 @@ int arch_misc_init(void)
 
 	return 0;
 }
+#endif

+ 3 - 2
board/intel/minnowmax/Kconfig

@@ -13,11 +13,12 @@ config SYS_CONFIG_NAME
 	default "minnowmax"
 
 config SYS_TEXT_BASE
-	default 0xfff00000
+	default 0xfff00000 if !EFI_STUB
+	default 0x01110000 if EFI_STUB
 
 config BOARD_SPECIFIC_OPTIONS # dummy
 	def_bool y
-	select X86_RESET_VECTOR
+	select X86_RESET_VECTOR if !EFI_STUB
 	select INTEL_BAYTRAIL
 	select BOARD_ROMSIZE_KB_8192