]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1965aae3 PA |
2 | #ifndef _ASM_X86_REBOOT_H |
3 | #define _ASM_X86_REBOOT_H | |
07f3331c | 4 | |
c370e5e0 EH |
5 | #include <linux/kdebug.h> |
6 | ||
07f3331c JF |
7 | struct pt_regs; |
8 | ||
78db4c6b | 9 | struct machine_ops { |
07f3331c JF |
10 | void (*restart)(char *cmd); |
11 | void (*halt)(void); | |
12 | void (*power_off)(void); | |
13 | void (*shutdown)(void); | |
14 | void (*crash_shutdown)(struct pt_regs *); | |
15 | void (*emergency_restart)(void); | |
16 | }; | |
17 | ||
18 | extern struct machine_ops machine_ops; | |
5bc32950 | 19 | extern int crashing_cpu; |
07f3331c | 20 | |
ed23dc6f | 21 | void native_machine_crash_shutdown(struct pt_regs *regs); |
3c62c625 | 22 | void native_machine_shutdown(void); |
65051397 PA |
23 | void __noreturn machine_real_restart(unsigned int type); |
24 | /* These must match dispatch in arch/x86/realmore/rm/reboot.S */ | |
3d35ac34 PA |
25 | #define MRR_BIOS 0 |
26 | #define MRR_APM 1 | |
07f3331c | 27 | |
9c48f1c6 | 28 | typedef void (*nmi_shootdown_cb)(int, struct pt_regs*); |
89f579ce | 29 | void nmi_panic_self_stop(struct pt_regs *regs); |
c370e5e0 | 30 | void nmi_shootdown_cpus(nmi_shootdown_cb callback); |
b279d67d | 31 | void run_crash_ipi_callback(struct pt_regs *regs); |
c370e5e0 | 32 | |
1965aae3 | 33 | #endif /* _ASM_X86_REBOOT_H */ |