[U-Boot] [PATCH v3 00/11] mx6: SPL NAND support

Tim Harvey tharvey at gateworks.com
Thu May 22 08:14:22 CEST 2014


On Wed, May 7, 2014 at 10:16 PM, Tim Harvey <tharvey at gateworks.com> wrote:
> 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).
>
> This is based on top of Mashahiro Yamada's patch that consolidates
> arch/arm/include/asm/arch-*/spl.h [1]
>
> v3:
>  - re-ordered calls in board_init_f
>  - replace imx_iomux_v3_setup_multiple_pads_array with additional intelligence
>    in imx_iomux_v3_setup_multiple_pads
>  - added ifdef's around cpu specific mmdc iocfg functions for code-reduction
>    with single-variant board configs
>  - added checks for IMX6D
>  - added Freescale copyright to boot device support function
>  - fixed typo s/IMX6SLD/IMX6SDL
>  - encorporated cleanups in mxs_nand_spl.c per feedback
>
> 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
>
> [1] http://patchwork.ozlabs.org/patch/341817/
>
> 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: iomux: add macros to setup iomux for multiple SoC types
>   IMX: ventana: split read_eeprom into standalone file
>   IMX: ventana: auto-configure for IMX6Q vs IMX6DL
>   IMX: ventana: switch to SPL
>
>  arch/arm/cpu/armv7/mx6/Makefile             |   1 +
>  arch/arm/cpu/armv7/mx6/ddr.c                | 473 ++++++++++++++++++++++
>  arch/arm/imx-common/Makefile                |   1 +
>  arch/arm/imx-common/cpu.c                   |  16 +-
>  arch/arm/imx-common/iomux-v3.c              |  16 +-
>  arch/arm/imx-common/spl.c                   |  81 ++++
>  arch/arm/include/asm/arch-mx6/mx6-ddr.h     | 231 +++++++++++
>  arch/arm/include/asm/imx-common/iomux-v3.h  |  25 ++
>  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 | 419 ++++++++++++++++++++
>  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             | 231 +++++++++++
>  include/configs/gw_ventana.h                |  11 +
>  include/configs/imx6_spl.h                  |  71 ++++
>  21 files changed, 2047 insertions(+), 339 deletions(-)
>  create mode 100644 arch/arm/cpu/armv7/mx6/ddr.c
>  create mode 100644 arch/arm/imx-common/spl.c
>  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
>

Stefano,

Any comments on this series? I realize you've applied the first one
and I'll remove that from any subsequent posts.

Regards,

Tim


More information about the U-Boot mailing list