http://huaqianlee.github.io/2015/07/25/Android/Android%E6%BA%90%E7%A0%81bootable%E8%A7%A3%E6%9E%90%E4%B9%8BLK-bootloader-little-kernel/
Android Recovery 源码解析和界面定制
http://blog.csdn.net/austindev/article/details/55213444
adb reboot edl 刷机模式
adb reboot recovery recovery模式
#define ANDROID_RB_PROPERTY "sys.powerctl" // 控制启动状态
property_set(ANDROID_RB_PROPERTY, "shutdown,");
property_set(ANDROID_RB_PROPERTY, "reboot,bootloader");
property_set(ANDROID_RB_PROPERTY, "reboot,");
property_set(ANDROID_RB_PROPERTY, "reboot,edl");
case Device::SHUTDOWN:
ui->Print("Shutting down...\n");
property_set(ANDROID_RB_PROPERTY, "shutdown,");
break;
case Device::REBOOT_BOOTLOADER:
ui->Print("Rebooting to bootloader...\n");
property_set(ANDROID_RB_PROPERTY, "reboot,bootloader");
break;
default:
ui->Print("Rebooting...\n");
property_set(ANDROID_RB_PROPERTY, "reboot,");
break;
手机开机后,硬件系统上电,完成一系列的初始化工作:CPU、串口、终端、timer、DDR等硬件设备,然后加载bootloader,为后面内核加载做准备工作。在系统启动初始化完成后系统检测进入哪一种工作模式,这一部分代码的源文件在\bootable\bootloader\lk\app\aboot\aboot.c文件的aboot_init()函数中:
检测用户关机方式,如果是强制关机,则进入normal_boot模式
bootable\bootloader\lk\arch\arm\crt0.S