From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Wed, 17 Dec 2003 08:56:34 -0500 (EST) From: Zwane Mwaikambo Subject: Re: 2.6.0-test11-mm1 In-Reply-To: <20031217014350.028460b2.akpm@osdl.org> Message-ID: References: <20031217014350.028460b2.akpm@osdl.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-linux-mm@kvack.org Return-Path: To: Andrew Morton Cc: Linux Kernel , linux-mm@kvack.org List-ID: Hullo Andrew, I believe this was the intention; On Wed, 17 Dec 2003, Andrew Morton wrote: > mpparse_es7000.patch > mpparse: fix IRQ breakage from the es7000 merge For ES7000 add an offset of 16 to the irq in order to setup a mapping where ISA/legacy interrupts are in the 0-15 range and PCI 16 and above. This was a cleanup fix in order to facilitate easy differentiating between legacy and non legacy interrupt setup. === The ES7000 merge added a bit of code of offset the IRQ numbers. We're not too sure why; it wasn't changelogged. But it broke other systems, so this patch arranges for that code to only be activated on es7000 machines. arch/i386/kernel/dmi_scan.c | 1 + arch/i386/kernel/mpparse.c | 7 +++++-- arch/i386/mach-es7000/es7000.c | 2 -- include/asm-i386/system.h | 1 + 4 files changed, 7 insertions(+), 4 deletions(-) diff -puN arch/i386/kernel/dmi_scan.c~mpparse_es7000 arch/i386/kernel/dmi_scan.c --- 25/arch/i386/kernel/dmi_scan.c~mpparse_es7000 2003-11-21 01:30:11.000000000 -0800 +++ 25-akpm/arch/i386/kernel/dmi_scan.c 2003-11-21 01:30:11.000000000 -0800 @@ -16,6 +16,7 @@ EXPORT_SYMBOL(dmi_broken); int is_sony_vaio_laptop; int is_unsafe_smbus; +int es7000_plat = 0; struct dmi_header { diff -puN arch/i386/kernel/mpparse.c~mpparse_es7000 arch/i386/kernel/mpparse.c --- 25/arch/i386/kernel/mpparse.c~mpparse_es7000 2003-11-21 01:30:11.000000000 -0800 +++ 25-akpm/arch/i386/kernel/mpparse.c 2003-11-21 01:30:11.000000000 -0800 @@ -1129,8 +1129,11 @@ void __init mp_parse_prt (void) 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 -puN arch/i386/mach-es7000/es7000.c~mpparse_es7000 arch/i386/mach-es7000/es7000.c --- 25/arch/i386/mach-es7000/es7000.c~mpparse_es7000 2003-11-21 01:30:11.000000000 -0800 +++ 25-akpm/arch/i386/mach-es7000/es7000.c 2003-11-21 01:30:11.000000000 -0800 @@ -51,8 +51,6 @@ struct mip_reg *host_reg; int mip_port; unsigned long mip_addr, host_addr; -static int es7000_plat; - /* * Parse the OEM Table */ diff -puN include/asm-i386/system.h~mpparse_es7000 include/asm-i386/system.h --- 25/include/asm-i386/system.h~mpparse_es7000 2003-11-21 01:30:11.000000000 -0800 +++ 25-akpm/include/asm-i386/system.h 2003-11-21 01:30:11.000000000 -0800 @@ -470,6 +470,7 @@ void enable_hlt(void); 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 _ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: aart@kvack.org