From 797960fda18688fc309bb12c98912fa6eb508733 Mon Sep 17 00:00:00 2001
From: Graeme Russ <graeme.russ@gmail.com>
Date: Sun, 22 Aug 2010 16:25:59 +1000
Subject: [PATCH] x86: Fix x86 Cold Boot

Commit 077e1958ca4afe12d88043b123ded058c51b89f7 broke the ability of the
x86 port to boot from a cold-reset by removing the initial IDT. Re-
instate the initial IDT to allow cold-booting of x86 boards
---
 arch/i386/cpu/start16.S | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/i386/cpu/start16.S b/arch/i386/cpu/start16.S
index 3e8b2cc5c4..ebe5835841 100644
--- a/arch/i386/cpu/start16.S
+++ b/arch/i386/cpu/start16.S
@@ -45,6 +45,7 @@ board_init16_ret:
 	wbinvd
 
 	/* load the temporary Global Descriptor Table */
+o32 cs	lidt	idt_ptr
 o32 cs	lgdt	gdt_ptr
 
 	/* Now, we enter protected mode */
@@ -68,6 +69,10 @@ code32start:
 	.long	_start		/* offset */
 	.word	0x10		/* segment */
 
+idt_ptr:
+	.word	0		/* limit */
+	.long	0		/* base */
+
 /*
  * The following Global Descriptor Table is just enough to get us into
  * 'Flat Protected Mode' - It will be discarded as soon as the final
-- 
2.39.5