aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r--arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c6
-rw-r--r--arch/powerpc/platforms/52xx/mpc52xx_pic.c2
-rw-r--r--arch/powerpc/platforms/Kconfig2
-rw-r--r--arch/powerpc/platforms/cell/spufs/lscsa_alloc.c2
-rw-r--r--arch/powerpc/platforms/cell/spufs/sched.c2
-rw-r--r--arch/powerpc/platforms/cell/spufs/spu_restore.c2
-rw-r--r--arch/powerpc/platforms/iseries/mf.c2
-rw-r--r--arch/powerpc/platforms/iseries/viopath.c8
-rw-r--r--arch/powerpc/platforms/pasemi/dma_lib.c4
-rw-r--r--arch/powerpc/platforms/powermac/Makefile2
-rw-r--r--arch/powerpc/platforms/powermac/low_i2c.c2
-rw-r--r--arch/powerpc/platforms/powermac/pci.c2
-rw-r--r--arch/powerpc/platforms/pseries/dlpar.c2
-rw-r--r--arch/powerpc/platforms/pseries/eeh.c2
-rw-r--r--arch/powerpc/platforms/pseries/hotplug-cpu.c2
-rw-r--r--arch/powerpc/platforms/pseries/iommu.c6
-rw-r--r--arch/powerpc/platforms/pseries/setup.c2
-rw-r--r--arch/powerpc/platforms/pseries/smp.c17
-rw-r--r--arch/powerpc/platforms/pseries/xics.c2
19 files changed, 37 insertions, 32 deletions
diff --git a/arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c b/arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c
index 6385d883cb8d..9940ce8a2d4e 100644
--- a/arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c
+++ b/arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c
@@ -57,7 +57,7 @@ struct mpc52xx_lpbfifo {
57static struct mpc52xx_lpbfifo lpbfifo; 57static struct mpc52xx_lpbfifo lpbfifo;
58 58
59/** 59/**
60 * mpc52xx_lpbfifo_kick - Trigger the next block of data to be transfered 60 * mpc52xx_lpbfifo_kick - Trigger the next block of data to be transferred
61 */ 61 */
62static void mpc52xx_lpbfifo_kick(struct mpc52xx_lpbfifo_request *req) 62static void mpc52xx_lpbfifo_kick(struct mpc52xx_lpbfifo_request *req)
63{ 63{
@@ -179,7 +179,7 @@ static void mpc52xx_lpbfifo_kick(struct mpc52xx_lpbfifo_request *req)
179 * 179 *
180 * On transmit, the dma completion irq triggers before the fifo completion 180 * On transmit, the dma completion irq triggers before the fifo completion
181 * triggers. Handle the dma completion here instead of the LPB FIFO Bestcomm 181 * triggers. Handle the dma completion here instead of the LPB FIFO Bestcomm
182 * task completion irq becuase everyting is not really done until the LPB FIFO 182 * task completion irq because everything is not really done until the LPB FIFO
183 * completion irq triggers. 183 * completion irq triggers.
184 * 184 *
185 * In other words: 185 * In other words:
@@ -195,7 +195,7 @@ static void mpc52xx_lpbfifo_kick(struct mpc52xx_lpbfifo_request *req)
195 * Exit conditions: 195 * Exit conditions:
196 * 1) Transfer aborted 196 * 1) Transfer aborted
197 * 2) FIFO complete without DMA; more data to do 197 * 2) FIFO complete without DMA; more data to do
198 * 3) FIFO complete without DMA; all data transfered 198 * 3) FIFO complete without DMA; all data transferred
199 * 4) FIFO complete using DMA 199 * 4) FIFO complete using DMA
200 * 200 *
201 * Condition 1 can occur regardless of whether or not DMA is used. 201 * Condition 1 can occur regardless of whether or not DMA is used.
diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c b/arch/powerpc/platforms/52xx/mpc52xx_pic.c
index 3ddea96273ca..1dd15400f6f0 100644
--- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c
+++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c
@@ -512,7 +512,7 @@ void __init mpc52xx_init_irq(void)
512/** 512/**
513 * mpc52xx_get_irq - Get pending interrupt number hook function 513 * mpc52xx_get_irq - Get pending interrupt number hook function
514 * 514 *
515 * Called by the interupt handler to determine what IRQ handler needs to be 515 * Called by the interrupt handler to determine what IRQ handler needs to be
516 * executed. 516 * executed.
517 * 517 *
518 * Status of pending interrupts is determined by reading the encoded status 518 * Status of pending interrupts is determined by reading the encoded status
diff --git a/arch/powerpc/platforms/Kconfig b/arch/powerpc/platforms/Kconfig
index 20576829eca5..f7b07720aa30 100644
--- a/arch/powerpc/platforms/Kconfig
+++ b/arch/powerpc/platforms/Kconfig
@@ -46,7 +46,7 @@ config PPC_OF_BOOT_TRAMPOLINE
46 help 46 help
47 Support from booting from Open Firmware or yaboot using an 47 Support from booting from Open Firmware or yaboot using an
48 Open Firmware client interface. This enables the kernel to 48 Open Firmware client interface. This enables the kernel to
49 communicate with open firmware to retrieve system informations 49 communicate with open firmware to retrieve system information
50 such as the device tree. 50 such as the device tree.
51 51
52 In case of doubt, say Y 52 In case of doubt, say Y
diff --git a/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c b/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
index 3b894f585280..147069938cfe 100644
--- a/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
+++ b/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
@@ -90,7 +90,7 @@ int spu_alloc_lscsa(struct spu_state *csa)
90 */ 90 */
91 for (i = 0; i < SPU_LSCSA_NUM_BIG_PAGES; i++) { 91 for (i = 0; i < SPU_LSCSA_NUM_BIG_PAGES; i++) {
92 /* XXX This is likely to fail, we should use a special pool 92 /* XXX This is likely to fail, we should use a special pool
93 * similiar to what hugetlbfs does. 93 * similar to what hugetlbfs does.
94 */ 94 */
95 csa->lscsa_pages[i] = alloc_pages(GFP_KERNEL, 95 csa->lscsa_pages[i] = alloc_pages(GFP_KERNEL,
96 SPU_64K_PAGE_ORDER); 96 SPU_64K_PAGE_ORDER);
diff --git a/arch/powerpc/platforms/cell/spufs/sched.c b/arch/powerpc/platforms/cell/spufs/sched.c
index 0b0466284932..65203857b0ce 100644
--- a/arch/powerpc/platforms/cell/spufs/sched.c
+++ b/arch/powerpc/platforms/cell/spufs/sched.c
@@ -846,7 +846,7 @@ static struct spu_context *grab_runnable_context(int prio, int node)
846 struct list_head *rq = &spu_prio->runq[best]; 846 struct list_head *rq = &spu_prio->runq[best];
847 847
848 list_for_each_entry(ctx, rq, rq) { 848 list_for_each_entry(ctx, rq, rq) {
849 /* XXX(hch): check for affinity here aswell */ 849 /* XXX(hch): check for affinity here as well */
850 if (__node_allowed(ctx, node)) { 850 if (__node_allowed(ctx, node)) {
851 __spu_del_from_rq(ctx); 851 __spu_del_from_rq(ctx);
852 goto found; 852 goto found;
diff --git a/arch/powerpc/platforms/cell/spufs/spu_restore.c b/arch/powerpc/platforms/cell/spufs/spu_restore.c
index 21a9c952d88b..72c905f1ee7a 100644
--- a/arch/powerpc/platforms/cell/spufs/spu_restore.c
+++ b/arch/powerpc/platforms/cell/spufs/spu_restore.c
@@ -284,7 +284,7 @@ static inline void restore_complete(void)
284 exit_instrs[3] = BR_INSTR; 284 exit_instrs[3] = BR_INSTR;
285 break; 285 break;
286 default: 286 default:
287 /* SPU_Status[R]=1. No additonal instructions. */ 287 /* SPU_Status[R]=1. No additional instructions. */
288 break; 288 break;
289 } 289 }
290 spu_sync(); 290 spu_sync();
diff --git a/arch/powerpc/platforms/iseries/mf.c b/arch/powerpc/platforms/iseries/mf.c
index b5e026bdca21..62dabe3c2bfa 100644
--- a/arch/powerpc/platforms/iseries/mf.c
+++ b/arch/powerpc/platforms/iseries/mf.c
@@ -51,7 +51,7 @@
51static int mf_initialized; 51static int mf_initialized;
52 52
53/* 53/*
54 * This is the structure layout for the Machine Facilites LPAR event 54 * This is the structure layout for the Machine Facilities LPAR event
55 * flows. 55 * flows.
56 */ 56 */
57struct vsp_cmd_data { 57struct vsp_cmd_data {
diff --git a/arch/powerpc/platforms/iseries/viopath.c b/arch/powerpc/platforms/iseries/viopath.c
index b5f05d943a90..2376069cdc14 100644
--- a/arch/powerpc/platforms/iseries/viopath.c
+++ b/arch/powerpc/platforms/iseries/viopath.c
@@ -396,7 +396,7 @@ static void vio_handleEvent(struct HvLpEvent *event)
396 viopathStatus[remoteLp].mTargetInst)) { 396 viopathStatus[remoteLp].mTargetInst)) {
397 printk(VIOPATH_KERN_WARN 397 printk(VIOPATH_KERN_WARN
398 "message from invalid partition. " 398 "message from invalid partition. "
399 "int msg rcvd, source inst (%d) doesnt match (%d)\n", 399 "int msg rcvd, source inst (%d) doesn't match (%d)\n",
400 viopathStatus[remoteLp].mTargetInst, 400 viopathStatus[remoteLp].mTargetInst,
401 event->xSourceInstanceId); 401 event->xSourceInstanceId);
402 return; 402 return;
@@ -407,7 +407,7 @@ static void vio_handleEvent(struct HvLpEvent *event)
407 viopathStatus[remoteLp].mSourceInst)) { 407 viopathStatus[remoteLp].mSourceInst)) {
408 printk(VIOPATH_KERN_WARN 408 printk(VIOPATH_KERN_WARN
409 "message from invalid partition. " 409 "message from invalid partition. "
410 "int msg rcvd, target inst (%d) doesnt match (%d)\n", 410 "int msg rcvd, target inst (%d) doesn't match (%d)\n",
411 viopathStatus[remoteLp].mSourceInst, 411 viopathStatus[remoteLp].mSourceInst,
412 event->xTargetInstanceId); 412 event->xTargetInstanceId);
413 return; 413 return;
@@ -418,7 +418,7 @@ static void vio_handleEvent(struct HvLpEvent *event)
418 viopathStatus[remoteLp].mSourceInst) { 418 viopathStatus[remoteLp].mSourceInst) {
419 printk(VIOPATH_KERN_WARN 419 printk(VIOPATH_KERN_WARN
420 "message from invalid partition. " 420 "message from invalid partition. "
421 "ack msg rcvd, source inst (%d) doesnt match (%d)\n", 421 "ack msg rcvd, source inst (%d) doesn't match (%d)\n",
422 viopathStatus[remoteLp].mSourceInst, 422 viopathStatus[remoteLp].mSourceInst,
423 event->xSourceInstanceId); 423 event->xSourceInstanceId);
424 return; 424 return;
@@ -428,7 +428,7 @@ static void vio_handleEvent(struct HvLpEvent *event)
428 viopathStatus[remoteLp].mTargetInst) { 428 viopathStatus[remoteLp].mTargetInst) {
429 printk(VIOPATH_KERN_WARN 429 printk(VIOPATH_KERN_WARN
430 "message from invalid partition. " 430 "message from invalid partition. "
431 "viopath: ack msg rcvd, target inst (%d) doesnt match (%d)\n", 431 "viopath: ack msg rcvd, target inst (%d) doesn't match (%d)\n",
432 viopathStatus[remoteLp].mTargetInst, 432 viopathStatus[remoteLp].mTargetInst,
433 event->xTargetInstanceId); 433 event->xTargetInstanceId);
434 return; 434 return;
diff --git a/arch/powerpc/platforms/pasemi/dma_lib.c b/arch/powerpc/platforms/pasemi/dma_lib.c
index 09695ae50f91..321a9b3a2d00 100644
--- a/arch/powerpc/platforms/pasemi/dma_lib.c
+++ b/arch/powerpc/platforms/pasemi/dma_lib.c
@@ -379,9 +379,9 @@ void pasemi_dma_free_buf(struct pasemi_dmachan *chan, int size,
379} 379}
380EXPORT_SYMBOL(pasemi_dma_free_buf); 380EXPORT_SYMBOL(pasemi_dma_free_buf);
381 381
382/* pasemi_dma_alloc_flag - Allocate a flag (event) for channel syncronization 382/* pasemi_dma_alloc_flag - Allocate a flag (event) for channel synchronization
383 * 383 *
384 * Allocates a flag for use with channel syncronization (event descriptors). 384 * Allocates a flag for use with channel synchronization (event descriptors).
385 * Returns allocated flag (0-63), < 0 on error. 385 * Returns allocated flag (0-63), < 0 on error.
386 */ 386 */
387int pasemi_dma_alloc_flag(void) 387int pasemi_dma_alloc_flag(void)
diff --git a/arch/powerpc/platforms/powermac/Makefile b/arch/powerpc/platforms/powermac/Makefile
index 50f169392551..ea47df66fee5 100644
--- a/arch/powerpc/platforms/powermac/Makefile
+++ b/arch/powerpc/platforms/powermac/Makefile
@@ -11,7 +11,7 @@ obj-y += pic.o setup.o time.o feature.o pci.o \
11obj-$(CONFIG_PMAC_BACKLIGHT) += backlight.o 11obj-$(CONFIG_PMAC_BACKLIGHT) += backlight.o
12obj-$(CONFIG_CPU_FREQ_PMAC) += cpufreq_32.o 12obj-$(CONFIG_CPU_FREQ_PMAC) += cpufreq_32.o
13obj-$(CONFIG_CPU_FREQ_PMAC64) += cpufreq_64.o 13obj-$(CONFIG_CPU_FREQ_PMAC64) += cpufreq_64.o
14# CONFIG_NVRAM is an arch. independant tristate symbol, for pmac32 we really 14# CONFIG_NVRAM is an arch. independent tristate symbol, for pmac32 we really
15# need this to be a bool. Cheat here and pretend CONFIG_NVRAM=m is really 15# need this to be a bool. Cheat here and pretend CONFIG_NVRAM=m is really
16# CONFIG_NVRAM=y 16# CONFIG_NVRAM=y
17obj-$(CONFIG_NVRAM:m=y) += nvram.o 17obj-$(CONFIG_NVRAM:m=y) += nvram.o
diff --git a/arch/powerpc/platforms/powermac/low_i2c.c b/arch/powerpc/platforms/powermac/low_i2c.c
index 480567e5fa9a..e9c8a607268e 100644
--- a/arch/powerpc/platforms/powermac/low_i2c.c
+++ b/arch/powerpc/platforms/powermac/low_i2c.c
@@ -904,7 +904,7 @@ static void __init smu_i2c_probe(void)
904 printk(KERN_INFO "SMU i2c %s\n", controller->full_name); 904 printk(KERN_INFO "SMU i2c %s\n", controller->full_name);
905 905
906 /* Look for childs, note that they might not be of the right 906 /* Look for childs, note that they might not be of the right
907 * type as older device trees mix i2c busses and other thigns 907 * type as older device trees mix i2c busses and other things
908 * at the same level 908 * at the same level
909 */ 909 */
910 for (busnode = NULL; 910 for (busnode = NULL;
diff --git a/arch/powerpc/platforms/powermac/pci.c b/arch/powerpc/platforms/powermac/pci.c
index ab6898942700..f33e08d573ce 100644
--- a/arch/powerpc/platforms/powermac/pci.c
+++ b/arch/powerpc/platforms/powermac/pci.c
@@ -299,7 +299,7 @@ static void __init setup_chaos(struct pci_controller *hose,
299 * This function deals with some "special cases" devices. 299 * This function deals with some "special cases" devices.
300 * 300 *
301 * 0 -> No special case 301 * 0 -> No special case
302 * 1 -> Skip the device but act as if the access was successfull 302 * 1 -> Skip the device but act as if the access was successful
303 * (return 0xff's on reads, eventually, cache config space 303 * (return 0xff's on reads, eventually, cache config space
304 * accesses in a later version) 304 * accesses in a later version)
305 * -1 -> Hide the device (unsuccessful access) 305 * -1 -> Hide the device (unsuccessful access)
diff --git a/arch/powerpc/platforms/pseries/dlpar.c b/arch/powerpc/platforms/pseries/dlpar.c
index b74a9230edc9..57ceb92b2288 100644
--- a/arch/powerpc/platforms/pseries/dlpar.c
+++ b/arch/powerpc/platforms/pseries/dlpar.c
@@ -74,7 +74,7 @@ static struct device_node *dlpar_parse_cc_node(struct cc_workarea *ccwa)
74 return NULL; 74 return NULL;
75 75
76 /* The configure connector reported name does not contain a 76 /* The configure connector reported name does not contain a
77 * preceeding '/', so we allocate a buffer large enough to 77 * preceding '/', so we allocate a buffer large enough to
78 * prepend this to the full_name. 78 * prepend this to the full_name.
79 */ 79 */
80 name = (char *)ccwa + ccwa->name_offset; 80 name = (char *)ccwa + ccwa->name_offset;
diff --git a/arch/powerpc/platforms/pseries/eeh.c b/arch/powerpc/platforms/pseries/eeh.c
index 3cc4d102b1f1..89649173d3a3 100644
--- a/arch/powerpc/platforms/pseries/eeh.c
+++ b/arch/powerpc/platforms/pseries/eeh.c
@@ -65,7 +65,7 @@
65 * with EEH. 65 * with EEH.
66 * 66 *
67 * Ideally, a PCI device driver, when suspecting that an isolation 67 * Ideally, a PCI device driver, when suspecting that an isolation
68 * event has occured (e.g. by reading 0xff's), will then ask EEH 68 * event has occurred (e.g. by reading 0xff's), will then ask EEH
69 * whether this is the case, and then take appropriate steps to 69 * whether this is the case, and then take appropriate steps to
70 * reset the PCI slot, the PCI device, and then resume operations. 70 * reset the PCI slot, the PCI device, and then resume operations.
71 * However, until that day, the checking is done here, with the 71 * However, until that day, the checking is done here, with the
diff --git a/arch/powerpc/platforms/pseries/hotplug-cpu.c b/arch/powerpc/platforms/pseries/hotplug-cpu.c
index fd50ccd4bac1..ef8c45489e20 100644
--- a/arch/powerpc/platforms/pseries/hotplug-cpu.c
+++ b/arch/powerpc/platforms/pseries/hotplug-cpu.c
@@ -216,7 +216,7 @@ static void pseries_cpu_die(unsigned int cpu)
216 cpu, pcpu, cpu_status); 216 cpu, pcpu, cpu_status);
217 } 217 }
218 218
219 /* Isolation and deallocation are definatly done by 219 /* Isolation and deallocation are definitely done by
220 * drslot_chrp_cpu. If they were not they would be 220 * drslot_chrp_cpu. If they were not they would be
221 * done here. Change isolate state to Isolate and 221 * done here. Change isolate state to Isolate and
222 * change allocation-state to Unusable. 222 * change allocation-state to Unusable.
diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c
index 154c464cdca5..6d5412a18b26 100644
--- a/arch/powerpc/platforms/pseries/iommu.c
+++ b/arch/powerpc/platforms/pseries/iommu.c
@@ -272,7 +272,7 @@ static unsigned long tce_get_pSeriesLP(struct iommu_table *tbl, long tcenum)
272 return tce_ret; 272 return tce_ret;
273} 273}
274 274
275/* this is compatable with cells for the device tree property */ 275/* this is compatible with cells for the device tree property */
276struct dynamic_dma_window_prop { 276struct dynamic_dma_window_prop {
277 __be32 liobn; /* tce table number */ 277 __be32 liobn; /* tce table number */
278 __be64 dma_base; /* address hi,lo */ 278 __be64 dma_base; /* address hi,lo */
@@ -976,7 +976,7 @@ static void pci_dma_dev_setup_pSeriesLP(struct pci_dev *dev)
976 pr_debug("pci_dma_dev_setup_pSeriesLP: %s\n", pci_name(dev)); 976 pr_debug("pci_dma_dev_setup_pSeriesLP: %s\n", pci_name(dev));
977 977
978 /* dev setup for LPAR is a little tricky, since the device tree might 978 /* dev setup for LPAR is a little tricky, since the device tree might
979 * contain the dma-window properties per-device and not neccesarily 979 * contain the dma-window properties per-device and not necessarily
980 * for the bus. So we need to search upwards in the tree until we 980 * for the bus. So we need to search upwards in the tree until we
981 * either hit a dma-window property, OR find a parent with a table 981 * either hit a dma-window property, OR find a parent with a table
982 * already allocated. 982 * already allocated.
@@ -1033,7 +1033,7 @@ static int dma_set_mask_pSeriesLP(struct device *dev, u64 dma_mask)
1033 1033
1034 /* 1034 /*
1035 * the device tree might contain the dma-window properties 1035 * the device tree might contain the dma-window properties
1036 * per-device and not neccesarily for the bus. So we need to 1036 * per-device and not necessarily for the bus. So we need to
1037 * search upwards in the tree until we either hit a dma-window 1037 * search upwards in the tree until we either hit a dma-window
1038 * property, OR find a parent with a table already allocated. 1038 * property, OR find a parent with a table already allocated.
1039 */ 1039 */
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
index c319d04aa799..000724149089 100644
--- a/arch/powerpc/platforms/pseries/setup.c
+++ b/arch/powerpc/platforms/pseries/setup.c
@@ -378,7 +378,7 @@ static int __init pSeries_init_panel(void)
378 378
379 return 0; 379 return 0;
380} 380}
381arch_initcall(pSeries_init_panel); 381machine_arch_initcall(pseries, pSeries_init_panel);
382 382
383static int pseries_set_dabr(unsigned long dabr) 383static int pseries_set_dabr(unsigned long dabr)
384{ 384{
diff --git a/arch/powerpc/platforms/pseries/smp.c b/arch/powerpc/platforms/pseries/smp.c
index d6479f9738f0..a509c5292a67 100644
--- a/arch/powerpc/platforms/pseries/smp.c
+++ b/arch/powerpc/platforms/pseries/smp.c
@@ -112,10 +112,10 @@ static inline int __devinit smp_startup_cpu(unsigned int lcpu)
112 112
113 /* Fixup atomic count: it exited inside IRQ handler. */ 113 /* Fixup atomic count: it exited inside IRQ handler. */
114 task_thread_info(paca[lcpu].__current)->preempt_count = 0; 114 task_thread_info(paca[lcpu].__current)->preempt_count = 0;
115 115#ifdef CONFIG_HOTPLUG_CPU
116 if (get_cpu_current_state(lcpu) == CPU_STATE_INACTIVE) 116 if (get_cpu_current_state(lcpu) == CPU_STATE_INACTIVE)
117 goto out; 117 goto out;
118 118#endif
119 /* 119 /*
120 * If the RTAS start-cpu token does not exist then presume the 120 * If the RTAS start-cpu token does not exist then presume the
121 * cpu is already spinning. 121 * cpu is already spinning.
@@ -130,7 +130,9 @@ static inline int __devinit smp_startup_cpu(unsigned int lcpu)
130 return 0; 130 return 0;
131 } 131 }
132 132
133#ifdef CONFIG_HOTPLUG_CPU
133out: 134out:
135#endif
134 return 1; 136 return 1;
135} 137}
136 138
@@ -144,16 +146,15 @@ static void __devinit smp_xics_setup_cpu(int cpu)
144 vpa_init(cpu); 146 vpa_init(cpu);
145 147
146 cpumask_clear_cpu(cpu, of_spin_mask); 148 cpumask_clear_cpu(cpu, of_spin_mask);
149#ifdef CONFIG_HOTPLUG_CPU
147 set_cpu_current_state(cpu, CPU_STATE_ONLINE); 150 set_cpu_current_state(cpu, CPU_STATE_ONLINE);
148 set_default_offline_state(cpu); 151 set_default_offline_state(cpu);
149 152#endif
150} 153}
151#endif /* CONFIG_XICS */ 154#endif /* CONFIG_XICS */
152 155
153static void __devinit smp_pSeries_kick_cpu(int nr) 156static void __devinit smp_pSeries_kick_cpu(int nr)
154{ 157{
155 long rc;
156 unsigned long hcpuid;
157 BUG_ON(nr < 0 || nr >= NR_CPUS); 158 BUG_ON(nr < 0 || nr >= NR_CPUS);
158 159
159 if (!smp_startup_cpu(nr)) 160 if (!smp_startup_cpu(nr))
@@ -165,16 +166,20 @@ static void __devinit smp_pSeries_kick_cpu(int nr)
165 * the processor will continue on to secondary_start 166 * the processor will continue on to secondary_start
166 */ 167 */
167 paca[nr].cpu_start = 1; 168 paca[nr].cpu_start = 1;
168 169#ifdef CONFIG_HOTPLUG_CPU
169 set_preferred_offline_state(nr, CPU_STATE_ONLINE); 170 set_preferred_offline_state(nr, CPU_STATE_ONLINE);
170 171
171 if (get_cpu_current_state(nr) == CPU_STATE_INACTIVE) { 172 if (get_cpu_current_state(nr) == CPU_STATE_INACTIVE) {
173 long rc;
174 unsigned long hcpuid;
175
172 hcpuid = get_hard_smp_processor_id(nr); 176 hcpuid = get_hard_smp_processor_id(nr);
173 rc = plpar_hcall_norets(H_PROD, hcpuid); 177 rc = plpar_hcall_norets(H_PROD, hcpuid);
174 if (rc != H_SUCCESS) 178 if (rc != H_SUCCESS)
175 printk(KERN_ERR "Error: Prod to wake up processor %d " 179 printk(KERN_ERR "Error: Prod to wake up processor %d "
176 "Ret= %ld\n", nr, rc); 180 "Ret= %ld\n", nr, rc);
177 } 181 }
182#endif
178} 183}
179 184
180static int smp_pSeries_cpu_bootable(unsigned int nr) 185static int smp_pSeries_cpu_bootable(unsigned int nr)
diff --git a/arch/powerpc/platforms/pseries/xics.c b/arch/powerpc/platforms/pseries/xics.c
index ec8fe22047b7..d6901334d66e 100644
--- a/arch/powerpc/platforms/pseries/xics.c
+++ b/arch/powerpc/platforms/pseries/xics.c
@@ -897,7 +897,7 @@ void xics_migrate_irqs_away(void)
897 int status; 897 int status;
898 unsigned long flags; 898 unsigned long flags;
899 899
900 /* We cant set affinity on ISA interrupts */ 900 /* We can't set affinity on ISA interrupts */
901 if (virq < NUM_ISA_INTERRUPTS) 901 if (virq < NUM_ISA_INTERRUPTS)
902 continue; 902 continue;
903 if (irq_map[virq].host != xics_host) 903 if (irq_map[virq].host != xics_host)