void cmd_reboot_bootloader(const char *arg, void *data, unsigned sz) { dprintf(INFO, "rebooting the device to bootloader\n"); fastboot_okay(""); Set_Clr_RTC_PDN1_bit13(true); //Set RTC fastboot bit mtk_arch_reset(1); //bypass pwr key when reboot }
void platform_emergency_download(u32 timeout) { /* enter download mode */ print("%s emergency download mode(timeout: %ds).\n", MOD, timeout / 1000); platform_safe_mode(1, timeout); #if !CFG_FPGA_PLATFORM mtk_arch_reset(0); /* don't bypass power key */ #endif while(1); }
void mt6575_power_off(void) { //printf("mt_power_off\n"); /* pull PWRBB low */ rtc_bbpu_power_down(); while (1) { //printf("mt_power_off : check charger\n"); if (pmic_chrdet_status() == KAL_TRUE) mtk_arch_reset(0); } }
void platform_usb_auto_detect_flow() { print("USB DL Flag is %d when enter preloader \n",g_usbdl_flag); /*usb download flag haven't set */ if(g_usbdl_flag == 0){ /*set up usbdl flag*/ platform_safe_mode(1,CFG_USB_AUTO_DETECT_TIMEOUT_MS); print("Preloader going reset and trigger BROM usb auto detectiton!!\n"); /* WDT by pass powerkey reboot */ /* keep the previous status, pass it into reset function */ if (WDT_BY_PASS_PWK_REBOOT == mtk_wdt_boot_check()) mtk_arch_reset(1); else mtk_arch_reset(0); }else{ /*usb download flag have been set*/ } }
void cmd_oem_reboot2recovery(const char *arg, void *data, unsigned sz) { extern void Set_RTC_Recovery_Mode(bool flag)__attribute__((weak)); if(Set_RTC_Recovery_Mode) { Set_RTC_Recovery_Mode(1); fastboot_okay(""); mtk_arch_reset(1); //bypass pwr key when reboot } else { fastboot_fail("Not support this function (need RTC porting)"); } }
void cmd_reboot(const char *arg, void *data, unsigned sz) { dprintf(INFO, "rebooting the device\n"); fastboot_okay(""); mtk_arch_reset(1); //bypass pwr key when reboot }
/************************************************************************** * Reboot **************************************************************************/ void do_reboot (char mode) { mtk_arch_reset (mode); return; }