Blame view

include/linux/reboot.h 2.45 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  #ifndef _LINUX_REBOOT_H
  #define _LINUX_REBOOT_H
  
  /*
   * Magic values required to use _reboot() system call.
   */
  
  #define	LINUX_REBOOT_MAGIC1	0xfee1dead
  #define	LINUX_REBOOT_MAGIC2	672274793
  #define	LINUX_REBOOT_MAGIC2A	85072278
  #define	LINUX_REBOOT_MAGIC2B	369367448
  #define	LINUX_REBOOT_MAGIC2C	537993216
  
  
  /*
   * Commands accepted by the _reboot() system call.
   *
   * RESTART     Restart system using default command and mode.
   * HALT        Stop OS and give system control to ROM monitor, if any.
   * CAD_ON      Ctrl-Alt-Del sequence causes RESTART command.
   * CAD_OFF     Ctrl-Alt-Del sequence sends SIGINT to init task.
   * POWER_OFF   Stop OS and remove all power from system, if possible.
   * RESTART2    Restart system using given command string.
   * SW_SUSPEND  Suspend system using software suspend if compiled in.
   * KEXEC       Restart system using a previously loaded Linux kernel
   */
  
  #define	LINUX_REBOOT_CMD_RESTART	0x01234567
  #define	LINUX_REBOOT_CMD_HALT		0xCDEF0123
  #define	LINUX_REBOOT_CMD_CAD_ON		0x89ABCDEF
  #define	LINUX_REBOOT_CMD_CAD_OFF	0x00000000
  #define	LINUX_REBOOT_CMD_POWER_OFF	0x4321FEDC
  #define	LINUX_REBOOT_CMD_RESTART2	0xA1B2C3D4
  #define	LINUX_REBOOT_CMD_SW_SUSPEND	0xD000FCE2
  #define	LINUX_REBOOT_CMD_KEXEC		0x45584543
  
  
  #ifdef __KERNEL__
  
  #include <linux/notifier.h>
c5f41752f   Amerigo Wang   notifiers: sys: m...
41
42
43
44
  #define SYS_DOWN	0x0001	/* Notify of system down */
  #define SYS_RESTART	SYS_DOWN
  #define SYS_HALT	0x0002	/* Notify of system halt */
  #define SYS_POWER_OFF	0x0003	/* Notify of system power off */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
45
46
47
48
49
50
51
52
53
54
55
  extern int register_reboot_notifier(struct notifier_block *);
  extern int unregister_reboot_notifier(struct notifier_block *);
  
  
  /*
   * Architecture-specific implementations of sys_reboot commands.
   */
  
  extern void machine_restart(char *cmd);
  extern void machine_halt(void);
  extern void machine_power_off(void);
dc009d924   Eric W. Biederman   [PATCH] kexec: ad...
56
  extern void machine_shutdown(void);
6e274d144   Alexander Nyberg   [PATCH] kdump: Us...
57
58
  struct pt_regs;
  extern void machine_crash_shutdown(struct pt_regs *);
dc009d924   Eric W. Biederman   [PATCH] kexec: ad...
59

4a00ea1e1   Eric W. Biederman   [PATCH] Refactor ...
60
61
62
  /* 
   * Architecture independent implemenations of sys_reboot commands.
   */
ca195b7f6   Huang Ying   kexec jump: remov...
63
  extern void kernel_restart_prepare(char *cmd);
4a00ea1e1   Eric W. Biederman   [PATCH] Refactor ...
64
65
66
  extern void kernel_restart(char *cmd);
  extern void kernel_halt(void);
  extern void kernel_power_off(void);
83cc5ed3c   Adrian Bunk   [PATCH] kernel/sy...
67

eb5572fed   Dave Young   sysctl extern cle...
68
  extern int C_A_D; /* for sysctl */
83cc5ed3c   Adrian Bunk   [PATCH] kernel/sy...
69
  void ctrl_alt_del(void);
4a00ea1e1   Eric W. Biederman   [PATCH] Refactor ...
70

10a0a8d4e   Jeremy Fitzhardinge   Add common orderl...
71
72
73
74
  #define POWEROFF_CMD_PATH_LEN	256
  extern char poweroff_cmd[POWEROFF_CMD_PATH_LEN];
  
  extern int orderly_poweroff(bool force);
7c9034735   Eric W. Biederman   [PATCH] Add emerg...
75
76
77
78
79
80
  /*
   * Emergency restart, callable from an interrupt handler.
   */
  
  extern void emergency_restart(void);
  #include <asm/emergency-restart.h>
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
81
82
83
  #endif
  
  #endif /* _LINUX_REBOOT_H */