Hi everyone, Here is the first attempt at getting fastboot flashing functions working on top of a NAND.
While the NAND support itself was quite easy to do, the support for the Android sparse images was quite difficult to add, and ended up being a quite huge refactoring of the sparse parse already in tree, that was tied to the MMC layer. This serie has been tested on a CHIP and a Cubietruck, two Allwinner devices, the CHIP for the NAND, and the Cubietruck to test the MMC. Let me know what you think, Maxime Maxime Ripard (13): mtd: uboot: Add meaningful error message sparse: Move main header parsing to a function of its own sparse: Refactor chunk parsing function sparse: Simplify multiple logic sparse: Implement storage abstraction fastboot: Move fastboot response functions to fastboot core fastboot: Implement NAND backend fastboot: nand: Add pre erase and write hooks sparse: Rename the file and header sunxi: Make the fastboot buffer larger sunxi: Add support for android boot image sunxi: A13-Olinuxino: Enable the USB OTG controller sunxi: cubietruck: Enable the USB OTG controller common/Makefile | 7 +- common/aboot.c | 244 --------------------------- common/fb_mmc.c | 82 ++++++---- common/fb_nand.c | 219 +++++++++++++++++++++++++ common/sparse.c | 354 ++++++++++++++++++++++++++++++++++++++++ configs/A13-OLinuXino_defconfig | 2 + configs/Cubietruck_defconfig | 5 + drivers/mtd/mtd_uboot.c | 2 +- drivers/usb/gadget/f_fastboot.c | 39 ++++- include/configs/sunxi-common.h | 3 +- include/fastboot.h | 22 +++ include/fb_nand.h | 10 ++ include/{aboot.h => sparse.h} | 15 +- 13 files changed, 714 insertions(+), 290 deletions(-) delete mode 100644 common/aboot.c create mode 100644 common/fb_nand.c create mode 100644 common/sparse.c create mode 100644 include/fastboot.h create mode 100644 include/fb_nand.h rename include/{aboot.h => sparse.h} (61%) -- 2.5.0 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot