smp.h 1.1 KB
Newer Older
L
Linus Torvalds 已提交
1
/*
2 3 4 5
 *    Copyright IBM Corp. 1999,2009
 *    Author(s): Denis Joseph Barrow,
 *		 Martin Schwidefsky <schwidefsky@de.ibm.com>,
 *		 Heiko Carstens <heiko.carstens@de.ibm.com>,
L
Linus Torvalds 已提交
6 7 8 9
 */
#ifndef __ASM_SMP_H
#define __ASM_SMP_H

10
#ifdef CONFIG_SMP
L
Linus Torvalds 已提交
11

12
#include <asm/system.h>
13
#include <asm/sigp.h>
L
Linus Torvalds 已提交
14

15 16 17 18
extern void machine_restart_smp(char *);
extern void machine_halt_smp(void);
extern void machine_power_off_smp(void);

19
#define raw_smp_processor_id()	(S390_lowcore.cpu_nr)
L
Linus Torvalds 已提交
20 21 22 23 24 25

extern int __cpu_disable (void);
extern void __cpu_die (unsigned int cpu);
extern void cpu_die (void) __attribute__ ((noreturn));
extern int __cpu_up (unsigned int cpu);

26
extern struct mutex smp_cpu_state_mutex;
H
Heiko Carstens 已提交
27
extern int smp_cpu_polarization[];
28

29
extern void arch_send_call_function_single_ipi(int cpu);
30
extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
31

32
extern struct save_area *zfcpdump_save_areas[NR_CPUS + 1];
33 34

#endif /* CONFIG_SMP */
L
Linus Torvalds 已提交
35

36 37 38 39 40 41
#ifdef CONFIG_HOTPLUG_CPU
extern int smp_rescan_cpus(void);
#else
static inline int smp_rescan_cpus(void) { return 0; }
#endif

42
#endif /* __ASM_SMP_H */