home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / linux / reboot.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  2.2 KB  |  80 lines

  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.  
  42. extern int register_reboot_notifier(struct notifier_block *);
  43. extern int unregister_reboot_notifier(struct notifier_block *);
  44.  
  45.  
  46. /*
  47.  * Architecture-specific implementations of sys_reboot commands.
  48.  */
  49.  
  50. extern void machine_restart(char *cmd);
  51. extern void machine_halt(void);
  52. extern void machine_power_off(void);
  53.  
  54. extern void machine_shutdown(void);
  55. struct pt_regs;
  56. extern void machine_crash_shutdown(struct pt_regs *);
  57.  
  58. /* 
  59.  * Architecture independent implemenations of sys_reboot commands.
  60.  */
  61.  
  62. extern void kernel_restart_prepare(char *cmd);
  63. extern void kernel_shutdown_prepare(enum system_states state);
  64.  
  65. extern void kernel_restart(char *cmd);
  66. extern void kernel_halt(void);
  67. extern void kernel_power_off(void);
  68. extern void kernel_kexec(void);
  69.  
  70. /*
  71.  * Emergency restart, callable from an interrupt handler.
  72.  */
  73.  
  74. extern void emergency_restart(void);
  75. #include <asm/emergency-restart.h>
  76.  
  77. #endif
  78.  
  79. #endif /* _LINUX_REBOOT_H */
  80.