[PATCH 0/2] OMAP: Boot from UBI

Christoph Fritz chf.fritz at googlemail.com
Fri Jun 21 05:53:30 EDT 2013


This small set of patches adds boot from UBI support on OMAP SoCs:
MLO attaches UBI, loads barebox from within a static volume and
goes up from there.
The benefit: NAND wearleveling is also done for barebox.

A NAND layout can now look like this:

       +------------+-->0x00000000-> xload start   (MLO copy on 1st block)
       |            |
       |            |-->0x0001FFFF-> xload end
       |            |-->0x00020000-> xload1 start   (MLO backup copy on 2rd)
       |            |
       |            |-->0x0003FFFF-> xload1 end
       |            |-->0x00040000-> xload2 start   (MLO backup copy on 3rd)
       |            |
       |            |-->0x0005FFFF-> xload2 end
       |            |-->0x00060000-> xload3 start   (MLO backup copy on 4rd)
       |            |
       |            |-->0x0007FFFF-> xload3 end
       |            |-->0x00080000-> ubi start
       |            |
       |            |
       |            |     UBI-Volumes:
       |            |           - barebox_0 [1M]
       |            |           - bareboxenv_0 [512k]
       |            |           - kernel_0 [6M]
       |            |           - oftree_0 [512k]
       |            |           - bmp_0 [2M]
       |            |           - root [-]
       |            |
       |            |
       +------------+-->0x0FFFFFFF-> root end

Next step (ToDo) is to decrease boot-time because it takes nearly
six secounds to get to a fully featured barebox-prompt. Possible
solutions are:

 - use UBI Fastmap to decrease scan time
 - only scan UBI once and transfer gained data to next boot stage:
   MLO (scans UBI) -> Barebox (gets data) -> Kernel (gets data)

---
Christoph Fritz (2):
  ARM OMAP: MLO: add support for loading Barebox from UBI
  ARM OMAP: add support for loading Environment from UBI

 arch/arm/mach-omap/Kconfig |   44 +++++++++++++++++++++++++
 arch/arm/mach-omap/xload.c |   76 ++++++++++++++++++++++++++++++++++++++++++--
 common/Kconfig             |   34 ++++++++++++++++++++
 common/startup.c           |   17 ++++++++++
 4 files changed, 169 insertions(+), 2 deletions(-)

-- 
1.7.10.4





More information about the barebox mailing list