1#ifndef _SYS_REBOOT_H 2#define _SYS_REBOOT_H 3#ifdef __cplusplus 4extern "C" { 5#endif 6 7#define RB_AUTOBOOT 0x01234567 8#define RB_HALT_SYSTEM 0xcdef0123 9#define RB_ENABLE_CAD 0x89abcdef 10#define RB_DISABLE_CAD 0 11#define RB_POWER_OFF 0x4321fedc 12#define RB_SW_SUSPEND 0xd000fce2 13#define RB_KEXEC 0x45584543 14#define RB_MAGIC1 0xfee1dead 15#define RB_MAGIC2 672274793 16 17/** 18 * @brief reboots the device, or enables/disables the reboot keystroke. 19 * @param type commands accepted by the reboot() system call. 20 * -- RESTART Restart system using default command and mode. 21 * -- HALT Stop OS and give system control to ROM monitor, if any. 22 * -- CAD_ON Ctrl-Alt-Del sequence causes RESTART command. 23 * -- CAD_OFF Ctrl-Alt-Del sequence sends SIGINT to init task. 24 * -- POWER_OFF Stop OS and remove all power from system, if possible. 25 * -- RESTART2 Restart system using given command string. 26 * -- SW_SUSPEND Suspend system using software suspend if compiled in. 27 * -- KEXEC Restart system using a previously loaded Linux kernel. 28 * @return reboot result. 29 * @retval 0 is returned on success, if CAD was successfully enabled/disabled. 30 * @retval -1 is returned on failure, and errno is set to indicate the error. 31 */ 32int reboot(int); 33 34#ifdef __cplusplus 35} 36#endif 37#endif 38