Fastboot

From mbmwiki

Jump to: navigation, search

Fastboot is the standardized way of reflashing Android devices, replacing the older Motorola specific SBF protocol used prior.

Common commands

fastboot flash <partition> <filename>
fastboot reboot

FXZ Files

Fastboot XML Zip -- a zip file containing an xml file describing fastboot commands; these can be flashed by RSD Lite 5.x, or manually by running the equivalent fastboot commands.

<?xml version="1.0" encoding="UTF-8"?>
<flashing>
	<header>
    		<phone_model model="TARGA" />
    		<software_version version="" />
    	<interfaces>
      		<interface name="AP" />
    	</interfaces>
  	</header>
	<steps interface="AP">
		<step operation="flash" partition="cdt.bin" filename="cdt.bin" />
  		<step operation="reboot-bootloader" />
  		<step operation="erase" partition="cache" />
  		<step operation="flash" partition="lbl" filename="lbl" />
  		<step operation="flash" partition="logo.bin" filename="logo.bin" />
  		<step operation="flash" partition="ebr" filename="ebr" />
  		<step operation="flash" partition="mbr" filename="mbr" />
  		<step operation="flash" partition="devtree" filename="device_tree.bin" />
  		<step operation="flash" partition="system" filename="system.img" />
  		<step operation="flash" partition="boot" filename="boot.img" />
  		<step operation="flash" partition="recovery" filename="recovery.img"/>
  		<step operation="flash" partition="cdrom" filename="cdrom" />
  		<step operation="flash" partition="preinstall" filename="preinstall.img"/>
		<step operation="flash" partition="webtop" filename="grfs.img"/>
  		<step operation="flash" partition="radio" filename="radio.img" />
	</steps>
</flashing>
 

Parsing FXZ

A quick and dirty FXZ parser:

#!/bin/sh
while read p l; do
        case "$p" in
                \<step) (
                        eval "${l% *}";
                        bin/fastboot-$(uname) $operation $partition $filename
                );;
        esac
done < flash-fxz.xml
 
Personal tools