
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@denx.de Cc: Sandeep Paulraj s-paulraj@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