Skip to contentSkip to conversation

x86: make LOAD_FROM_32_BIT visible for platforms

PATCH New Andy Shevchenko 2 participants 3 messages Feb 5, 2017 – Feb 7, 2017 x86

lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 x86: make LOAD_FROM_32_BIT visible for platforms

This option is useful not only for development, but for the platforms where U-Boot is run from custom ROM bootloader. For example, Intel Edison is that board.

Make this option visible that platforms can select it if needed.

---
- remove 'default n'
- fix spelling in commit message

 arch/x86/Kconfig     |  8 ++++++++
 arch/x86/cpu/start.S | 12 ++----------
 2 files changed, 10 insertions(+), 10 deletions(-)
arch/x86/Kconfig +8 -0
index 0884af22a7..07d0a6876b 100644
@@ -109,6 +109,14 @@ config SYS_X86_START16
 	depends on X86_RESET_VECTOR
 	default 0xfffff800
 
+config X86_LOAD_FROM_32_BIT
+	bool "Boot from a 32-bit program"
+	help
+	  Define this to boot U-Boot from a 32-bit program which sets
+	  the GDT differently. This can be used to boot directly from
+	  any stage of coreboot, for example, bypassing the normal
+	  payload-loading feature.
+
 config BOARD_ROMSIZE_KB_512
 	bool
 config BOARD_ROMSIZE_KB_1024
arch/x86/cpu/start.S +2 -10
index a5cba1cf2a..8de55a0af1 100644
@@ -18,14 +18,6 @@
 #include <generated/generic-asm-offsets.h>
 #include <generated/asm-offsets.h>
 
-/*
- * Define this to boot U-Boot from a 32-bit program which sets the GDT
- * differently. This can be used to boot directly from any stage of coreboot,
- * for example, bypassing the normal payload-loading feature.
- * This is only useful for development.
- */
-#undef LOAD_FROM_32_BIT
-
 .section .text
 .code32
 .globl _start
@@ -76,7 +68,7 @@ _start:
 	/* Save table pointer */
 	movl	%ecx, %esi
 
-#ifdef LOAD_FROM_32_BIT
+#ifdef CONFIG_X86_LOAD_FROM_32_BIT
 	lgdt	gdt_ptr2
 #endif
 
@@ -233,7 +225,7 @@ multiboot_header:
 	/* entry addr */
 	.long	CONFIG_SYS_TEXT_BASE
 
-#ifdef LOAD_FROM_32_BIT
+#ifdef CONFIG_X86_LOAD_FROM_32_BIT
 	/*
 	 * The following Global Descriptor Table is just enough to get us into
 	 * 'Flat Protected Mode' - It will be discarded as soon as the final
Signature · 1 line
2.11.0
#1 lore raw

PATCH v3 1/1 x86: make LOAD_FROM_32_BIT visible for platforms

Quoted 6 lines · Andy Shevchenko

This option is useful not only for development, but for the platforms where U-Boot is run from custom ROM bootloader. For example, Intel Edison is that board.

Make this option visible that platforms can select it if needed.

Quoted 8 lines

---
- remove 'default n'
- fix spelling in commit message

 arch/x86/Kconfig     |  8 ++++++++
 arch/x86/cpu/start.S | 12 ++----------
 2 files changed, 10 insertions(+), 10 deletions(-)
#2 lore raw

PATCH v3 1/1 x86: make LOAD_FROM_32_BIT visible for platforms

Quoted 17 lines · Bin Meng
Quoted 6 lines · Andy Shevchenko

This option is useful not only for development, but for the platforms where U-Boot is run from custom ROM bootloader. For example, Intel Edison is that board.

Make this option visible that platforms can select it if needed.

Quoted 8 lines

---
- remove 'default n'
- fix spelling in commit message

 arch/x86/Kconfig     |  8 ++++++++
 arch/x86/cpu/start.S | 12 ++----------
 2 files changed, 10 insertions(+), 10 deletions(-)
Quoted 1 line

applied to u-boot-x86, thanks!