Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#ifndef _ASM_X86_REBOOT_H
2#define _ASM_X86_REBOOT_H
3
4#include <linux/kdebug.h>
5
6struct pt_regs;
7
8struct machine_ops {
9 void (*restart)(char *cmd);
10 void (*halt)(void);
11 void (*power_off)(void);
12 void (*shutdown)(void);
13 void (*crash_shutdown)(struct pt_regs *);
14 void (*emergency_restart)(void);
15};
16
17extern struct machine_ops machine_ops;
18
19void native_machine_crash_shutdown(struct pt_regs *regs);
20void native_machine_shutdown(void);
21void __noreturn machine_real_restart(unsigned int type);
22/* These must match dispatch in arch/x86/realmore/rm/reboot.S */
23#define MRR_BIOS 0
24#define MRR_APM 1
25
26typedef void (*nmi_shootdown_cb)(int, struct pt_regs*);
27void nmi_shootdown_cpus(nmi_shootdown_cb callback);
28
29#endif /* _ASM_X86_REBOOT_H */