[U-Boot] [PATCH v6 0/6] Add an SPL to boot the da850evm from SPI

Christian Riesch christian.riesch at omicron.at
Fri Dec 9 20:47:33 CET 2011


Hi,
this is v6 of the last part of my recent patchset

[PATCH v3 00/15] Add an SPL to boot the da850evm from SPI
http://lists.denx.de/pipermail/u-boot/2011-November/111182.html

Most of the other parts are already merged, together with
this patchset they introduce an SPL for the da850evm to run
u-boot directly without the need of a UBL (see doc/README.davinci).

The first patches fix dependencies and introduce a function
to load the u-boot image from SPI flash. Patch #4 adds an
SPL to the da850evm configuration. Finally, a simple
AIS (Application Image Script) is required to start the SPL.
This AIS is generated by mkimage. Patch #5 fixes mkimage for building
AIS. Finally the last patch introduces a u-boot.ais target in the
Makefile.

Changes for v6:
- rebased to git://git.denx.de/u-boot.git master

Changes for v5:
- changed formatting (indentation) of the $(obj)u-boot.ais target in
  the Makefile
- removed useless '0 | ... ' from include/configs/da850evm.h
- added Acked-bys

Changes for v4:
- added documentation for the SPL to doc/README.davinci
- split patchset because it got too big
- use COBJS-$(CONFIG_SPL_SPI_LOAD) instead of ifdefs in
  drivers/mtd/spi/Makefile
- use __noreturn instead of __attribute__((noreturn))
- added Acked-by

Changes for v3:
- removed noise and hardcoded values from drivers/mtd/spi/spi_spl_load.c
- replaced $(PAD_TO) in Makefile by $(CONFIG_SPL_MAX_SIZE)

Major changes for v2:
- Added code that actually loads u-boot from SPI flash and starts it.

Prerequisites:
- This patchset builds fine on gcc version 4.5.2 (Sourcery G++ Lite 
  2011.03-41). However, for some toolchains, e.g., gcc 4.2.2 from
  ELDK 4.2, the build results in a linker error: "arm-linux-gnueabi-ld:
  error: no memory region specified for loadable section `.ARM.exidx'".
  In this case, the following patch is required:
  arm, davinci: Use lldiv for the 64-bit divisions in timer.c
  http://patchwork.ozlabs.org/patch/130409/

To build run
  make da850evm_config
  make u-boot.ais
Then program u-boot.ais to the SPI flash on the da850evm.

Best regards,
Christian

Cc: Heiko Schocher <hs at denx.de>
Cc: Sandeep Paulraj <s-paulraj at ti.com>
Cc: Tom Rini <trini at ti.com>

Christian Riesch (6):
  spl: display_options.o is required for SPI flash support in SPL
  sf: Add spi_boot() to allow booting from SPI flash in an SPL
  arm, davinci: Add SPL support for DA850 SoCs
  arm, da850evm: Add an SPL for SPI boot
  mkimage: Fix variable length header support
  arm, davinci: Add support for generating AIS images to the Makefile

 .gitignore                              |    1 +
 Makefile                                |   13 ++++
 arch/arm/cpu/arm926ejs/davinci/Makefile |    3 +-
 arch/arm/cpu/arm926ejs/davinci/spl.c    |   34 +++++++++++-
 board/davinci/da8xxevm/da850evm.c       |    4 +-
 board/davinci/da8xxevm/u-boot-spl.lds   |   73 +++++++++++++++++++++++
 doc/README.SPL                          |    1 +
 doc/README.davinci                      |    9 +++
 drivers/mtd/spi/Makefile                |    4 +
 drivers/mtd/spi/spi_spl_load.c          |   58 ++++++++++++++++++
 include/configs/da850evm.h              |   87 +++++++++++++++++++++++++++
 include/spi_flash.h                     |    3 +
 lib/Makefile                            |    2 +
 tools/mkimage.c                         |   97 ++++++++++++++++---------------
 14 files changed, 338 insertions(+), 51 deletions(-)
 create mode 100644 board/davinci/da8xxevm/u-boot-spl.lds
 create mode 100644 drivers/mtd/spi/spi_spl_load.c

-- 
1.7.4.1



More information about the U-Boot mailing list