فهرست منبع

Merge git://git.denx.de/u-boot-x86

Tom Rini 8 سال پیش
والد
کامیت
4d6f9e0d21
4فایلهای تغییر یافته به همراه21 افزوده شده و 2 حذف شده
  1. 14 0
      arch/x86/Kconfig
  2. 1 1
      arch/x86/cpu/i386/interrupt.c
  3. 2 1
      arch/x86/cpu/mp_init.c
  4. 4 0
      arch/x86/lib/zimage.c

+ 14 - 0
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"

+ 1 - 1
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",

+ 2 - 1
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

+ 4 - 0
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);
 	}