# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#	           ChangeSet	1.1476  -> 1.1477 
#	include/asm-i386/system.h	1.29    -> 1.30   
#	arch/i386/kernel/mpparse.c	1.59    -> 1.60   
#	arch/i386/kernel/dmi_scan.c	1.49    -> 1.50   
#	arch/i386/mach-es7000/es7000.c	1.1     -> 1.2    
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/11/21	len.brown@intel.com	1.1477
# [ACPI] prevent ES7000 tweak from breaking i386 IOAPIC (Andrew de Quincey)
# --------------------------------------------
#
diff -Nru a/arch/i386/kernel/dmi_scan.c b/arch/i386/kernel/dmi_scan.c
--- a/arch/i386/kernel/dmi_scan.c	Fri Nov 21 01:43:21 2003
+++ b/arch/i386/kernel/dmi_scan.c	Fri Nov 21 01:43:21 2003
@@ -16,6 +16,7 @@
 
 int is_sony_vaio_laptop;
 int is_unsafe_smbus;
+int es7000_plat = 0;
 
 struct dmi_header
 {
diff -Nru a/arch/i386/kernel/mpparse.c b/arch/i386/kernel/mpparse.c
--- a/arch/i386/kernel/mpparse.c	Fri Nov 21 01:43:21 2003
+++ b/arch/i386/kernel/mpparse.c	Fri Nov 21 01:43:21 2003
@@ -1129,8 +1129,11 @@
 			continue;
 		ioapic_pin = irq - mp_ioapic_routing[ioapic].irq_start;
 
-		if (!ioapic && (irq < 16))
-			irq += 16;
+		if (es7000_plat) {
+			if (!ioapic && (irq < 16))
+				irq += 16;
+		}
+
 		/* 
 		 * Avoid pin reprogramming.  PRTs typically include entries  
 		 * with redundant pin->irq mappings (but unique PCI devices);
diff -Nru a/arch/i386/mach-es7000/es7000.c b/arch/i386/mach-es7000/es7000.c
--- a/arch/i386/mach-es7000/es7000.c	Fri Nov 21 01:43:21 2003
+++ b/arch/i386/mach-es7000/es7000.c	Fri Nov 21 01:43:21 2003
@@ -51,8 +51,6 @@
 int 			mip_port;
 unsigned long		mip_addr, host_addr;
 
-static int		es7000_plat;
-
 /*
  * Parse the OEM Table
  */
diff -Nru a/include/asm-i386/system.h b/include/asm-i386/system.h
--- a/include/asm-i386/system.h	Fri Nov 21 01:43:21 2003
+++ b/include/asm-i386/system.h	Fri Nov 21 01:43:21 2003
@@ -470,6 +470,7 @@
 
 extern unsigned long dmi_broken;
 extern int is_sony_vaio_laptop;
+extern int es7000_plat;
 
 #define BROKEN_ACPI_Sx		0x0001
 #define BROKEN_INIT_AFTER_S1	0x0002