summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2017-02-22 10:27:37 -0500
committerTom Rini <trini@konsulko.com>2017-02-22 10:27:37 -0500
commit4d6f9e0d21bb223ace577030ef69b8fbbd98f678 (patch)
tree761f36419275afd3b7b5546c4ec1c0ec4d175f34
parent79be18a60f577e776068e2b1687bfa1c7bd59537 (diff)
parent308c75e08deac2933fbc63a1e9521343e710279c (diff)
downloadu-boot-imx-4d6f9e0d21bb223ace577030ef69b8fbbd98f678.zip
u-boot-imx-4d6f9e0d21bb223ace577030ef69b8fbbd98f678.tar.gz
u-boot-imx-4d6f9e0d21bb223ace577030ef69b8fbbd98f678.tar.bz2
Merge git://git.denx.de/u-boot-x86
-rw-r--r--arch/x86/Kconfig14
-rw-r--r--arch/x86/cpu/i386/interrupt.c2
-rw-r--r--arch/x86/cpu/mp_init.c3
-rw-r--r--arch/x86/lib/zimage.c4
4 files changed, 21 insertions, 2 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 5f9597b..dfdd756 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -80,6 +80,20 @@ config VENDOR_INTEL
endchoice
+# subarchitectures-specific options below
+config INTEL_MID
+ bool "Intel MID platform support"
+ help
+ Select to build a U-Boot capable of supporting Intel MID
+ (Mobile Internet Device) platform systems which do not have
+ the PCI legacy interfaces.
+
+ If you are building for a PC class system say N here.
+
+ Intel MID platforms are based on an Intel processor and
+ chipset which consume less power than most of the x86
+ derivatives.
+
# board-specific options below
source "board/advantech/Kconfig"
source "board/congatec/Kconfig"
diff --git a/arch/x86/cpu/i386/interrupt.c b/arch/x86/cpu/i386/interrupt.c
index a058303..ba576fe 100644
--- a/arch/x86/cpu/i386/interrupt.c
+++ b/arch/x86/cpu/i386/interrupt.c
@@ -28,7 +28,7 @@ DECLARE_GLOBAL_DATA_PTR;
".type irq_"#x", @function\n" \
"irq_"#x":\n" \
"pushl $"#x"\n" \
- "jmp irq_common_entry\n"
+ "jmp.d32 irq_common_entry\n"
static char *exceptions[] = {
"Divide Error",
diff --git a/arch/x86/cpu/mp_init.c b/arch/x86/cpu/mp_init.c
index 988073c..cfd9bb4 100644
--- a/arch/x86/cpu/mp_init.c
+++ b/arch/x86/cpu/mp_init.c
@@ -248,7 +248,8 @@ static int load_sipi_vector(atomic_t **ap_countp, int num_cpus)
if (!stack)
return -ENOMEM;
params->stack_top = (u32)(stack + size);
-#if !defined(CONFIG_QEMU) && !defined(CONFIG_HAVE_FSP)
+#if !defined(CONFIG_QEMU) && !defined(CONFIG_HAVE_FSP) && \
+ !defined(CONFIG_INTEL_MID)
params->microcode_ptr = ucode_base;
debug("Microcode at %x\n", params->microcode_ptr);
#endif
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index b6b0f2b..aafbeb0 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -246,6 +246,10 @@ int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot,
hdr->setup_move_size = 0x9100;
}
+#if defined(CONFIG_INTEL_MID)
+ hdr->hardware_subarch = X86_SUBARCH_INTEL_MID;
+#endif
+
/* build command line at COMMAND_LINE_OFFSET */
build_command_line(cmd_line, auto_boot);
}