linux/include/linux/reboot.h
<<
>>
Prefs
   1#ifndef _LINUX_REBOOT_H
   2#define _LINUX_REBOOT_H
   3
   4/*
   5 * Magic values required to use _reboot() system call.
   6 */
   7
   8#define LINUX_REBOOT_MAGIC1     0xfee1dead
   9#define LINUX_REBOOT_MAGIC2     672274793
  10#define LINUX_REBOOT_MAGIC2A    85072278
  11#define LINUX_REBOOT_MAGIC2B    369367448
  12#define LINUX_REBOOT_MAGIC2C    537993216
  13
  14
  15/*
  16 * Commands accepted by the _reboot() system call.
  17 *
  18 * RESTART     Restart system using default command and mode.
  19 * HALT        Stop OS and give system control to ROM monitor, if any.
  20 * CAD_ON      Ctrl-Alt-Del sequence causes RESTART command.
  21 * CAD_OFF     Ctrl-Alt-Del sequence sends SIGINT to init task.
  22 * POWER_OFF   Stop OS and remove all power from system, if possible.
  23 * RESTART2    Restart system using given command string.
  24 * SW_SUSPEND  Suspend system using software suspend if compiled in.
  25 * KEXEC       Restart system using a previously loaded Linux kernel
  26 */
  27
  28#define LINUX_REBOOT_CMD_RESTART        0x01234567
  29#define LINUX_REBOOT_CMD_HALT           0xCDEF0123
  30#define LINUX_REBOOT_CMD_CAD_ON         0x89ABCDEF
  31#define LINUX_REBOOT_CMD_CAD_OFF        0x00000000
  32#define LINUX_REBOOT_CMD_POWER_OFF      0x4321FEDC
  33#define LINUX_REBOOT_CMD_RESTART2       0xA1B2C3D4
  34#define LINUX_REBOOT_CMD_SW_SUSPEND     0xD000FCE2
  35#define LINUX_REBOOT_CMD_KEXEC          0x45584543
  36
  37
  38#ifdef __KERNEL__
  39
  40#include <linux/notifier.h>
  41
  42extern int register_reboot_notifier(struct notifier_block *);
  43extern int unregister_reboot_notifier(struct notifier_block *);
  44
  45
  46/*
  47 * Architecture-specific implementations of sys_reboot commands.
  48 */
  49
  50extern void machine_restart(char *cmd);
  51extern void machine_halt(void);
  52extern void machine_power_off(void);
  53
  54extern void machine_shutdown(void);
  55struct pt_regs;
  56extern void machine_crash_shutdown(struct pt_regs *);
  57
  58/* 
  59 * Architecture independent implemenations of sys_reboot commands.
  60 */
  61
  62extern void kernel_restart_prepare(char *cmd);
  63extern void kernel_restart(char *cmd);
  64extern void kernel_halt(void);
  65extern void kernel_power_off(void);
  66
  67void ctrl_alt_del(void);
  68
  69#define POWEROFF_CMD_PATH_LEN   256
  70extern char poweroff_cmd[POWEROFF_CMD_PATH_LEN];
  71
  72extern int orderly_poweroff(bool force);
  73
  74/*
  75 * Emergency restart, callable from an interrupt handler.
  76 */
  77
  78extern void emergency_restart(void);
  79#include <asm/emergency-restart.h>
  80
  81#endif
  82
  83#endif /* _LINUX_REBOOT_H */
  84