[U-Boot] [PATCH 00/12] MX6: SPL NAND support

Tim Harvey tharvey at gateworks.com
Mon Apr 28 22:17:26 CEST 2014


This series adds some necessary framework for IMX6 SPL support. The series
includes support for NAND SPL and has been tested with MMC as well. I have
tested this on five differing Ventana baseboards with a variety of memory
(32bit 512MB, 32bit 1024MB, 64bit 1024MB) and CPU configurations (IMX6Q,
IMX6DL, IMX6S).

v2:
 - use compatible linker script instead of creating new one
 - remove structure passing data from SPL to u-boot
 - remove dependence on mtdpart, mtdcore, nand_util, nand_ecc, nand_base
   and nand_bbt to bring SPL down in size. This reduced codesize by about 32k
   where now mxs_spl_nand is about 12k total
 - adjust CONFIG_SPL_TEXT_BASE, CONFIG_SPL_STACK and CONFIG_SPL_MAX_SIZE
   to accomodate the IMX6SOLO/DUALLITE which have half the iRAM of the
   IMX6DUAL/IMX6QUAD
 - move boot dev detection into imx-common/spl.c
 - move macros for using pinmux array into iomux-v3.h
 - remove missing/unnecessary include
 - revert mtdparts change
 - use get_ram_size() to detect memory
 - add support for MX6SOLO and MX6DUAL
 - set CS0_END for 4GB so get_ram_size() works
 - updated DDR3 calibration values for ventana boards
 - fixed build issue - only compile spl if doing spl build
 - fixed line length issue in README
 - remove CONFIG_SPL* conditions and conditionally compile instead
 - removed prints for CPU type and DRAM size/width - uboot will print these l
 - removed unused gw_ventana_spl.cfg
 - use common read_eeprom function
 - added MMC support to SPL
 - added Masahiro Yamada's boot mode consolidation patch
   http://patchwork.ozlabs.org/patch/341817 and rebase on top of it

Masahiro Yamada (1):
  spl: consolidate arch/arm/include/asm/arch-*/spl.h

Tim Harvey (11):
  SPL: NAND: remove CONFIG_SYS_NAND_PAGE_SIZE
  SPL: NAND: add support for mxs nand
  MX6: add common SPL configuration
  MX6: add boot device support for SPL
  IMX: add comments and remove unused struct fields
  MX6: add structs for mmdc and ddr iomux registers
  MX6: add mmdc configuration for MX6Q/MX6DL
  IMX: add additional function for pinmux using an array
  imx: ventana: split read_eeprom into standalone file
  imx: ventana: auto-configure for IMX6Q vs IMX6DL
  imx: ventana: switch to SPL

 arch/arm/cpu/arm720t/tegra-common/spl.c     |   2 +-
 arch/arm/cpu/armv7/mx6/Makefile             |   1 +
 arch/arm/cpu/armv7/mx6/ddr.c                | 469 ++++++++++++++++++++++
 arch/arm/imx-common/Makefile                |   1 +
 arch/arm/imx-common/cpu.c                   |  16 +-
 arch/arm/imx-common/iomux-v3.c              |  19 +-
 arch/arm/imx-common/spl.c                   |  79 ++++
 arch/arm/include/asm/arch-at91/spl.h        |  24 --
 arch/arm/include/asm/arch-davinci/spl.h     |  16 -
 arch/arm/include/asm/arch-mx35/spl.h        |  22 --
 arch/arm/include/asm/arch-mx5/spl.h         |  13 -
 arch/arm/include/asm/arch-mx6/mx6-ddr.h     | 231 +++++++++++
 arch/arm/include/asm/arch-tegra114/spl.h    |  22 --
 arch/arm/include/asm/arch-tegra124/spl.h    |  13 -
 arch/arm/include/asm/arch-tegra20/spl.h     |  12 -
 arch/arm/include/asm/arch-tegra30/spl.h     |  12 -
 arch/arm/include/asm/imx-common/iomux-v3.h  |  15 +
 arch/arm/include/asm/spl.h                  |  20 +
 board/denx/m53evk/m53evk.c                  |   2 +-
 board/gateworks/gw_ventana/Makefile         |   3 +-
 board/gateworks/gw_ventana/README           |  92 +++--
 board/gateworks/gw_ventana/eeprom.c         |  89 +++++
 board/gateworks/gw_ventana/gw_ventana.c     | 591 +++++++++++++++-------------
 board/gateworks/gw_ventana/gw_ventana.cfg   |  15 -
 board/gateworks/gw_ventana/gw_ventana_spl.c | 407 +++++++++++++++++++
 board/gateworks/gw_ventana/ventana_eeprom.h |  11 +
 boards.cfg                                  |   6 +-
 common/spl/spl_nand.c                       |   2 +-
 drivers/mtd/nand/Makefile                   |   1 +
 drivers/mtd/nand/mxs_nand_spl.c             | 239 +++++++++++
 include/configs/gw_ventana.h                |  11 +
 include/configs/imx6_spl.h                  |  71 ++++
 32 files changed, 2050 insertions(+), 477 deletions(-)
 create mode 100644 arch/arm/cpu/armv7/mx6/ddr.c
 create mode 100644 arch/arm/imx-common/spl.c
 delete mode 100644 arch/arm/include/asm/arch-at91/spl.h
 delete mode 100644 arch/arm/include/asm/arch-davinci/spl.h
 delete mode 100644 arch/arm/include/asm/arch-mx35/spl.h
 delete mode 100644 arch/arm/include/asm/arch-mx5/spl.h
 delete mode 100644 arch/arm/include/asm/arch-tegra114/spl.h
 delete mode 100644 arch/arm/include/asm/arch-tegra124/spl.h
 delete mode 100644 arch/arm/include/asm/arch-tegra20/spl.h
 delete mode 100644 arch/arm/include/asm/arch-tegra30/spl.h
 create mode 100644 board/gateworks/gw_ventana/eeprom.c
 create mode 100644 board/gateworks/gw_ventana/gw_ventana_spl.c
 create mode 100644 drivers/mtd/nand/mxs_nand_spl.c
 create mode 100644 include/configs/imx6_spl.h

-- 
1.8.3.2



More information about the U-Boot mailing list