aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2005-11-06 21:18:13 -0500
committerPaul Mackerras <paulus@samba.org>2005-11-06 21:18:13 -0500
commit2249ca9d60d3a8a1f6f223f0f0a0283fcb7ce33e (patch)
tree33a5c8d6e2363013db1052f474c1225c472e3fcd
parentdcad47fc423ac9f4934579af814fa2dad5c8081b (diff)
powerpc: Various UP build fixes
Mostly this involves adding #include <asm/smp.h>, since that defines things like boot_cpuid[_phys] and [gs]et_hard_smp_processor_id, which are SMP-related but still needed on UP. This incorporates fixes posted by Olof Johansson and Heikki Lindholm. Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/kernel/rtas.c2
-rw-r--r--arch/powerpc/kernel/time.c5
-rw-r--r--arch/powerpc/lib/locks.c1
-rw-r--r--arch/powerpc/mm/numa.c1
-rw-r--r--arch/powerpc/platforms/pseries/iommu.c1
-rw-r--r--arch/powerpc/platforms/pseries/lpar.c1
-rw-r--r--arch/powerpc/platforms/pseries/setup.c1
-rw-r--r--arch/ppc64/kernel/idle.c1
-rw-r--r--arch/ppc64/kernel/machine_kexec.c1
-rw-r--r--arch/ppc64/kernel/sysfs.c1
-rw-r--r--include/asm-powerpc/smp.h4
11 files changed, 12 insertions, 7 deletions
diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c
index b7fc2d884950..751f5ddea913 100644
--- a/arch/powerpc/kernel/rtas.c
+++ b/arch/powerpc/kernel/rtas.c
@@ -608,7 +608,6 @@ asmlinkage int ppc_rtas(struct rtas_args __user *uargs)
608 return 0; 608 return 0;
609} 609}
610 610
611#ifdef CONFIG_SMP
612/* This version can't take the spinlock, because it never returns */ 611/* This version can't take the spinlock, because it never returns */
613 612
614struct rtas_args rtas_stop_self_args = { 613struct rtas_args rtas_stop_self_args = {
@@ -633,7 +632,6 @@ void rtas_stop_self(void)
633 632
634 panic("Alas, I survived.\n"); 633 panic("Alas, I survived.\n");
635} 634}
636#endif
637 635
638/* 636/*
639 * Call early during boot, before mem init or bootmem, to retreive the RTAS 637 * Call early during boot, before mem init or bootmem, to retreive the RTAS
diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c
index 6996a593dcb3..1c7ea5e06311 100644
--- a/arch/powerpc/kernel/time.c
+++ b/arch/powerpc/kernel/time.c
@@ -61,6 +61,7 @@
61#include <asm/prom.h> 61#include <asm/prom.h>
62#include <asm/irq.h> 62#include <asm/irq.h>
63#include <asm/div64.h> 63#include <asm/div64.h>
64#include <asm/smp.h>
64#ifdef CONFIG_PPC64 65#ifdef CONFIG_PPC64
65#include <asm/systemcfg.h> 66#include <asm/systemcfg.h>
66#include <asm/firmware.h> 67#include <asm/firmware.h>
@@ -118,10 +119,6 @@ static unsigned adjusting_time = 0;
118unsigned long ppc_proc_freq; 119unsigned long ppc_proc_freq;
119unsigned long ppc_tb_freq; 120unsigned long ppc_tb_freq;
120 121
121#ifdef CONFIG_PPC32 /* XXX for now */
122#define boot_cpuid 0
123#endif
124
125u64 tb_last_jiffy __cacheline_aligned_in_smp; 122u64 tb_last_jiffy __cacheline_aligned_in_smp;
126unsigned long tb_last_stamp; 123unsigned long tb_last_stamp;
127 124
diff --git a/arch/powerpc/lib/locks.c b/arch/powerpc/lib/locks.c
index 2a912f411eb4..35bd03c41dd1 100644
--- a/arch/powerpc/lib/locks.c
+++ b/arch/powerpc/lib/locks.c
@@ -23,6 +23,7 @@
23#if defined(CONFIG_PPC_SPLPAR) || defined(CONFIG_PPC_ISERIES) 23#if defined(CONFIG_PPC_SPLPAR) || defined(CONFIG_PPC_ISERIES)
24#include <asm/hvcall.h> 24#include <asm/hvcall.h>
25#include <asm/iseries/hv_call.h> 25#include <asm/iseries/hv_call.h>
26#include <asm/smp.h>
26 27
27void __spin_yield(raw_spinlock_t *lock) 28void __spin_yield(raw_spinlock_t *lock)
28{ 29{
diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
index 4035cad8d7f1..da09ba03c424 100644
--- a/arch/powerpc/mm/numa.c
+++ b/arch/powerpc/mm/numa.c
@@ -21,6 +21,7 @@
21#include <asm/machdep.h> 21#include <asm/machdep.h>
22#include <asm/abs_addr.h> 22#include <asm/abs_addr.h>
23#include <asm/system.h> 23#include <asm/system.h>
24#include <asm/smp.h>
24 25
25static int numa_enabled = 1; 26static int numa_enabled = 1;
26 27
diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c
index 8a99902c7ef7..fcc50bfd43fd 100644
--- a/arch/powerpc/platforms/pseries/iommu.c
+++ b/arch/powerpc/platforms/pseries/iommu.c
@@ -46,6 +46,7 @@
46#include <asm/firmware.h> 46#include <asm/firmware.h>
47#include <asm/tce.h> 47#include <asm/tce.h>
48#include <asm/ppc-pci.h> 48#include <asm/ppc-pci.h>
49#include <asm/udbg.h>
49 50
50#include "plpar_wrappers.h" 51#include "plpar_wrappers.h"
51 52
diff --git a/arch/powerpc/platforms/pseries/lpar.c b/arch/powerpc/platforms/pseries/lpar.c
index d84d76f0026b..8a42006370c5 100644
--- a/arch/powerpc/platforms/pseries/lpar.c
+++ b/arch/powerpc/platforms/pseries/lpar.c
@@ -38,6 +38,7 @@
38#include <asm/abs_addr.h> 38#include <asm/abs_addr.h>
39#include <asm/cputable.h> 39#include <asm/cputable.h>
40#include <asm/udbg.h> 40#include <asm/udbg.h>
41#include <asm/smp.h>
41 42
42#include "plpar_wrappers.h" 43#include "plpar_wrappers.h"
43 44
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
index 65bee939eecc..934d7006353f 100644
--- a/arch/powerpc/platforms/pseries/setup.c
+++ b/arch/powerpc/platforms/pseries/setup.c
@@ -65,6 +65,7 @@
65#include <asm/ppc-pci.h> 65#include <asm/ppc-pci.h>
66#include <asm/i8259.h> 66#include <asm/i8259.h>
67#include <asm/udbg.h> 67#include <asm/udbg.h>
68#include <asm/smp.h>
68 69
69#include "plpar_wrappers.h" 70#include "plpar_wrappers.h"
70 71
diff --git a/arch/ppc64/kernel/idle.c b/arch/ppc64/kernel/idle.c
index 8abd2ad92832..8fec27469802 100644
--- a/arch/ppc64/kernel/idle.c
+++ b/arch/ppc64/kernel/idle.c
@@ -28,6 +28,7 @@
28#include <asm/time.h> 28#include <asm/time.h>
29#include <asm/systemcfg.h> 29#include <asm/systemcfg.h>
30#include <asm/machdep.h> 30#include <asm/machdep.h>
31#include <asm/smp.h>
31 32
32extern void power4_idle(void); 33extern void power4_idle(void);
33 34
diff --git a/arch/ppc64/kernel/machine_kexec.c b/arch/ppc64/kernel/machine_kexec.c
index ff8679f260f3..07ea03598c00 100644
--- a/arch/ppc64/kernel/machine_kexec.c
+++ b/arch/ppc64/kernel/machine_kexec.c
@@ -24,6 +24,7 @@
24#include <asm/mmu.h> 24#include <asm/mmu.h>
25#include <asm/sections.h> /* _end */ 25#include <asm/sections.h> /* _end */
26#include <asm/prom.h> 26#include <asm/prom.h>
27#include <asm/smp.h>
27 28
28#define HASH_GROUP_SIZE 0x80 /* size of each hash group, asm/mmu.h */ 29#define HASH_GROUP_SIZE 0x80 /* size of each hash group, asm/mmu.h */
29 30
diff --git a/arch/ppc64/kernel/sysfs.c b/arch/ppc64/kernel/sysfs.c
index 6654b350979c..e99ec62c2c52 100644
--- a/arch/ppc64/kernel/sysfs.c
+++ b/arch/ppc64/kernel/sysfs.c
@@ -20,6 +20,7 @@
20#include <asm/paca.h> 20#include <asm/paca.h>
21#include <asm/lppaca.h> 21#include <asm/lppaca.h>
22#include <asm/machdep.h> 22#include <asm/machdep.h>
23#include <asm/smp.h>
23 24
24static DEFINE_PER_CPU(struct cpu, cpu_devices); 25static DEFINE_PER_CPU(struct cpu, cpu_devices);
25 26
diff --git a/include/asm-powerpc/smp.h b/include/asm-powerpc/smp.h
index 8bcdd0faefea..98581e5a8279 100644
--- a/include/asm-powerpc/smp.h
+++ b/include/asm-powerpc/smp.h
@@ -86,7 +86,6 @@ extern void __cpu_die(unsigned int cpu);
86#else 86#else
87/* for UP */ 87/* for UP */
88#define smp_setup_cpu_maps() 88#define smp_setup_cpu_maps()
89#define smp_release_cpus()
90 89
91#endif /* CONFIG_SMP */ 90#endif /* CONFIG_SMP */
92 91
@@ -94,6 +93,9 @@ extern void __cpu_die(unsigned int cpu);
94#define get_hard_smp_processor_id(CPU) (paca[(CPU)].hw_cpu_id) 93#define get_hard_smp_processor_id(CPU) (paca[(CPU)].hw_cpu_id)
95#define set_hard_smp_processor_id(CPU, VAL) \ 94#define set_hard_smp_processor_id(CPU, VAL) \
96 do { (paca[(CPU)].hw_cpu_id = (VAL)); } while (0) 95 do { (paca[(CPU)].hw_cpu_id = (VAL)); } while (0)
96
97extern void smp_release_cpus(void);
98
97#else 99#else
98/* 32-bit */ 100/* 32-bit */
99#ifndef CONFIG_SMP 101#ifndef CONFIG_SMP