07 Jun, 2014

1 commit

  • GPMC controller needs to be configured based on bus-width of the NAND device
    connected to it. Also, dynamic detection of NAND bus-width from on-chip ONFI
    parameters is not possible in following situations:
    SPL: SPL NAND drivers does not support ONFI parameter reading.
    U-boot: GPMC controller iniitalization is done in omap_gpmc.c:board_nand_init()
    which is called before probing for devices, hence any ONFI parameter
    information is not available during GPMC initialization.

    Thus, OMAP NAND driver expected board developers to explicitely write GPMC
    configurations specific to NAND device attached on board in board files itself.
    But this was troublesome for board manufacturers as they need to dive into
    lengthy platform & SoC documents to find details of GPMC registers and
    appropriate configurations to get NAND device working.

    This patch instead adds existing CONFIG_SYS_NAND_BUSWIDTH_16BIT to board config
    hich indicates that connected NAND device has x16 bus-width. And then based on
    this config GPMC driver itself initializes itself based on NAND bus-width. This
    keeps board developers free from knowing GPMC controller specific internals.

    Signed-off-by: Pekon Gupta

    pekon gupta
     

05 Mar, 2014

1 commit

  • OMAP NAND driver can detect Page-size and OOB-size of NAND device from ONFI
    params or nand_id[] table. And based on that it defines ECC layout.
    This patch
    1) removes following board configs used for defining NAND ECC layout
    - GPMC_NAND_ECC_LP_x16_LAYOUT (for large page x16 NAND)
    - GPMC_NAND_ECC_LP_x8_LAYOUT (for large page x8 NAND)
    - GPMC_NAND_ECC_SP_x16_LAYOUT (for small page x16 NAND)
    - GPMC_NAND_ECC_SP_x8_LAYOUT (for small page x8 NAND)

    2) removes unused #defines in common omap_gpmc.h depending on above configs

    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     

08 Jan, 2014

1 commit

  • commit f9095aac793aa8917ab9b915c5d449e6dc8d3d30, "mtd: nand:
    omap: add CONFIG_NAND_OMAP_ECCSCHEME for selection of ecc-scheme"
    removed CONFIG_SPL_NAND_SOFTECC from the tam3517 common config,
    causing the spl nand boot to fail. Add it back, so derived
    boards boot again.

    Cc: Pekon Gupta
    Cc: Scott Wood
    Cc: Raphael Assenat
    Cc: Stefano Babic
    Cc: Tapani Utriainen
    Signed-off-by: Jeroen Hofstee
    Acked-by: Stefano Babic

    Jeroen Hofstee
     

25 Nov, 2013

1 commit


22 Nov, 2013

1 commit

  • 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
     

13 Nov, 2013

1 commit

  • - add omap24xx driver to new multibus/multiadpater support
    - adapted all config files, which uses this driver

    Tested on the am335x based siemens boards rut, dxr2 and pxm2
    posted here:
    http://patchwork.ozlabs.org/patch/263211/

    Signed-off-by: Heiko Schocher
    Tested-by: Tom Rini
    Cc: Lars Poeschel
    Cc: Steve Sakoman
    Cc: Thomas Weber
    Cc: Tom Rix
    Cc: Grazvydas Ignotas
    Cc: Enric Balletbo i Serra
    Cc: Luca Ceresoli
    Cc: Igor Grinberg
    Cc: Ilya Yanok
    Cc: Stefano Babic
    Cc: Nishanth Menon
    Cc: Pali Rohár
    Cc: Peter Barada
    Cc: Nagendra T S
    Cc: Michael Jones
    Cc: Raphael Assenat
    Acked-by: Igor Grinberg
    Acked-by: Stefano Babic

    Heiko Schocher
     

05 Nov, 2013

1 commit


20 Aug, 2013

1 commit


15 Aug, 2013

1 commit


24 Jul, 2013

1 commit


29 Jan, 2013

1 commit


08 Jan, 2013

1 commit


11 Dec, 2012

1 commit


10 Dec, 2012

1 commit


27 Nov, 2012

2 commits


20 Nov, 2012

1 commit

  • CONFIG_EHCI_DCACHE was removed by commit b8adb12
    "USB: Drop cache flush bloat in EHCI-HCD". Remove the defines from
    the boards configs as well.

    Signed-off-by: Jeroen Hofstee
    cc: Marek Vasut
    cc: Stefan Roese
    cc: Tom Rini
    cc: Wolfgang Denk
    cc: Thierry Reding
    cc: Tom Warren
    cc: Stephen Warren
    cc: Stefano Babic

    Jeroen Hofstee
     

16 Oct, 2012

1 commit


28 Sep, 2012

2 commits

  • Add a new flag, CONFIG_SPL_FRAMEWORK to opt into the common/spl SPL
    framework, enable on all of the previously using boards. We move the
    spl_ymodem.c portion to common/ and spl_mmc.c to drivers/mmc/. We leave
    the NAND one in-place as we plan to replace it later in this series.

    We use common/spl to avoid linker problems with respect to merging
    constant strings in objects. Otherwise all strings in common/ will be
    linked in and kept which grows SPL in size too much.

    Signed-off-by: Tom Rini

    Tom Rini
     
  • This is an OMAP/related-specific function, move calling it to
    spl_board_init() and turn on CONFIG_SPL_BOARD_INIT on the boards that
    enabled NAND and didn't enable this already.

    Signed-off-by: Tom Rini

    Tom Rini
     

05 Sep, 2012

1 commit


01 Sep, 2012

3 commits


21 Jun, 2012

1 commit


15 May, 2012

2 commits


12 Feb, 2012

3 commits


27 Jan, 2012

1 commit

  • Adapt the following patch from spl to nand_spl:

    Author: Stefano Babic
    Date: Thu Dec 15 10:55:37 2011 +0100

    nand_spl_simple: store ecc data on the stack

    Currently nand_spl_simple puts it's temp data at 0x10000 offset in SDRAM
    which is likely to contain already loaded data.
    The patch saves the oob data and the ecc on the stack replacing
    the fixed address in RAM.

    Signed-off-by: Stefano Babic
    CC: Ilya Yanok
    CC: Scott Wood
    CC: Tom Rini
    CC: Simon Schwarz
    CC: Wolfgang Denk
    Signed-off-by: Scott Wood

    While nand_spl is on its way out, in favor of spl, there are still
    many boards using it, and conversions are gradual. This allows us
    to get rid of CONFIG_SYS_NAND_ECCSTEPS and CONFIG_SYS_NAND_ECCTOTAL now,
    which would otherwise be likely to linger unreferenced after a conversion.

    It also eliminates a temporary error in the hawkboard_nand build, since
    the spl version of the patch removed ECCSTEPS/TOTAL from hawkboard.h, but
    the spl conversion is pending (and may be merged via a different tree).

    Signed-off-by: Scott Wood

    Scott Wood
     

24 Dec, 2011

1 commit