On 13/08/2012 16:18, Benoît Thébaudeau wrote: > The cache snooping feature of Freescale's eSDHC IP is not available on i.MX, > so > disable it globally for this architecture. This avoids setting no_snoop for > all > i.MX boards, and it prevents setting a reserved bit of a reserved register if > fsl_esdhc_mmc_init() were used for an i.MX board. > > Signed-off-by: Benoît Thébaudeau <benoit.thebaud...@advansee.com> > Cc: Andy Fleming <aflem...@gmail.com> > Cc: Stefano Babic <sba...@denx.de> > Cc: Kim Phillips <kim.phill...@freescale.com> > --- > .../board/efikamx/efikamx.c | 4 ++-- > .../board/esg/ima3-mx53/ima3-mx53.c | 2 +- > .../board/freescale/mx51evk/mx51evk.c | 4 ++-- > .../board/freescale/mx53ard/mx53ard.c | 4 ++-- > .../board/freescale/mx53evk/mx53evk.c | 4 ++-- > .../board/freescale/mx53loco/mx53loco.c | 4 ++-- > .../board/freescale/mx53smd/mx53smd.c | 2 +- > .../board/freescale/mx6qarm2/mx6qarm2.c | 4 ++-- > .../board/freescale/mx6qsabrelite/mx6qsabrelite.c | 4 ++-- > .../board/ttcontrol/vision2/vision2.c | 2 +- > .../drivers/mmc/fsl_esdhc.c | 2 ++ > .../include/fsl_esdhc.h | 3 +++ > 12 files changed, 22 insertions(+), 17 deletions(-) >
Hi Benoît, > diff --git u-boot-4d3c95f.orig/drivers/mmc/fsl_esdhc.c > u-boot-4d3c95f/drivers/mmc/fsl_esdhc.c > index b6c969d..efdc6be 100644 > --- u-boot-4d3c95f.orig/drivers/mmc/fsl_esdhc.c > +++ u-boot-4d3c95f/drivers/mmc/fsl_esdhc.c > @@ -479,9 +479,11 @@ static int esdhc_init(struct mmc *mmc) > while ((esdhc_read32(®s->sysctl) & SYSCTL_RSTA) && --timeout) > udelay(1000); > > +#ifndef ARCH_IMX > /* Enable cache snooping */ > if (cfg && !cfg->no_snoop) > esdhc_write32(®s->scr, 0x00000040); > +#endif > > esdhc_write32(®s->sysctl, SYSCTL_HCKEN | SYSCTL_IPGEN); > > diff --git u-boot-4d3c95f.orig/include/fsl_esdhc.h > u-boot-4d3c95f/include/fsl_esdhc.h > index 0e26558..44f9f06 100644 > --- u-boot-4d3c95f.orig/include/fsl_esdhc.h > +++ u-boot-4d3c95f/include/fsl_esdhc.h > @@ -26,6 +26,7 @@ > #ifndef __FSL_ESDHC_H__ > #define __FSL_ESDHC_H__ > > +#include <config.h> > #include <asm/errno.h> > #include <asm/byteorder.h> > > @@ -167,7 +168,9 @@ > > struct fsl_esdhc_cfg { > u32 esdhc_base; > +#ifndef ARCH_IMX > u32 no_snoop; > +#endif > }; Why don't you get rid of no_snoop at all ? Using ARCH_IMX is not needed anymore. Best regards, Stefano Babic -- ===================================================================== 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: sba...@denx.de ===================================================================== _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot