22 Nov, 2013

2 commits

  • This patch adds new CONFIG_NAND_OMAP_ECCSCHEME, replacing other distributed
    CONFIG_xx used for selecting NAND ecc-schemes.
    This patch aims at solving following issues.

    1) Currently ecc-scheme is tied to SoC platform, which prevents user to select
    other ecc-schemes also supported in hardware. like;
    - most of OMAP3 SoC platforms use only 1-bit Hamming ecc-scheme, inspite
    the fact that they can use higher ecc-schemes like 8-bit ecc-schemes with
    software based error detection (OMAP_ECC_BCH4_CODE_HW_DETECTION_SW).
    - most of AM33xx SoC plaforms use 8-bit BCH ecc-scheme for now, but hardware
    supports BCH16 ecc-scheme also.

    2) Different platforms use different CONFIG_xx to select ecc-schemes, which
    adds confusion for user while migrating platforms.
    - *CONFIG_NAND_OMAP_ELM* which enables ELM hardware engine, selects only
    8-bit BCH ecc-scheme with h/w based error-correction (OMAP_ECC_BCH8_CODE_HW)
    whereas ELM hardware engine supports other ecc-schemes also like; BCH4,
    and BCH16 (in future).
    - *CONFIG_NAND_OMAP_BCH8* selects 8-bit BCH ecc-scheme with s/w based error
    correction (OMAP_ECC_BCH8_CODE_HW_DETECTION_SW).
    - *CONFIG_SPL_NAND_SOFTECC* selects 1-bit Hamming ecc-scheme using s/w library

    Thus adding new *CONFIG_NAND_OMAP_ECCSCHEME* de-couples ecc-scheme dependency
    on SoC platform and NAND driver. And user can select ecc-scheme independently
    foreach board.
    However, selection some hardware based ecc-schemes (OMAP_ECC_BCHx_CODE_HW) still
    depends on presence of ELM hardware engine on SoC. (Refer doc/README.nand)

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • ELM hardware engine which is used for ECC error detection, is present on all
    latest OMAP SoC (like OMAP4xxx, OMAP5xxx, DRA7xxx, AM33xx, AM43xx). Thus ELM
    driver should be moved to common drivers/mtd/nand/ folder so that all SoC
    having on-chip ELM hardware engine can re-use it.
    This patch has following changes:
    - mv arch/arm/include/asm/arch-am33xx/elm.h arch/arm/include/asm/omap_elm.h
    - mv arch/arm/cpu/armv7/am33xx/elm.c drivers/mtd/nand/omap_elm.c
    - update Makefiles
    - update #include
    - add CONFIG_NAND_OMAP_ELM to compile driver/mtd/nand/omap_elm.c
    and include in all board configs using AM33xx SoC platform.

    Signed-off-by: Pekon Gupta

    pekon gupta
     

05 Nov, 2013

1 commit


29 Aug, 2013

1 commit


28 Aug, 2013

1 commit

  • add support for the am335x based boards from siemens:

    dxr2:
    - DDR3 128MiB
    - NAND 256MiB
    - Ethernet with external Switch SMSC LAN9303
    - no PMIC
    - internal Watchdog
    - DFU support

    pxm2:
    - DDR2 512 MiB
    - NAND 1024 MiB
    - PMIC
    - PHY atheros ar803x
    - USB Host
    - internal Watchdog
    - DFU support

    rut:
    - DDR3 256 MiB
    - NAND 256 MiB
    - PMIC
    - PHY natsemi dp83630
    - external Watchdog
    - DFU support

    Signed-off-by: Heiko Schocher
    Signed-off-by: Roger Meier
    Signed-off-by: Samuel Egli
    Cc: Pascal Bach
    Cc: Tom Rini

    Heiko Schocher