[U-Boot] [RFC PATCH v2 00/12] Add an SPL for booting from SPI to da850evm

Christian Riesch christian.riesch at omicron.at
Mon Nov 21 21:59:43 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).

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.

This patchset is work in progress - I did for example not include
a feature requested by Heiko in [1]. Instead I just what to show
you the current state of my work and would like to ask you for comments.

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 #6 and #7 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/109997.html

Cc: Heiko Schocher <hs at denx.de>
Cc: Wolfgang Denk <wd at denx.de>
Cc: Sandeep Paulraj <s-paulraj at ti.com>
Cc: Stefano Babic <sbabic at denx.de>
Cc: Albert Aribaud <albert.u.boot at aribaud.net>
Cc: Sudhakar Rajashekhara <sudhakar.raj at ti.com>
Cc: Syed Mohammed Khasim <sm.khasim at gmail.com>
Cc: Sughosh Ganu <urwithsughosh at gmail.com>
Cc: Nick Thompson <nick.thompson at gefanuc.com>
Cc: Tom Rini <tom.rini at gmail.com>

Christian Riesch (12):
  arm, davinci: Move pinmux functions from board to arch tree
  arm, hawkboard: Remove obsolete struct pinmux_config i2c_pins
  arm, da850: Move the definitions of pinmux configurations to the arch
    tree
  arm, da830: Move the definitions of pinmux configurations to 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
  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                                           |   10 ++
 arch/arm/cpu/arm926ejs/davinci/Makefile            |    5 +-
 arch/arm/cpu/arm926ejs/davinci/da850_lowlevel.c    |   36 +----
 .../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/da830_pinmux.h   |  131 +++++++++++++++++
 arch/arm/include/asm/arch-davinci/da850_pinmux.h   |  152
++++++++++++++++++++
 arch/arm/include/asm/arch-davinci/hardware.h       |    2 +
 arch/arm/lib/eabi_compat.c                         |    3 +
 board/davinci/common/Makefile                      |    2 +-
 board/davinci/da8xxevm/config.mk                   |    5 +
 board/davinci/da8xxevm/da830evm.c                  |  116 +--------------
 board/davinci/da8xxevm/da850evm.c                  |  141
++----------------
 board/davinci/da8xxevm/hawkboard_nand_spl.c        |   51 +-------
 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                     |   60 ++++++++
 include/configs/da850evm.h                         |   53 +++++++-
 include/spi_flash.h                                |    2 +
 lib/Makefile                                       |    2 +
 nand_spl/board/davinci/da8xxevm/Makefile           |    6 +-
 tools/mkimage.c                                    |   97 +++++++------
 26 files changed, 622 insertions(+), 377 deletions(-)
 rename board/davinci/common/davinci_pinmux.c =>
arch/arm/cpu/arm926ejs/davinci/pinmux.c (100%)
 create mode 100644 arch/arm/include/asm/arch-davinci/da830_pinmux.h
 create mode 100644 arch/arm/include/asm/arch-davinci/da850_pinmux.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



On Monday, November 21, 2011, Christian Riesch <christian.riesch at omicron.at>
wrote:
> *** BLURB HERE ***
>
> Christian Riesch (12):
>  arm, davinci: Move pinmux functions from board to arch tree
>  arm, hawkboard: Remove obsolete struct pinmux_config i2c_pins
>  arm, da850: Move the definitions of pinmux configurations to the arch
>    tree
>  arm, da830: Move the definitions of pinmux configurations to 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
>  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                                           |   10 ++
>  arch/arm/cpu/arm926ejs/davinci/Makefile            |    5 +-
>  arch/arm/cpu/arm926ejs/davinci/da850_lowlevel.c    |   36 +----
>  .../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/da830_pinmux.h   |  131
+++++++++++++++++
>  arch/arm/include/asm/arch-davinci/da850_pinmux.h   |  152
++++++++++++++++++++
>  arch/arm/include/asm/arch-davinci/hardware.h       |    2 +
>  arch/arm/lib/eabi_compat.c                         |    3 +
>  board/davinci/common/Makefile                      |    2 +-
>  board/davinci/da8xxevm/config.mk                   |    5 +
>  board/davinci/da8xxevm/da830evm.c                  |  116 +--------------
>  board/davinci/da8xxevm/da850evm.c                  |  141
++----------------
>  board/davinci/da8xxevm/hawkboard_nand_spl.c        |   51 +-------
>  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                     |   60 ++++++++
>  include/configs/da850evm.h                         |   53 +++++++-
>  include/spi_flash.h                                |    2 +
>  lib/Makefile                                       |    2 +
>  nand_spl/board/davinci/da8xxevm/Makefile           |    6 +-
>  tools/mkimage.c                                    |   97 +++++++------
>  26 files changed, 622 insertions(+), 377 deletions(-)
>  rename board/davinci/common/davinci_pinmux.c =>
arch/arm/cpu/arm926ejs/davinci/pinmux.c (100%)
>  create mode 100644 arch/arm/include/asm/arch-davinci/da830_pinmux.h
>  create mode 100644 arch/arm/include/asm/arch-davinci/da850_pinmux.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
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>


More information about the U-Boot mailing list