diff options
author | 2019-09-08 11:33:03 +0200 | |
---|---|---|
committer | 2019-09-08 15:19:58 +0200 | |
commit | 507efd63d98c4437d62bbfa932b322e72723e1fc (patch) | |
tree | 6c9d7283f37f68b9153e0025b1703fa01b69d820 /arch/parisc/kernel/firmware.c | |
parent | kprobes/parisc: remove arch_kprobe_on_func_entry() (diff) | |
download | linux-dev-507efd63d98c4437d62bbfa932b322e72723e1fc.tar.xz linux-dev-507efd63d98c4437d62bbfa932b322e72723e1fc.zip |
parisc: add __pdc_cpu_rendezvous()
When stopping SMP cpus send them into rendezvous, so we can
start them again later (when kexec'ing a new kernel).
Signed-off-by: Sven Schnelle <svens@stackframe.org>
Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/kernel/firmware.c')
-rw-r--r-- | arch/parisc/kernel/firmware.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/parisc/kernel/firmware.c b/arch/parisc/kernel/firmware.c index 58cc08e7fd12..1d976f2ebff0 100644 --- a/arch/parisc/kernel/firmware.c +++ b/arch/parisc/kernel/firmware.c @@ -312,6 +312,19 @@ int pdc_chassis_disp(unsigned long disp) } /** + * pdc_cpu_rendenzvous - Stop currently executing CPU + * @retval: -1 on error, 0 on success + */ +int __pdc_cpu_rendezvous(void) +{ + if (is_pdc_pat()) + return mem_pdc_call(PDC_PAT_CPU, PDC_PAT_CPU_RENDEZVOUS); + else + return mem_pdc_call(PDC_PROC, 1, 0); +} + + +/** * pdc_chassis_warn - Fetches chassis warnings * @retval: -1 on error, 0 on success */ |