[U-Boot] [PATCH] fsl_esdhc: Add no-snoop config for default init

Stefano Babic sbabic at denx.de
Sat Aug 11 19:25:26 CEST 2012


On 11/08/2012 16:39, Benoît Thébaudeau wrote:
> Hi Stefano,
> 

Hi,

> fsl_esdhc_mmc_init() exists, so it should give access to all features.

This was left for compatibility with PowerPC SOCs.

> Moreover,
> it's shorter to #define a config option than to create custom fsl_esdhc_mmc init
> functions when only a single eSDHC instance is needed.

However, the number of CONFIG_ continues to increase, often not well
documented.

> 
> Besides that, the cache snooping feature is not available on i.MX, which means
> that without CONFIG_SYS_FSL_ESDHC_NO_SNOOP or an equivalent, boards using
> fsl_esdhc_mmc_init() will make esdhc_init() access a reserved bit of a reserved
> register, which is not really recommended.

It should be masked by the i.MX code. You add
CONFIG_SYS_FSL_ESDHC_NO_SNOOP and this is set inside the board
configuration file. But this is not a board configuration option, rather
a SOC option. Then it should the initialization code of i.MX that should
hide this bit to the board itself.

Instead of this, I think it is better to change cpu_mmc_init() in
arch/arm/cpu/armv7/imx-common/cpu.c, setting the structure and fixing
the soop bit to 1, because i.MX has not this feature. Then all i.MX
boards using ESDHC have the no_snoop bit set.


> On i.MX, the patch could also be improved by not making this option available,
> but behaving as if it were set.

Right. It should not be configurable. We know that the i.MXs have no
snoop cabability.

Best regards,
Stefano

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list