fastboot cmd 分析

17 篇文章 0 订阅
14 篇文章 0 订阅

fastboot cmd 分析

usage: fastboot ”option” “command“

commands:  
update <filename>   reflash device from update.zip  
flashall    "flash boot" + "flash system"  
flash <partition> [ <filename> ] write a file to a flash partition  
erase <partition>   erase a flash partition  
getvar <variable>   display a bootloader variable  
boot <kernel> [ <ramdisk> ]  download and boot kernel  
flash:raw boot <kernel> [ <ramdisk> ] create bootimage and flash it  
devices     list all connected devices  
reboot     reboot device normally  
reboot-bootloader   reboot device into bootloader  
options:  
-w     erase userdata and cache  
-s <serial number>   specify device serial number  
-p <product>    specify product name  
-c <cmdline>    override kernel commandline  
-i <vendor id>    specify a custom USB vendor id 

1 升级系统
fastboot flash aboot emmc_appsboot.mbn
fastboot flash boot boot.image
fastboot flash kernel uImage
fastboot flash system system.img
fastboot flash userdata userdata.img
fastboot flash ramdisk ramdisk-uboot.img
2 具体分析aboot中的代码

/* register commands and variables for fastboot */
void aboot_fastboot_register_commands(void)
{
    int i;

    struct fastboot_cmd_desc cmd_list[] = {
                                            /* By default the enabled list is empty. */
                                            {"", NULL},
                                            /* move commands enclosed within the below ifndef to here
                                             * if they need to be enabled in user build.
                                             */
#ifndef DISABLE_FASTBOOT_CMDS
                                            /* Register the following commands only for non-user builds */
                                            {"flash:", cmd_flash},
                                            {"erase:", cmd_erase},
                                            {"boot", cmd_boot},
                                            {"continue", cmd_continue},
                                            {"reboot", cmd_reboot},
                                            {"reboot-bootloader", cmd_reboot_bootloader},
                                            {"oem unlock", cmd_oem_unlock},

                                            {"oem device-info", cmd_oem_devinfo},
                                            {"preflash", cmd_preflash},
                                            {"oem enable-charger-screen", cmd_oem_enable_charger_screen},
                                            {"oem disable-charger-screen", cmd_oem_disable_charger_screen},
                                            {"oem select-display-panel", cmd_oem_select_display_panel},
                                            {"oem reboot recovery", cmd_reboot_recovery},
#endif
                                          };

可以看到实际LK起来后通过按键的获取来选择不同的启动方式,了解LK按键的获取和处理请查看我的“android不同按键启动”博文,
通过定义一个”oem reboot recovery” 再写一个cmd_reboot_recovery 的实现。就可以使用一个fastboot的命令了。如:fastboot oem reboot recovery

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值