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 <h...@denx.de> Cc: Sandeep Paulraj <s-paul...@ti.com> Cc: Tom Rini <tr...@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 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot