smp.c (38fd2c202a3d82bc12430bce5789fa2c2a406f71) | smp.c (2751b628c97e66e61f482935ca59148751972941) |
---|---|
1/* 2 * SMP support for pSeries machines. 3 * 4 * Dave Engebretsen, Peter Bergner, and 5 * Mike Corrigan {engebret|bergner|mikec}@us.ibm.com 6 * 7 * Plus various changes from other IBM teams... 8 * --- 30 unchanged lines hidden (view full) --- 39#include <asm/firmware.h> 40#include <asm/rtas.h> 41#include <asm/mpic.h> 42#include <asm/vdso_datapage.h> 43#include <asm/cputhreads.h> 44#include <asm/xics.h> 45#include <asm/dbell.h> 46#include <asm/plpar_wrappers.h> | 1/* 2 * SMP support for pSeries machines. 3 * 4 * Dave Engebretsen, Peter Bergner, and 5 * Mike Corrigan {engebret|bergner|mikec}@us.ibm.com 6 * 7 * Plus various changes from other IBM teams... 8 * --- 30 unchanged lines hidden (view full) --- 39#include <asm/firmware.h> 40#include <asm/rtas.h> 41#include <asm/mpic.h> 42#include <asm/vdso_datapage.h> 43#include <asm/cputhreads.h> 44#include <asm/xics.h> 45#include <asm/dbell.h> 46#include <asm/plpar_wrappers.h> |
47#include <asm/code-patching.h> |
|
47 48#include "pseries.h" 49#include "offline_states.h" 50 51 52/* 53 * The Primary thread of each non-boot processor was started from the OF client 54 * interface by prom_hold_cpus and is spinning on secondary_hold_spinloop. --- 36 unchanged lines hidden (view full) --- 91 * 92 * Returns: 93 * 0 - failure 94 * 1 - success 95 */ 96static inline int smp_startup_cpu(unsigned int lcpu) 97{ 98 int status; | 48 49#include "pseries.h" 50#include "offline_states.h" 51 52 53/* 54 * The Primary thread of each non-boot processor was started from the OF client 55 * interface by prom_hold_cpus and is spinning on secondary_hold_spinloop. --- 36 unchanged lines hidden (view full) --- 92 * 93 * Returns: 94 * 0 - failure 95 * 1 - success 96 */ 97static inline int smp_startup_cpu(unsigned int lcpu) 98{ 99 int status; |
99 unsigned long start_here = __pa((u32)*((unsigned long *) 100 generic_secondary_smp_init)); | 100 unsigned long start_here = 101 __pa(ppc_function_entry(generic_secondary_smp_init)); |
101 unsigned int pcpu; 102 int start_cpu; 103 104 if (cpumask_test_cpu(lcpu, of_spin_mask)) 105 /* Already started by OF and sitting in spin loop */ 106 return 1; 107 108 pcpu = get_hard_smp_processor_id(lcpu); --- 167 unchanged lines hidden --- | 102 unsigned int pcpu; 103 int start_cpu; 104 105 if (cpumask_test_cpu(lcpu, of_spin_mask)) 106 /* Already started by OF and sitting in spin loop */ 107 return 1; 108 109 pcpu = get_hard_smp_processor_id(lcpu); --- 167 unchanged lines hidden --- |