#ifdef CONFIG_TIZEN
extern int tizen_reboot_check(void);
+extern int tizen_reboot_recovery_check(void);
#endif
int do_cboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
DBG("do_cboot:boot mode is %d\n",bootmode);
#ifdef CONFIG_TIZEN
- if (bootmode == CMD_NONE) {
- bootmode = CMD_NORMAL_MODE;
+ if (bootmode == CMD_NONE || bootmode == CMD_CHARGE_MODE) {
+ if (bootmode == CMD_NONE)
+ bootmode = CMD_NORMAL_MODE;
if (tizen_reboot_check()) {
bootmode = CMD_THOR_MODE;
DBG("do_cboot:boot mode is %d\n",bootmode);
+ } else if (tizen_reboot_recovery_check()) {
+#ifdef CONFIG_RAMDISK_BOOT
+ bootmode = CMD_RECOVERY_MODE;
+#else
+ bootmode = CMD_NORMAL_MODE;
+#endif
+ DBG("do_cboot:boot mode is %d\n",bootmode);
}
}
cmd_mode_regist(boot_mode_array);
if((bootmode > CMD_POWER_DOWN_DEVICE) && (0 != boot_mode_array[bootmode])){
+ /* goto main_loop() if any input is hit from console */
+ if (tstc())
+ return 0;
DBG("do_cboot: enter boot mode\n");
boot_mode_array[bootmode]();
}else{