-
-10 14
-
在我们刷机的时候会经常看到 fastboot ,也就是开机的文字界面,这个fastboot是用c写的,在uboot检查完硬件以及初始化堆栈结构后将cs/ip指向fastboot代码段处执行的,他主要完成的功能是清除flash中的内容,往flash中烧写linux内核以及镜像文件,这些镜像文件包括.so以及framework的jar包。 fastboot协议是一种通过usb连接于bootloader通讯的机制
支持的主机平台linux,windows,moc
协议传输过程:
1. pc向设备(手机或者其他)发送一个命令,命令又ASCLL字符组成必须存在在一个不大于64byte的包里。
2. 设备向PC响应一个不大于64byte的包。包的最前面四个byte是“OKAY”、“FAIL”、“DATA”、“INFO”中的一个。后面如果还有byte,包含就是ASCII信息。
3.如果#2时,PC收到的是DATA命令的话,就开始传输数据。0byte数据会被忽略。当#2指示的数据大小被传输完成时,数据传输结束
下面直接进行操作,如果不知道命令怎么用可以查看fastboot --help(还有这个fastboot命令是sdk里面的,可以把它添加到环境变量里面就可以)
sage: fastboot [ <option> ] <command>
commands:
update <filename> reflash device from update.zip
flashall flash boot + recovery + 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
-b <base_addr> specify a custom kernel base address
-n <page size> specify the nand page size. default: 2048
一查看有一大堆的东西,可以通过以下方法烧写镜像,但是关键的是你要首先通过其他的方式烧写bootloader,因为这个fastboot是跟bootloader通讯的
进入bootloader之后
fastboot flash -kernel /内核镜像路径文件
fastboot flash -system /系统镜像路径文件
fastboot reboot 重新启动看看结果吧
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
- 评论(0)
发表评论 TrackBack