u-boot-brain/arch
Fabio Estevam 5d09c27138 mx25: Select the ESDHC_A001 erratum
When a high speed card is connected to mx25 the following error is seen:

U-Boot 2017.11-rc2-00104-gb79372a (Oct 31 2017 - 11:02:22 -0200)

CPU:   Freescale i.MX25 rev1.2 at 399 MHz
Reset cause: POR
Board: MX25PDK
I2C:   ready
DRAM:  64 MiB
No arch specific invalidate_icache_all available!
MMC:   FSL_SDHC: 0
*** 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

, which prevents any usage of the SD card.

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.MX25 errata document,
I have confirmed with the NXP design team that this erratum does affect
i.MX25, so fix the problem by selecting SYS_FSL_ERRATUM_ESDHC_A001
at SoC level.

Successfully tested with a high speed SD card on a mx25pdk board.

Suggested-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Tested-by: Otavio Salvador <otavio@ossystems.com.br> # mx25pdk
2017-11-07 10:13:00 +01:00
..
arc arc: Use asm-generic/io.h 2017-10-02 21:52:20 -04:00
arm mx25: Select the ESDHC_A001 erratum 2017-11-07 10:13:00 +01:00
m68k m68k: Use asm-generic/io.h 2017-10-02 21:52:20 -04:00
microblaze microblaze: Use asm-generic/io.h 2017-10-02 21:52:21 -04:00
mips mips: Use asm-generic/io.h 2017-10-02 21:52:23 -04:00
nds32 nds32: Use asm-generic/io.h 2017-10-02 21:52:21 -04:00
nios2 nios2: Use asm-generic/io.h 2017-10-02 21:52:23 -04:00
powerpc powerpc: mpc85xx: Implement CPU erratum A-007907 for secondary cores 2017-10-23 14:02:48 -07:00
sandbox sandbox: avoid memory leak in os_dirent_ls 2017-10-08 20:41:09 -06:00
sh sh: Use asm-generic/io.h 2017-10-02 21:52:21 -04:00
x86 x86: acpi: Put sleepstates.asl to the common place 2017-10-27 15:13:47 +08:00
xtensa xtensa: Use asm-generic/io.h 2017-10-02 21:52:22 -04:00
.gitignore
Kconfig