167171e13SJacob Chen #ifndef __REBOOT_MODE_H 267171e13SJacob Chen #define __REBOOT_MODE_H 367171e13SJacob Chen 467171e13SJacob Chen /* high 24 bits is tag, low 8 bits is type */ 567171e13SJacob Chen #define REBOOT_FLAG 0x5242C300 6747423edSJason Zhu /* cold boot */ 7747423edSJason Zhu #define BOOT_COLD 0 867171e13SJacob Chen /* normal boot */ 967171e13SJacob Chen #define BOOT_NORMAL (REBOOT_FLAG + 0) 1067171e13SJacob Chen /* enter loader rockusb mode */ 1167171e13SJacob Chen #define BOOT_LOADER (REBOOT_FLAG + 1) 1267171e13SJacob Chen /* enter recovery */ 1367171e13SJacob Chen #define BOOT_RECOVERY (REBOOT_FLAG + 3) 14791112ddSJoseph Chen /* reboot by panic */ 15791112ddSJoseph Chen #define BOOT_PANIC (REBOOT_FLAG + 7) 16791112ddSJoseph Chen /* reboot by watchdog */ 17791112ddSJoseph Chen #define BOOT_WATCHDOG (REBOOT_FLAG + 8) 1867171e13SJacob Chen /* enter fastboot mode */ 1967171e13SJacob Chen #define BOOT_FASTBOOT (REBOOT_FLAG + 9) 2067171e13SJacob Chen /* enter charging mode */ 2167171e13SJacob Chen #define BOOT_CHARGING (REBOOT_FLAG + 11) 2267171e13SJacob Chen /* enter usb mass storage mode */ 2367171e13SJacob Chen #define BOOT_UMS (REBOOT_FLAG + 12) 24*0efe6414STony Xu /* enter dfu download mode */ 25*0efe6414STony Xu #define BOOT_DFU (REBOOT_FLAG + 13) 2647a9f8fcSAndy Yan /* enter bootrom download mode */ 2747a9f8fcSAndy Yan #define BOOT_BROM_DOWNLOAD 0xEF08A53C 2867171e13SJacob Chen 2947a9f8fcSAndy Yan #ifndef __ASSEMBLY__ 30be55ced3SAndy Yan int setup_boot_mode(void); 3147a9f8fcSAndy Yan #endif 32be55ced3SAndy Yan 3367171e13SJacob Chen #endif 34