Skip to content
Snippets Groups Projects
Forked from Reform / reform-boundary-uboot
Source project has a limited visibility.
  • Fabio Estevam's avatar
    b2e6ad45
    mx51: Select the ESDHC_A001 erratum · b2e6ad45
    Fabio Estevam authored
    When a high speed card is connected to mx51evk the following error is seen:
    
    U-Boot 2017.11-rc2 (Oct 18 2017 - 13:49:26 -0200)
    
    CPU:   Freescale i.MX51 rev3.0 at 800 MHz
    Reset cause: POR
    Board: MX51EVK
    DRAM:  512 MiB
    MMC:   FSL_SDHC: 0, FSL_SDHC: 1
    *** Warning - read failed, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   FEC
    Hit any key to stop autoboot:  0
    => saveenv
    Saving Environment to MMC...
    Writing to MMC(0)... failed
    
    The root cause for the failure is the eSDHC-A001 erratum:
    
    "eSDHC-A001 : Data timeout counter (SYSCTL[DTOCV]) is not reliable for
    values of 0x4,0x8, and 0xC" that is listed
    on some PowerArchitecture chips:
    https://www.nxp.com/files-static/32bit/doc/errata/MPC8379ECE.pdf
    
    
    
    Even though eSDHC-A001 is not documented on the i.MX51 errata document,
    I have confirmed with the NXP design team that this erratum does affect
    i.MX51, so fix the problem by selecting SYS_FSL_ERRATUM_ESDHC_A001
    at SoC level.
    
    The i.MX51 ts4800 board already selects this option, but it is better
    to move this selection to the i.MX51 SoC level instead.
    
    Successfully tested with a high speed SD card on a mx51evk board.
    
    Signed-off-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
    Acked-by: default avatarSebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
    b2e6ad45
    History
    mx51: Select the ESDHC_A001 erratum
    Fabio Estevam authored
    When a high speed card is connected to mx51evk the following error is seen:
    
    U-Boot 2017.11-rc2 (Oct 18 2017 - 13:49:26 -0200)
    
    CPU:   Freescale i.MX51 rev3.0 at 800 MHz
    Reset cause: POR
    Board: MX51EVK
    DRAM:  512 MiB
    MMC:   FSL_SDHC: 0, FSL_SDHC: 1
    *** Warning - read failed, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   FEC
    Hit any key to stop autoboot:  0
    => saveenv
    Saving Environment to MMC...
    Writing to MMC(0)... failed
    
    The root cause for the failure is the eSDHC-A001 erratum:
    
    "eSDHC-A001 : Data timeout counter (SYSCTL[DTOCV]) is not reliable for
    values of 0x4,0x8, and 0xC" that is listed
    on some PowerArchitecture chips:
    https://www.nxp.com/files-static/32bit/doc/errata/MPC8379ECE.pdf
    
    
    
    Even though eSDHC-A001 is not documented on the i.MX51 errata document,
    I have confirmed with the NXP design team that this erratum does affect
    i.MX51, so fix the problem by selecting SYS_FSL_ERRATUM_ESDHC_A001
    at SoC level.
    
    The i.MX51 ts4800 board already selects this option, but it is better
    to move this selection to the i.MX51 SoC level instead.
    
    Successfully tested with a high speed SD card on a mx51evk board.
    
    Signed-off-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
    Acked-by: default avatarSebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>