u-boot-brain/arch/arm/mach-imx/mx5/Kconfig
Fabio Estevam b2e6ad451b mx51: Select the ESDHC_A001 erratum
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: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
2017-11-07 10:13:11 +01:00

77 lines
1.2 KiB
Plaintext

if ARCH_MX5
config MX5
bool
default y
config MX51
bool
select SYS_FSL_ERRATUM_ESDHC_A001
config MX53
bool
choice
prompt "MX5 board select"
optional
config TARGET_M53EVK
bool "Support m53evk"
select MX53
select SUPPORT_SPL
config TARGET_MX51EVK
bool "Support mx51evk"
select BOARD_LATE_INIT
select MX51
config TARGET_MX53ARD
bool "Support mx53ard"
select MX53
config TARGET_MX53CX9020
bool "Support CX9020"
select BOARD_LATE_INIT
select MX53
select DM
select DM_SERIAL
config TARGET_MX53EVK
bool "Support mx53evk"
select BOARD_LATE_INIT
select MX53
config TARGET_MX53LOCO
bool "Support mx53loco"
select BOARD_LATE_INIT
select MX53
config TARGET_MX53SMD
bool "Support mx53smd"
select MX53
config TARGET_TS4800
bool "Support TS4800"
select MX51
config TARGET_USBARMORY
bool "Support USB armory"
select MX53
endchoice
config SYS_SOC
default "mx5"
source "board/aries/m53evk/Kconfig"
source "board/beckhoff/mx53cx9020/Kconfig"
source "board/freescale/mx51evk/Kconfig"
source "board/freescale/mx53ard/Kconfig"
source "board/freescale/mx53evk/Kconfig"
source "board/freescale/mx53loco/Kconfig"
source "board/freescale/mx53smd/Kconfig"
source "board/inversepath/usbarmory/Kconfig"
source "board/technologic/ts4800/Kconfig"
endif