[U-Boot] [PATCH v2 0/11] Add full DDR init for Marvell Armada-XP MV78xx0 (AXP)

Luka Perkov luka.perkov at sartura.hr
Wed Jan 28 23:28:37 CET 2015


On Mon, Jan 19, 2015 at 11:33:38AM +0100, Stefan Roese wrote:
> This patch adds the DDR3 setup and training code taken from the Marvell
> U-Boot repository. This code used to be included as a binary (bin_hdr)
> into the AXP boot image. Not linked with the main U-Boot. With this code
> addition and the also included SERDES / PHY setup code, the Armada-XP
> support in mainline U-Boot is finally self-contained. So the complete
> image for booting can be built from mainline U-Boot. Without any
> additional external inclusion. Hopefully other MVEBU SoC's will follow
> here.
> 
> Tested on AXP using a SPD DIMM setup on the Marvell DB-MV784MP-GP board
> and on a custom fixed DDR configuration board (maxbcm with MV78460).

I've tested entire series on Kirkwood board RaidSonic ICY BOX
IB-NAS62x0. That said:

Tested-by: Luka Perkov <luka.perkov at sartura.hr>

Tom, can you pull this series as-is or should I pull it in Marvell tree
first?

Luka

> Changes in v2:
> - Patch added to patch series (removal of dummy binary.0 files)
> - Rebased on current master (2015.01, git ID ab77f241)
> 
> Stefan Roese (11):
>   arm: mvebu: maxbcm: Fix compilation warning and add Spansion SPI NOR
>     support
>   arm: mvebu: drivers/ddr: Add DDR3 driver with training code from
>     Marvell bin_hdr
>   arm: mvebu: Add Serdes PHY config code
>   arm: armada-xp: Add SPL support used to include the DDR training code
>   scripts/Makefile.spl: Add MVEBU DDR code to SPL
>   tools: kwbimage: Support u-boot.img padding to
>     CONFIG_SYS_SPI_U_BOOT_OFFS
>   Makefile: Add another kwb build target used on Marvell Armada-XP (AXP)
>   arm: db-mv784mp-gp: Enable SPL to include DDR training code into
>     U-Boot
>   arm: maxbcm: Enable SPL to include DDR training code into U-Boot
>   arm: mvebu: Placeholder bin_hdr file can now be removed
>   arm: armada-xp: Change built target to include the SPL binary as
>     bin_hdr
> 
>  Makefile                                           |    6 +
>  arch/arm/Kconfig                                   |    2 +
>  arch/arm/cpu/armv7/armada-xp/Makefile              |    2 +
>  arch/arm/cpu/armv7/armada-xp/lowlevel_spl.S        |   62 +
>  arch/arm/cpu/armv7/armada-xp/spl.c                 |   38 +
>  arch/arm/include/asm/arch-armada-xp/config.h       |    4 +
>  arch/arm/include/asm/arch-armada-xp/cpu.h          |   16 +
>  arch/arm/mvebu-common/Makefile                     |    2 +
>  arch/arm/mvebu-common/serdes/Makefile              |    6 +
>  arch/arm/mvebu-common/serdes/board_env_spec.h      |  262 ++++
>  arch/arm/mvebu-common/serdes/high_speed_env_lib.c  | 1572 +++++++++++++++++++
>  arch/arm/mvebu-common/serdes/high_speed_env_spec.c |  185 +++
>  arch/arm/mvebu-common/serdes/high_speed_env_spec.h |   87 ++
>  arch/arm/mvebu-common/u-boot-spl.lds               |   57 +
>  board/Marvell/db-mv784mp-gp/binary.0               |   17 -
>  board/Marvell/db-mv784mp-gp/kwbimage.cfg           |    2 +-
>  board/maxbcm/binary.0                              |   17 -
>  board/maxbcm/kwbimage.cfg                          |    2 +-
>  board/maxbcm/maxbcm.c                              |   85 +-
>  configs/db-mv784mp-gp_defconfig                    |    5 +-
>  configs/maxbcm_defconfig                           |    5 +-
>  drivers/ddr/mvebu/Makefile                         |   14 +
>  drivers/ddr/mvebu/ddr3_axp.h                       |  510 +++++++
>  drivers/ddr/mvebu/ddr3_axp_config.h                |  146 ++
>  drivers/ddr/mvebu/ddr3_axp_mc_static.h             |  284 ++++
>  drivers/ddr/mvebu/ddr3_axp_training_static.h       |  770 ++++++++++
>  drivers/ddr/mvebu/ddr3_axp_vars.h                  |  226 +++
>  drivers/ddr/mvebu/ddr3_dfs.c                       | 1552 +++++++++++++++++++
>  drivers/ddr/mvebu/ddr3_dqs.c                       | 1374 +++++++++++++++++
>  drivers/ddr/mvebu/ddr3_hw_training.c               | 1115 ++++++++++++++
>  drivers/ddr/mvebu/ddr3_hw_training.h               |  392 +++++
>  drivers/ddr/mvebu/ddr3_init.c                      | 1219 +++++++++++++++
>  drivers/ddr/mvebu/ddr3_init.h                      |  143 ++
>  drivers/ddr/mvebu/ddr3_patterns_64bit.h            |  924 ++++++++++++
>  drivers/ddr/mvebu/ddr3_pbs.c                       | 1592 ++++++++++++++++++++
>  drivers/ddr/mvebu/ddr3_read_leveling.c             | 1214 +++++++++++++++
>  drivers/ddr/mvebu/ddr3_sdram.c                     |  669 ++++++++
>  drivers/ddr/mvebu/ddr3_spd.c                       | 1300 ++++++++++++++++
>  drivers/ddr/mvebu/ddr3_write_leveling.c            | 1366 +++++++++++++++++
>  drivers/ddr/mvebu/xor.c                            |  436 ++++++
>  drivers/ddr/mvebu/xor.h                            |   70 +
>  drivers/ddr/mvebu/xor_regs.h                       |  103 ++
>  include/configs/db-mv784mp-gp.h                    |   49 +
>  include/configs/maxbcm.h                           |   49 +
>  scripts/Makefile.spl                               |    1 +
>  tools/kwbimage.c                                   |   11 +
>  46 files changed, 17919 insertions(+), 44 deletions(-)
>  create mode 100644 arch/arm/cpu/armv7/armada-xp/lowlevel_spl.S
>  create mode 100644 arch/arm/cpu/armv7/armada-xp/spl.c
>  create mode 100644 arch/arm/mvebu-common/serdes/Makefile
>  create mode 100644 arch/arm/mvebu-common/serdes/board_env_spec.h
>  create mode 100644 arch/arm/mvebu-common/serdes/high_speed_env_lib.c
>  create mode 100644 arch/arm/mvebu-common/serdes/high_speed_env_spec.c
>  create mode 100644 arch/arm/mvebu-common/serdes/high_speed_env_spec.h
>  create mode 100644 arch/arm/mvebu-common/u-boot-spl.lds
>  delete mode 100644 board/Marvell/db-mv784mp-gp/binary.0
>  delete mode 100644 board/maxbcm/binary.0
>  create mode 100644 drivers/ddr/mvebu/Makefile
>  create mode 100644 drivers/ddr/mvebu/ddr3_axp.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_axp_config.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_axp_mc_static.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_axp_training_static.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_axp_vars.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_dfs.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_dqs.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_hw_training.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_hw_training.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_init.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_init.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_patterns_64bit.h
>  create mode 100644 drivers/ddr/mvebu/ddr3_pbs.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_read_leveling.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_sdram.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_spd.c
>  create mode 100644 drivers/ddr/mvebu/ddr3_write_leveling.c
>  create mode 100644 drivers/ddr/mvebu/xor.c
>  create mode 100644 drivers/ddr/mvebu/xor.h
>  create mode 100644 drivers/ddr/mvebu/xor_regs.h
> 
> -- 
> 2.2.2
> 


More information about the U-Boot mailing list