public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86: add setup_ioapic_ids for numaq in x86_quirks
@ 2008-07-25  9:14 Yinghai Lu
       [not found] ` <200807250215.54393.yhlu.kernel@gmail.com>
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Yinghai Lu @ 2008-07-25  9:14 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin; +Cc: linux-kernel


Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>

---
 arch/x86/kernel/io_apic_32.c |    5 ++---
 arch/x86/kernel/numaq_32.c   |    7 +++++++
 include/asm-x86/setup.h      |    1 +
 3 files changed, 10 insertions(+), 3 deletions(-)

Index: linux-2.6/arch/x86/kernel/io_apic_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/io_apic_32.c
+++ linux-2.6/arch/x86/kernel/io_apic_32.c
@@ -46,6 +46,7 @@
 #include <asm/nmi.h>
 #include <asm/msidef.h>
 #include <asm/hypertransport.h>
+#include <asm/setup.h>
 
 #include <mach_apic.h>
 #include <mach_apicdef.h>
@@ -1739,10 +1740,8 @@ static void __init setup_ioapic_ids_from
 	unsigned char old_id;
 	unsigned long flags;
 
-#ifdef CONFIG_X86_NUMAQ
-	if (found_numaq)
+	if (x86_quirks->setup_ioapic_ids && x86_quirks->setup_ioapic_ids())
 		return;
-#endif
 
 	/*
 	 * Don't check I/O APIC IDs for xAPIC systems.  They have
Index: linux-2.6/arch/x86/kernel/numaq_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/numaq_32.c
+++ linux-2.6/arch/x86/kernel/numaq_32.c
@@ -229,6 +229,12 @@ static void __init smp_read_mpc_oem(stru
 	}
 }
 
+static int __init numaq_setup_ioapic_ids(void)
+{
+	/* so can skip it */
+	return 1;
+}
+
 static struct x86_quirks numaq_x86_quirks __initdata = {
 	.arch_pre_time_init	= numaq_pre_time_init,
 	.arch_time_init		= NULL,
@@ -243,6 +249,7 @@ static struct x86_quirks numaq_x86_quirk
 	.mpc_oem_bus_info	= mpc_oem_bus_info,
 	.mpc_oem_pci_bus	= mpc_oem_pci_bus,
 	.smp_read_mpc_oem	= smp_read_mpc_oem,
+	.setup_ioapic_ids	= numaq_setup_ioapic_ids,
 };
 
 void numaq_mps_oem_check(struct mp_config_table *mpc, char *oem,
Index: linux-2.6/include/asm-x86/setup.h
===================================================================
--- linux-2.6.orig/include/asm-x86/setup.h
+++ linux-2.6/include/asm-x86/setup.h
@@ -38,6 +38,7 @@ struct x86_quirks {
 	void (*mpc_oem_pci_bus)(struct mpc_config_bus *m);
 	void (*smp_read_mpc_oem)(struct mp_config_oemtable *oemtable,
                                     unsigned short oemsize);
+	int (*setup_ioapic_ids)(void);
 };
 
 extern struct x86_quirks *x86_quirks;

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-07-26 14:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-25  9:14 [PATCH] x86: add setup_ioapic_ids for numaq in x86_quirks Yinghai Lu
     [not found] ` <200807250215.54393.yhlu.kernel@gmail.com>
     [not found]   ` <200807250216.37616.yhlu.kernel@gmail.com>
2008-07-25  9:17     ` [PATCH] x86: mach-bigsmp to bigsmp Yinghai Lu
2008-07-25  9:17   ` [PATCH] x86: mach_es7000 to es7000 Yinghai Lu
     [not found] ` <200807250215.15588.yhlu.kernel@gmail.com>
2008-07-25  9:17   ` [PATCH] x86: mach_summit to summit Yinghai Lu
2008-07-25  9:17 ` [PATCH] x86: mach-numaq to numaq Yinghai Lu
2008-07-26 14:33 ` [PATCH] x86: add setup_ioapic_ids for numaq in x86_quirks Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox