Add hardware subarchitecture ID for Moorestown in setup header
diff --git a/bootparam.h b/bootparam.h
index bd50669..42583ca 100644
--- a/bootparam.h
+++ b/bootparam.h
@@ -271,4 +271,8 @@
 	struct edd_info eddbuf[EDDMAXNR];		/* 0xd00 */
 	__u8  _pad9[276];				/* 0xeec */
 } __attribute__((packed));
+#define X86_SUBARCH_PC			0
+#define X86_SUBARCH_LGUEST 		1
+#define X86_SUBARCH_XEN			2
+#define X86_SUBARCH_MRST		3
 
diff --git a/bootstub.c b/bootstub.c
index 2398af9..9bbf069 100644
--- a/bootstub.c
+++ b/bootstub.c
@@ -95,6 +95,7 @@
 	bp->hdr.type_of_loader = 0xff; //bootstub is unknown bootloader for kernel :)
 	bp->hdr.ramdisk_size = *(u32 *)INITRD_SIZE_OFFSET;
 	bp->hdr.ramdisk_image = (bp->alt_mem_k*1024 - bp->hdr.ramdisk_size) & 0xFFFFF000;
+	bp->hdr.hardware_subarch = X86_SUBARCH_MRST;
 	memcpy((u8*)bp->hdr.ramdisk_image, (u8 *)BZIMAGE_OFFSET + *(u32 *)BZIMAGE_SIZE_OFFSET, bp->hdr.ramdisk_size);
 }