RE: [PATCH 1/2 V2] Powerpc/eSDHC: Calculate the applicable mmc erase timeout value

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks a lot.
I had corrected according to your suggestion. 
Three new patch had send.

Regards
Haijun.

> -----Original Message-----
> From: linux-mmc-owner@xxxxxxxxxxxxxxx [mailto:linux-mmc-
> owner@xxxxxxxxxxxxxxx] On Behalf Of Anton Vorontsov
> Sent: Monday, November 19, 2012 8:43 AM
> To: Zhang Haijun-B42677
> Cc: linux-mmc@xxxxxxxxxxxxxxx; Huang Changming-R66093
> Subject: Re: [PATCH 1/2 V2] Powerpc/eSDHC: Calculate the applicable mmc
> erase timeout value
> 
> On Tue, Nov 13, 2012 at 05:09:22PM +0800, Haijun Zhang wrote:
> > As large area erase needs long time usually a few minutes, which the
> > host can't wait will bring about timeout error.
> > So we need to split the large area to small sections which only need
> > short erase time to avoid timeout error.
> >
> > Signed-off-by: Haijun Zhang <Haijun.Zhang@xxxxxxxxxxxxx>
> > Signed-off-by: Jerry Huang <Chang-Ming.Huang@xxxxxxxxxxxxx>
> > CC: Anton Vorontsov <cbouatmailru@xxxxxxxxx>
> > ---
> > changes for v2:
> >         - Recompute the timeout value and max_discard_to for mmc erase
> > 	- split the V1 patch into two V2 patchs.
> 
> Oh, I see. A new version! :)
> 
> >  drivers/mmc/host/sdhci-esdhc.h    |    1 -
> >  drivers/mmc/host/sdhci-of-esdhc.c |   13 +++++++++++++
> >  2 files changed, 13 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/mmc/host/sdhci-esdhc.h
> > b/drivers/mmc/host/sdhci-esdhc.h index d25f9ab..bb6d664 100644
> > --- a/drivers/mmc/host/sdhci-esdhc.h
> > +++ b/drivers/mmc/host/sdhci-esdhc.h
> > @@ -21,7 +21,6 @@
> >  #define ESDHC_DEFAULT_QUIRKS	(SDHCI_QUIRK_FORCE_BLK_SZ_2048 | \
> >  				SDHCI_QUIRK_NO_BUSY_IRQ | \
> >  				SDHCI_QUIRK_NONSTANDARD_CLOCK | \
> > -				SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | \
> >  				SDHCI_QUIRK_PIO_NEEDS_DELAY | \
> >  				SDHCI_QUIRK_RESTORE_IRQS_AFTER_RESET)
> >
> > diff --git a/drivers/mmc/host/sdhci-of-esdhc.c
> > b/drivers/mmc/host/sdhci-of-esdhc.c
> > index 63d219f..a09ea67 100644
> > --- a/drivers/mmc/host/sdhci-of-esdhc.c
> > +++ b/drivers/mmc/host/sdhci-of-esdhc.c
> > @@ -154,6 +154,18 @@ static void esdhc_of_set_clock(struct sdhci_host
> *host, unsigned int clock)
> >  	/* Set the clock */
> >  	esdhc_set_clock(host, clock);
> >  }
> > +/*
> 
> An empty line is missing after the closing curly brace.
> 
> Otherwise, it looks good
> 
> Acked-by: Anton Vorontsov <cbouatmailru@xxxxxxxxx>
> 
> > + * As host dosn't supply us the method to calculate the timeout
> > +value,
> > + * we assigned one for high speed SDHC card. So we can use this to
> > +calculate
> > + * the max discard timeout value to limit the max discard sectors to
> > +avoid the
> > + * timeout issue during large area erase.
> > + */
> > +static unsigned int esdhc_of_get_timeout_clock(struct sdhci_host
> > +*host) {
> > +	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
> > +
> > +	return pltfm_host->clock / 1000 / 32; }
> >
> >  #ifdef CONFIG_PM
> >  static u32 esdhc_proctl;
> > @@ -190,6 +202,7 @@ static struct sdhci_ops sdhci_esdhc_ops = {
> >  	.enable_dma = esdhc_of_enable_dma,
> >  	.get_max_clock = esdhc_of_get_max_clock,
> >  	.get_min_clock = esdhc_of_get_min_clock,
> > +	.get_timeout_clock = esdhc_of_get_timeout_clock,
> >  	.platform_init = esdhc_of_platform_init,  #ifdef CONFIG_PM
> >  	.platform_suspend = esdhc_of_suspend,
> > --
> > 1.7.0.4
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at
> http://vger.kernel.org/majordomo-info.html

��.n��������+%������w��{.n�����{��i��)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux