smp.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*
  2. * Copyright IBM Corp. 1999,2009
  3. * Author(s): Denis Joseph Barrow,
  4. * Martin Schwidefsky <schwidefsky@de.ibm.com>,
  5. * Heiko Carstens <heiko.carstens@de.ibm.com>,
  6. */
  7. #ifndef __ASM_SMP_H
  8. #define __ASM_SMP_H
  9. #ifdef CONFIG_SMP
  10. #include <asm/system.h>
  11. #include <asm/sigp.h>
  12. extern void machine_restart_smp(char *);
  13. extern void machine_halt_smp(void);
  14. extern void machine_power_off_smp(void);
  15. #define raw_smp_processor_id() (S390_lowcore.cpu_nr)
  16. extern int __cpu_disable (void);
  17. extern void __cpu_die (unsigned int cpu);
  18. extern void cpu_die (void) __attribute__ ((noreturn));
  19. extern int __cpu_up (unsigned int cpu);
  20. extern struct mutex smp_cpu_state_mutex;
  21. extern int smp_cpu_polarization[];
  22. extern void arch_send_call_function_single_ipi(int cpu);
  23. extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
  24. extern union save_area *zfcpdump_save_areas[NR_CPUS + 1];
  25. #endif /* CONFIG_SMP */
  26. #ifdef CONFIG_HOTPLUG_CPU
  27. extern int smp_rescan_cpus(void);
  28. #else
  29. static inline int smp_rescan_cpus(void) { return 0; }
  30. #endif
  31. #endif /* __ASM_SMP_H */