[PATCH] 2/8 Move NUMA-Q support into subarch

From: Martin J. Bligh (mbligh@aracnet.com)
Date: Mon Dec 23 2002 - 01:39:55 EST


This patch adds a shell of a NUMA-Q subarch directory, and copies
mach-default/mach_apic.h into it. I then edited the default version
to remove the NUMA-Q stuff, and the NUMA-Q version to remove the
default stuff.

diff -urpN -X /home/fletch/.diff.exclude 01-subarch/arch/i386/Makefile 11-numaq1/arch/i386/Makefile
--- 01-subarch/arch/i386/Makefile Sun Dec 22 12:08:42 2002
+++ 11-numaq1/arch/i386/Makefile Sun Dec 22 12:09:22 2002
@@ -53,6 +53,10 @@ mcore-y := mach-default
 mflags-$(CONFIG_VISWS) := -Iinclude/asm-i386/mach-visws
 mcore-$(CONFIG_VISWS) := mach-visws
 
+#NUMAQ subarch support
+mflags-$(CONFIG_X86_NUMAQ) := -Iinclude/asm-i386/mach-numaq
+mcore-$(CONFIG_X86_NUMAQ) := mach-default
+
 #add other subarch support here
 
 #default subarch .h files
diff -urpN -X /home/fletch/.diff.exclude 01-subarch/include/asm-i386/mach-default/mach_apic.h 11-numaq1/include/asm-i386/mach-default/mach_apic.h
--- 01-subarch/include/asm-i386/mach-default/mach_apic.h Sun Dec 22 12:08:42 2002
+++ 11-numaq1/include/asm-i386/mach-default/mach_apic.h Sun Dec 22 12:09:22 2002
@@ -12,7 +12,7 @@ static inline unsigned long calculate_ld
 #define APIC_DFR_VALUE (APIC_DFR_FLAT)
 
 #ifdef CONFIG_SMP
- #define TARGET_CPUS (clustered_apic_mode ? 0xf : cpu_online_map)
+ #define TARGET_CPUS (cpu_online_map)
 #else
  #define TARGET_CPUS 0x01
 #endif
@@ -27,15 +27,12 @@ static inline void summit_check(char *oe
 static inline void clustered_apic_check(void)
 {
         printk("Enabling APIC mode: %s. Using %d I/O APICs\n",
- (clustered_apic_mode ? "NUMA-Q" : "Flat"), nr_ioapics);
+ "Flat", nr_ioapics);
 }
 
 static inline int cpu_present_to_apicid(int mps_cpu)
 {
- if (clustered_apic_mode)
- return ( ((mps_cpu/4)*16) + (1<<(mps_cpu%4)) );
- else
- return mps_cpu;
+ return mps_cpu;
 }
 
 static inline unsigned long apicid_to_cpu_present(int apicid)
diff -urpN -X /home/fletch/.diff.exclude 01-subarch/include/asm-i386/mach-numaq/mach_apic.h 11-numaq1/include/asm-i386/mach-numaq/mach_apic.h
--- 01-subarch/include/asm-i386/mach-numaq/mach_apic.h Wed Dec 31 16:00:00 1969
+++ 11-numaq1/include/asm-i386/mach-numaq/mach_apic.h Sun Dec 22 12:09:22 2002
@@ -0,0 +1,39 @@
+#ifndef __ASM_MACH_APIC_H
+#define __ASM_MACH_APIC_H
+
+static inline unsigned long calculate_ldr(unsigned long old)
+{
+ unsigned long id;
+
+ id = 1UL << smp_processor_id();
+ return ((old & ~APIC_LDR_MASK) | SET_APIC_LOGICAL_ID(id));
+}
+
+#define APIC_DFR_VALUE (APIC_DFR_FLAT)
+
+#define TARGET_CPUS (0xf)
+
+#define APIC_BROADCAST_ID 0x0F
+#define check_apicid_used(bitmap, apicid) (bitmap & (1 << apicid))
+
+static inline void summit_check(char *oem, char *productid)
+{
+}
+
+static inline void clustered_apic_check(void)
+{
+ printk("Enabling APIC mode: %s. Using %d I/O APICs\n",
+ "NUMA-Q", nr_ioapics);
+}
+
+static inline int cpu_present_to_apicid(int mps_cpu)
+{
+ return ( ((mps_cpu/4)*16) + (1<<(mps_cpu%4)) );
+}
+
+static inline unsigned long apicid_to_cpu_present(int apicid)
+{
+ return (1ul << apicid);
+}
+
+#endif /* __ASM_MACH_APIC_H */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Dec 23 2002 - 22:00:31 EST