Fastboot
From mbmwiki
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
