07 Feb, 2014

2 commits

  • With this change driver will benefit from existing phylib and thus
    custom phy functionality implemented in the driver will go away:
    * Instantiation of the driver is now much shorter - 2 parameters
    instead of 4.
    * Simplified phy management/functoinality in driver is replaced with
    rich functionality of phylib.
    * Support of custom phy initialization is now done with existing
    "board_phy_config".

    Note that after this change some previously used config options
    (driver-specific PHY configuration) will be obsolete and they are simply
    substituted with similar options of phylib.

    For example:
    * CONFIG_DW_AUTONEG - no need in this one. Autonegotiation is enabled
    by default.
    * CONFIG_DW_SEARCH_PHY - if one wants to specify attached phy
    explicitly CONFIG_PHY_ADDR board config option has to be used, otherwise
    automatically the first discovered on MDIO bus phy will be used

    I believe there's no need now in "doc/README.designware_eth" because
    user only needs to instantiate the driver with "designware_initialize"
    whose prototype exists in "include/netdev.h".

    Cc: Joe Hershberger
    Cc: Vipin Kumar
    Cc: Stefan Roese
    Cc: Mischa Jonker
    Cc: Shiraz Hashim
    Cc: Albert ARIBAUD
    Cc: Amit Virdi
    Cc: Sonic Zhang
    Signed-off-by: Alexey Brodkin

    Alexey Brodkin
     
  • Signed-off-by: Alexey Brodkin

    Cc: Vineet Gupta
    Cc: Francois Bedard
    Cc: Wolfgang Denk
    Cc: Heiko Schocher

    Alexey Brodkin
     

04 Feb, 2014

1 commit


22 Jan, 2014

2 commits


17 Jan, 2014

1 commit


15 Jan, 2014

1 commit


14 Jan, 2014

2 commits


13 Jan, 2014

3 commits


11 Jan, 2014

1 commit

  • The Faraday FTSSP010 is a multi-function controller
    which supports I2S/SPI/SSP/AC97/SPDIF. However This
    patch implements only the SPI mode.

    NOTE:
    The DMA and CS/Clock control logic has been altered
    since hardware revision 1.19.0. So this patch
    would first detects the revision id of the underlying
    chip, and then switch to the corresponding software
    control routines.

    Signed-off-by: Kuo-Jung Su
    Signed-off-by: Jagannadha Sutradharudu Teki
    CC: Tom Rini

    Kuo-Jung Su
     

10 Jan, 2014

4 commits


09 Jan, 2014

2 commits


06 Jan, 2014

1 commit


03 Jan, 2014

1 commit


19 Dec, 2013

1 commit


18 Dec, 2013

2 commits


16 Dec, 2013

1 commit


11 Dec, 2013

2 commits


10 Dec, 2013

2 commits

  • This adds a SPI flash driver which simulates SPI flash clients.
    Currently supports the bare min that U-Boot requires: you can
    probe, read, erase, and write. Should be easy to extend to make
    it behave more exactly like a real SPI flash, but this is good
    enough to merge now.

    sjg@chromium.org added a README and tidied up code a little.
    Added a required map_sysmem() for sandbox.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Simon Glass

    Mike Frysinger
     
  • This was obtained from Linux 3.12 commit 5e01dc7b26.

    Signed-off-by: Simon Glass

    Simon Glass
     

25 Nov, 2013

1 commit


22 Nov, 2013

4 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
     
  • BCH8_ECC scheme implemented in omap_gpmc.c driver has following favours
    +-----------------------------------+-----------------+-----------------+
    |ECC Scheme | ECC Calculation | Error Detection |
    +-----------------------------------+-----------------+-----------------+
    |OMAP_ECC_BCH8_CODE_HW |GPMC |ELM H/W engine |
    |OMAP_ECC_BCH8_CODE_HW_DETECTION_SW |GPMC |S/W BCH library |
    +-----------------------------------+-----------------+-----------------+

    Current implementation limits the BCH8_CODE_HW only for AM33xx device family.
    (using CONFIG_AM33XX). However, other SoC families (like TI81xx) also have
    ELM hardware module, and can support ECC error detection using ELM.

    This patch
    - removes CONFIG_AM33xx
    Thus this driver can be reused by all devices having ELM h/w engine.
    - adds omap_select_ecc_scheme()
    A common function to handle ecc-scheme related configurations. This
    can be used both during device-probe and via user-space u-boot commads
    to change ecc-scheme. During device probe ecc-scheme is selected based
    on CONFIG_NAND_OMAP_ELM or CONFIG_NAND_OMAP_BCH8
    - enables CONFIG_BCH
    S/W library (lib/bch.c) required by OMAP_ECC_BCHx_CODE_HW_DETECTION_SW
    is enabled by CONFIG_BCH.
    - enables CONFIG_SYS_NAND_ONFI_DETECTION
    for auto-detection of ONFI compliant NAND devices
    - updates following README doc
    doc/README.nand
    board/ti/am335x/README
    doc/README.omap3

    Signed-off-by: Pekon Gupta
    [scottwood@freescale.com: fixed unused variable warning]
    Signed-off-by: Scott Wood

    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
     
  • nand_ecclayout is present in mtd.h at Linux.
    Move this structure to mtd.h to comply with Linux.

    Also, increase the ecc placement locations to 640 to suport device having
    writesize/oobsize of 8KB/640B. This means that the maximum oobsize has gone
    up to 640 bytes and consequently the maximum ecc placement locations have
    also gone up to 640.

    Changes from Prabhabkar's version (squashed into one patch to preserve
    bisectability):
    - Added _LARGE to MTD_MAX_*_ENTRIES

    This makes the names match current Linux source, and resolves
    a conflict between
    http://patchwork.ozlabs.org/patch/280488/
    and
    http://patchwork.ozlabs.org/patch/284513/

    The former was posted first and is closer to matching Linux, but
    unlike Linux it does not add _LARGE to the names. The second adds
    _LARGE to one of the names, and depends on it in a subsequent patch
    (http://patchwork.ozlabs.org/patch/284512/).

    - Made max oobfree/eccpos configurable, and used this on tricorder,
    alpr, ASH405, T4160QDS, and T4240QDS (these boards failed to build
    for me without doing so, due to a size increase).

    On tricorder SPL, this saves 2576 bytes (and makes the SPL build
    again) versus the new default of 640 eccpos and 32 oobfree, and
    saves 336 bytes versus the old default of 128 eccpos and 8 oobfree.

    Signed-off-by: Prabhakar Kushwaha
    CC: Vipin Kumar
    [scottwood@freescale.com: changes as described above]
    Signed-off-by: Scott Wood
    Cc: Thomas Weber
    Cc: Matthias Fuchs
    Cc: Stefan Roese
    Cc: York Sun
    Cc: Tom Rini
    Reviewed-by: Stefan Roese

    Prabhakar Kushwaha
     

16 Nov, 2013

1 commit


14 Nov, 2013

2 commits


12 Nov, 2013

2 commits


11 Nov, 2013

1 commit