[U-Boot] [PATCH v3 00/15] Add an SPL to boot the da850evm from SPI
Christian Riesch
christian.riesch at omicron.at
Fri Nov 25 13:37:29 CET 2011
Hi all,
Heiko Schocher added support for the low level configuration
of the DA850 SoCs and I would like to use this code on my board. At the
same time I would like to add support for this low level configuration
for the da850evm board. This makes it possible to test/use the
lowlevel functions also for developers who don't have access neither to
Heiko's board nor to mine.
The patchset aims at implementing SPL support for the da850evm
configuration to allow booting this board from SPI flash without
using the UBL (see doc/README.davinci).
Changes for v3:
- removed definition of variables from header files (pinmux configs),
added .c file for these definitions instead
- removed noise and hardcoded values from drivers/mtd/spi/spi_spl_load.c
- split large patches into smaller ones
- replaced $(PAD_TO) in Makefile by $(CONFIG_SPL_MAX_SIZE)
- moving the pinmux definitions for da830 is not included anymore, I'll
do this later in a separate patch
Not changed for v3:
- I kept the #if !defined... in arch/arm/lib/eabi_compat.c since I am
afraid that this will cause problems when debugging SPLs, see
my comment in [1].
Major changes for v2:
- Added header files that contain the definition of the pinmux structs.
- Added code that actually loads u-boot from SPI flash and starts it.
The first patches move the pinmux functions from the board tree
to the arch tree and also use the in the lowlevel configuration
in arch/arm/cpu/arm926ejs/davinci/da850_lowlevel.c.
Patches #8 and #9 fix two problems I had during development.
The other patches add the SPL and fix mkimage for the building of AIS
images.
The patches apply on top of mainline u-boot and Heiko's patch
arm, arm926ejs: always do cpu critical inits
http://patchwork.ozlabs.org/patch/124787/
To build run
make da850evm_config
make u-boot.ais
Then program u-boot.ais to SPI flash on the da850evm.
Regards, Christian
[1] http://lists.denx.de/pipermail/u-boot/2011-November/110727.html
[2] http://lists.denx.de/pipermail/u-boot/2011-November/109997.html
Cc: Heiko Schocher <hs at denx.de>
Cc: Sandeep Paulraj <s-paulraj at ti.com>
Christian Riesch (15):
arm, davinci: Move pinmux functions from board to arch tree
arm, hawkboard: Remove obsolete struct pinmux_config i2c_pins
arm, da850evm: Do pinmux configuration for EMAC together with other
pinmuxes
arm, da850: Add pinmux configurations to the arch tree
arm, da850evm: Use the pinmux configurations defined in the arch tree
arm, hawkboard: Use the pinmux configurations defined in the arch
tree
arm, davinci: Remove duplication of pinmux configuration code
arm, davinci: Fix clear bss loop for zero length bss
arm: printf() is not available in some SPL configurations
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 | 6 +-
arch/arm/cpu/arm926ejs/davinci/da850_lowlevel.c | 36 +----
arch/arm/cpu/arm926ejs/davinci/da850_pinmux.c | 166 ++++++++++++++++++++
.../arm/cpu/arm926ejs/davinci/pinmux.c | 0
arch/arm/cpu/arm926ejs/davinci/spl.c | 34 ++++-
arch/arm/cpu/arm926ejs/start.S | 8 +-
arch/arm/include/asm/arch-davinci/hardware.h | 2 +
arch/arm/include/asm/arch-davinci/pinmux_defs.h | 50 ++++++
arch/arm/lib/eabi_compat.c | 2 +
board/davinci/common/Makefile | 2 +-
board/davinci/da8xxevm/config.mk | 5 +
board/davinci/da8xxevm/da830evm.c | 2 -
board/davinci/da8xxevm/da850evm.c | 163 ++++----------------
board/davinci/da8xxevm/hawkboard_nand_spl.c | 59 +------
board/davinci/da8xxevm/u-boot-spl.lds | 73 +++++++++
board/davinci/ea20/ea20.c | 2 -
doc/README.SPL | 1 +
drivers/mtd/spi/Makefile | 6 +
drivers/mtd/spi/spi_spl_load.c | 58 +++++++
include/configs/da850_am18xxevm.h | 1 +
include/configs/da850evm.h | 54 +++++++
include/configs/hawkboard.h | 1 +
include/spi_flash.h | 3 +
lib/Makefile | 2 +
nand_spl/board/davinci/da8xxevm/Makefile | 11 +-
tools/mkimage.c | 97 ++++++------
28 files changed, 584 insertions(+), 274 deletions(-)
create mode 100644 arch/arm/cpu/arm926ejs/davinci/da850_pinmux.c
rename board/davinci/common/davinci_pinmux.c => arch/arm/cpu/arm926ejs/davinci/pinmux.c (100%)
create mode 100644 arch/arm/include/asm/arch-davinci/pinmux_defs.h
create mode 100644 board/davinci/da8xxevm/config.mk
create mode 100644 board/davinci/da8xxevm/u-boot-spl.lds
create mode 100644 drivers/mtd/spi/spi_spl_load.c
More information about the U-Boot
mailing list