[U-Boot] [PATCH v2 00/22] U-Boot MMC SPL for OMAP4

Aneesh V aneesh at ti.com
Sun May 15 17:21:18 CEST 2011


This series adds mmc SPL support for OMAP4. This is essentially
an up-streaming effort for TI's x-loader for OMAP4 using the SPL
framework

This work partly draws upon previous work done for x-loader by:
	Santosh Shilimkar <santosh.shilimkar at ti.com>
	Rajendra Nayak <rnayak at ti.com>
and many others

This series is depedent on the following series:
http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/95550

Features supported:
* Clock init - DPLL locking, clock domains/modules enabling
* SDRAM/DMM initialization
* Mux initialization
* MMC raw read support
* MMC FAT read support

Improvments over x-loader:
* Code completely revamped
* DPLL programming that works for all SYS_CLK frequencies
* Automatic SDRAM identification and initialization
* Board dependent parts(especially mux) deferred to u-boot. So, same
  SPL will work for Panda and SDP and most likely on any other board
  that comes along
* Determination of u-boot size to avoid reading extra content while
  loading U-Boot
* Modular apporach to enable future addition of support for all OMAP3/4
  platforms

V2:
* Some fixes in SDRAM init, clock init
* Use of pre-calculated M & N values for DPLL locking instead
  run-time calculation
* Change in make files to allow reuse of common rules
  between boards
* Console initialization moved further earlier in the boot
  allowing traces from even clock initialization code
* Reuse utility macros from a previous series

Aneesh V (21):
  omap4: add OMAP4430 revision check
  armv7: start.S: provide a hook for saving boot params
  omap4: save parameters passed by ROM code to SPL
  arm: new labels in the linker script file
  Add generic spl infrastructure
  armv7: start.S: add SPL support
  omap: add spl support
  omap4: add spl support for OMAP4 SDP
  omap4: utility function to identify the context of hw init
  omap4: separate mux settings into essential and non essential parts
  omap4: correct mux data for sdp4430
  omap4: add clock support
  omap4: add serial console support to SPL
  omap4: add sdram init support
  omap4: calculate EMIF register values
  omap4: automatic sdram detection
  armv7: embed u-boot size within u-boot for use from SPL
  omap: add MMC support to SPL
  omap: spl: add FAT support over MMC
  omap4: add spl support for OMAP4 Panda
  omap: spl: add more debug traces

John Rigby (1):
  mkimage: Add OMAP boot image support

 Makefile                                           |   24 +
 arch/arm/cpu/armv7/cpu.c                           |    7 +
 arch/arm/cpu/armv7/omap-common/Makefile            |    1 +
 .../{omap4/lowlevel_init.S => omap-common/utils.c} |   76 +-
 arch/arm/cpu/armv7/omap4/Makefile                  |    3 +
 arch/arm/cpu/armv7/omap4/board.c                   |  140 ++-
 arch/arm/cpu/armv7/omap4/clocks.c                  |  764 +++++++++++
 arch/arm/cpu/armv7/omap4/clocks_get_m_n.c          |  154 +++
 arch/arm/cpu/armv7/omap4/emif.c                    | 1340 ++++++++++++++++++++
 arch/arm/cpu/armv7/omap4/lowlevel_init.S           |   31 +
 arch/arm/cpu/armv7/omap4/omap4_mux_data.h          |   76 ++
 arch/arm/cpu/armv7/omap4/sdram_elpida.c            |  267 ++++
 arch/arm/cpu/armv7/start.S                         |   50 +-
 arch/arm/cpu/armv7/u-boot.lds                      |    2 +
 arch/arm/include/asm/arch-omap4/clocks.h           |  506 ++++++++
 arch/arm/include/asm/arch-omap4/emif.h             | 1021 +++++++++++++++
 arch/arm/include/asm/arch-omap4/omap4.h            |   50 +-
 arch/arm/include/asm/arch-omap4/sys_proto.h        |   62 +-
 arch/arm/include/asm/armv7.h                       |    6 +-
 arch/arm/include/asm/global_data.h                 |    5 +
 arch/arm/include/asm/omap_common.h                 |   62 +
 arch/arm/include/asm/utils.h                       |    6 +
 board/ti/panda/panda.c                             |   25 +-
 board/ti/{sdp4430/sdp.h => panda/panda_mux_data.h} |   76 +-
 board/ti/sdp4430/config.mk                         |    3 +-
 board/ti/sdp4430/sdp.c                             |   25 +-
 .../{panda/panda.h => sdp4430/sdp4430_mux_data.h}  |  128 +--
 common/image.c                                     |    1 +
 include/configs/omap4_panda.h                      |   24 +
 include/configs/omap4_sdp4430.h                    |   24 +
 include/image.h                                    |    1 +
 spl/board/ti/omap4.mk                              |  176 +++
 .../config.mk => spl/board/ti/panda/Makefile       |   21 +-
 spl/board/ti/rules-omap.mk                         |   74 ++
 .../config.mk => spl/board/ti/sdp4430/Makefile     |   21 +-
 spl/board/ti/spl-omap.c                            |  206 +++
 .../armv7/u-boot.lds => spl/board/ti/spl-omap.lds  |   69 +-
 tools/Makefile                                     |    2 +
 tools/mkimage.c                                    |    2 +
 tools/mkimage.h                                    |    1 +
 tools/omapimage.c                                  |  229 ++++
 tools/omapimage.h                                  |   50 +
 42 files changed, 5498 insertions(+), 313 deletions(-)
 copy arch/arm/cpu/armv7/{omap4/lowlevel_init.S => omap-common/utils.c} (50%)
 create mode 100644 arch/arm/cpu/armv7/omap4/clocks.c
 create mode 100644 arch/arm/cpu/armv7/omap4/clocks_get_m_n.c
 create mode 100644 arch/arm/cpu/armv7/omap4/emif.c
 create mode 100644 arch/arm/cpu/armv7/omap4/omap4_mux_data.h
 create mode 100644 arch/arm/cpu/armv7/omap4/sdram_elpida.c
 create mode 100644 arch/arm/include/asm/arch-omap4/clocks.h
 create mode 100644 arch/arm/include/asm/arch-omap4/emif.h
 create mode 100644 arch/arm/include/asm/omap_common.h
 rename board/ti/{sdp4430/sdp.h => panda/panda_mux_data.h} (76%)
 rename board/ti/{panda/panda.h => sdp4430/sdp4430_mux_data.h} (67%)
 create mode 100644 spl/board/ti/omap4.mk
 copy board/ti/sdp4430/config.mk => spl/board/ti/panda/Makefile (63%)
 create mode 100644 spl/board/ti/rules-omap.mk
 copy board/ti/sdp4430/config.mk => spl/board/ti/sdp4430/Makefile (63%)
 create mode 100644 spl/board/ti/spl-omap.c
 copy arch/arm/cpu/armv7/u-boot.lds => spl/board/ti/spl-omap.lds (57%)
 create mode 100644 tools/omapimage.c
 create mode 100644 tools/omapimage.h



More information about the U-Boot mailing list