RE: [PATCH 3/3] eSDHC: fix incorrect default value of the capabilities register on P4080

Zang Roy-R61911
2011-07-18T05:01:22Z

> -----Original Message-----
> From: Anton Vorontsov [mailto:avorontsov@mvista.com]
> Sent: Tuesday, July 05, 2011 18:18 PM
> To: Zang Roy-R61911
> Cc: linux-mmc@vger.kernel.org; linuxppc-dev@lists.ozlabs.org; akpm@linux-
> foundation.org
> Subject: Re: [PATCH 3/3] eSDHC: fix incorrect default value of the
> capabilities register on P4080
>
> On Tue, Jul 05, 2011 at 12:19:03PM +0800, Roy Zang wrote:
> > P4080 eSDHC errata 12 describes incorrect default value of the
> > the host controller capabilities register.
> >
> > The default value of the VS18 and VS30 fields in the host controller
> > capabilities register (HOSTCAPBLT) are incorrect. The default of these bits
> > should be zero instead of one in the eSDHC logic.
> >
> > This patch adds the workaround for these errata.
> >
> > Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
> > ---
> > drivers/mmc/host/sdhci-of-core.c | 3 +++
> > drivers/mmc/host/sdhci.c | 6 ++++++
> > include/linux/mmc/sdhci.h | 4 ++++
> > 3 files changed, 13 insertions(+), 0 deletions(-)
> >
> > diff --git a/drivers/mmc/host/sdhci-of-core.c b/drivers/mmc/host/sdhci-of-
> core.c
> > index fede43d..9bdd30d 100644
> > --- a/drivers/mmc/host/sdhci-of-core.c
> > +++ b/drivers/mmc/host/sdhci-of-core.c
> > @@ -182,6 +182,9 @@ static int __devinit sdhci_of_probe(struct
> platform_device *ofdev)
> > if (of_device_is_compatible(np, "fsl,esdhc"))
> > host->quirks |= SDHCI_QUIRK_QORIQ_PROCTL_WEIRD;
> >
> > + if (of_device_is_compatible(np, "fsl,p4080-esdhc"))
> > + host->quirks |= SDHCI_QUIRK_QORIQ_HOSTCAPBLT_ONLY_VS33;
>
> Should really use voltage-ranges, not quirks.
>
> http://www.spinics.net/lists/linux-mmc/msg02785.html
Make sense to me. Thanks.
Roy