文章出處:
1.fastboot簡介
fastboot是android快速公升級的一種方法,fastboot的協議fastboot_protocol.txt在原始碼目錄./bootable/bootloader/legacy下可以找到。
fastboot客戶端是作為android系統編譯的一部分,編譯後位於./out/host/linux-x86/bin/fastboot目錄下。
fastboot命令例項:sudo fastboot flash kernel path-to-kernel/uimage
燒寫rootfs類似:sudo fastboot flash system path-to-system/system.img
2.命令
2.1 公升級系統
sudo fastboot flash bootloader u-boot.bin
sudo fastboot flash kernel uimage
sudo fastboot flash system system.img
sudo fastboot flash userdata userdata.img
sudo fastboot flash ramdisk ramdisk-uboot.img
sudo fastboot erase cache
fastboot flash 例:fastboot flash boot boot.img或fastboot flash system system.img等。
fastboot flashall 注意:此命令會在當前目錄中查詢所有img檔案,將這些img檔案燒寫到所有對應的分割槽中,並重新啟動手機。
一次燒寫boot,system,recovery分割槽:
(1)建立包含boot.img,system.img,recovery.img檔案的zip包。
(2)執行:fastboot update
燒寫開機畫面:
fastboot flash splash1 開機畫面
2.2 重啟系統
sudo fastboot reboot
2.3 不燒寫flash情況下除錯
sudo fastboot boot uimage 或者u-boot.bin
2.4 檢視版本號
sudo fastboot getver:version
2.5 復位到bootloader
sudo fastboot reboot-bootloader
2.6 命令格式
主機端傳送字串的命令,字串小於等於64個位元組,客戶端首先返回四個位元組的內容,是okay、fail、data、info之一,隨後跟著是資訊或數資料。
2.7 清空分割槽
fastboot erase 例:fastboot erase boot或fastboot erase system等。
fastboot erase boot
fastboot erase system
fastboot erase data
fastboot erase cache
上面的命令也可以簡化成一條命令
fastboot erase system -w
2.8 獲取客戶端(手機端)變數資訊
fastboot getvar version:version-bootloader:version-baseband:product:serialno:secure
version 客戶端支援的fastboot協議版本
version-bootloader bootloader的版本號
version-baseband 基帶版本
product 產品名稱
serialno 產品序列號
secure 返回yes 表示在刷機時需要獲取簽名
3.支援的引數
偏移和位址在u-boot中定義,要想使用好fastboot,就必須要知道引數名稱與檔案的對應關係。
name
offset
size
xloader
0x00000000
0x00080000
bootloader
0x00080000
0x00180000
environment
0x001c0000
0x00040000
kernel
0x00200000
0x01d00000
system
0x02000000
0x0a000000
userdata
0x0c000000
0x02000000
cache
0x0e000000
0x02000000
name
type of file
usual file
xloader
xloader binary
mlobootloader
uboot binary
u-boot.bin
environment
text file
list of variables to set
kernel
kernel or kernel + ramdisk
uimage, umulti
system
yaffs2
system.img
userdata
yaffs2
userdata.img
cache
yaffs2?
4.其他功能
4.1環境變數
fastboot支援環境變數檔案,通常在fastboot燒寫nand flash時,會將偏移量和大小寫入環境變數中,命名格式為:
_nand_offset
_nand_size
例如,核心燒寫完成後printenv可以看到:
kernel_nand_offset=0x140000
kernel_nand_size=0x1f70000
4.2檢視usb裝置
檢視連線到otg的usb裝置情況,lsusb:
bus 008 device 030: id 0451:cafe texas instruments, inc. <----- fastboot
更多細節檢視cat /proc/bus/usb/devices
4.3 靜態模組位址
fastboot重用核心的nand位址分配方式,並且大部分是可以變化的,但是下面列出來的這些位址是不變的。
name offset size
xloader 0x00000000 0x00080000
bootloader 0x00080000 0x00180000
environment 0x001c0000 0x00040000
4.4 檔案大小限制
5 參考文獻
2. fastboot_protocol.txt
fastboot命令詳解
1.檢視fastboot命令的幫助 fastboot 顯示如下資訊 view plain usage fastboot commands update reflash device from update.zip flashall flash boot flash system flash writ...
使用fastboot命令刷機流程詳解
準備工作 首先需要準備好刷機包,可以是自己編譯的,也可以是從別處拷貝的,但一定要確保刷機包適用於你的 android 裝置。然後解壓刷機包,解壓後我們可以得到 boot.img recovery.img system.img bootloader 檔案,正是這些檔案構成了 android 裝置的系統...
fastboot的使用方法
fastboot的使用方法 簡單的fastboot命令 1.重啟g1 fastboot reboot 2.刷所有分割槽 以下命令會在當前目錄尋找各種所有的image檔案,並且在刷完所有分割槽後重啟手機 fastboot flashall 3.刷指定分割槽 fastboot flash 如 fastb...