From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Babic Date: Mon, 13 Aug 2012 16:24:01 +0200 Subject: [U-Boot] [PATCH 2/2] fsl_esdhc: Remove cache snooping for i.MX In-Reply-To: <512236264.2361395.1344867505510.JavaMail.root@advansee.com> References: <512236264.2361395.1344867505510.JavaMail.root@advansee.com> Message-ID: <50290E01.2060200@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > Cc: Andy Fleming > Cc: Stefano Babic > Cc: Kim Phillips > --- > .../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 > #include > #include > > @@ -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: sbabic at denx.de =====================================================================