summaryrefslogtreecommitdiffstats
path: root/include/asm-i386/mach-summit/mach_apic.h
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-09-28 00:13:53 +0200
committerJeff Garzik <jeff@garzik.org>2006-09-28 00:13:53 +0200
commitaebb1153ac54ddbbd3d3f0481a193f4bf0ead53b (patch)
tree57425aa83c8bed5b41af7e3408024fe1f2fdded9 /include/asm-i386/mach-summit/mach_apic.h
parentMerge branch 'upstream' of git://lost.foo-projects.org/~ahkok/git/netdev-2.6 ... (diff)
parentMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/... (diff)
downloadlinux-aebb1153ac54ddbbd3d3f0481a193f4bf0ead53b.tar.xz
linux-aebb1153ac54ddbbd3d3f0481a193f4bf0ead53b.zip
Merge branch 'master' into upstream
Diffstat (limited to 'include/asm-i386/mach-summit/mach_apic.h')
-rw-r--r--include/asm-i386/mach-summit/mach_apic.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/asm-i386/mach-summit/mach_apic.h b/include/asm-i386/mach-summit/mach_apic.h
index 9fd073286289..a81b05961595 100644
--- a/include/asm-i386/mach-summit/mach_apic.h
+++ b/include/asm-i386/mach-summit/mach_apic.h
@@ -46,10 +46,12 @@ extern u8 cpu_2_logical_apicid[];
static inline void init_apic_ldr(void)
{
unsigned long val, id;
- int i, count;
- u8 lid;
+ int count = 0;
u8 my_id = (u8)hard_smp_processor_id();
u8 my_cluster = (u8)apicid_cluster(my_id);
+#ifdef CONFIG_SMP
+ u8 lid;
+ int i;
/* Create logical APIC IDs by counting CPUs already in cluster. */
for (count = 0, i = NR_CPUS; --i >= 0; ) {
@@ -57,6 +59,7 @@ static inline void init_apic_ldr(void)
if (lid != BAD_APICID && apicid_cluster(lid) == my_cluster)
++count;
}
+#endif
/* We only have a 4 wide bitmap in cluster mode. If a deranged
* BIOS puts 5 CPUs in one APIC cluster, we're hosed. */
BUG_ON(count >= XAPIC_DEST_CPUS_SHIFT);
@@ -91,9 +94,13 @@ static inline int apicid_to_node(int logical_apicid)
/* Mapping from cpu number to logical apicid */
static inline int cpu_to_logical_apicid(int cpu)
{
+#ifdef CONFIG_SMP
if (cpu >= NR_CPUS)
return BAD_APICID;
return (int)cpu_2_logical_apicid[cpu];
+#else
+ return logical_smp_processor_id();
+#endif
}
static inline int cpu_present_to_apicid(int mps_cpu)