[U-Boot] [PATCH v2 00/14] Implement fastboot over NAND and sparse transfers

Maxime Ripard maxime.ripard at free-electrons.com
Thu Oct 15 14:34:08 CEST 2015


Hi everyone,

Here is the second attempt at getting fastboot flashing functions
working on top of a NAND, for arbitraly large images.

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 an A13-Olinuxino, two
Allwinner devices, the CHIP for the NAND, and the Cubietruck to test
the MMC.

Let me know what you think,
Maxime

Changes from v1:
  - Added support for multiple chunks transfers
  - fixed a bug in the image parsing block counts
  - Take the flashing errors into account now, instead of ignoring
    them.
  - Changed the name of the sparse images file to image-sparse.*
  - Fixed the floating point computations issues
  - Added the CONFIG_MUSB_GADGET option
  - Take NAND bad blocks into account now

Maxime Ripard (14):
  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
  fastboot: Move fastboot response functions to fastboot core
  sparse: Implement storage abstraction
  fastboot: Implement flashing session counter
  sparse: Implement several chunks flashing
  fastboot: Implement NAND backend
  fastboot: nand: Add pre erase and write hooks
  sparse: Rename the file and header
  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                     |  96 +++++----
 common/fb_nand.c                    | 213 +++++++++++++++++++
 common/image-sparse.c               | 393 ++++++++++++++++++++++++++++++++++++
 configs/A13-OLinuXino_defconfig     |   3 +
 configs/Cubietruck_defconfig        |   5 +
 drivers/mtd/mtd_uboot.c             |   2 +-
 drivers/usb/gadget/f_fastboot.c     |  54 ++++-
 include/configs/sunxi-common.h      |   1 +
 include/fastboot.h                  |  22 ++
 include/fb_mmc.h                    |   5 +-
 include/fb_nand.h                   |  11 +
 include/{aboot.h => image-sparse.h} |  17 +-
 14 files changed, 776 insertions(+), 297 deletions(-)
 delete mode 100644 common/aboot.c
 create mode 100644 common/fb_nand.c
 create mode 100644 common/image-sparse.c
 create mode 100644 include/fastboot.h
 create mode 100644 include/fb_nand.h
 rename include/{aboot.h => image-sparse.h} (53%)

-- 
2.5.3



More information about the U-Boot mailing list