Am Freitag, 19. Oktober 2012, 10:04:14 schrieb Seungwon Jeon:
> On Thursday, October 18, 2012, Heiko Stuebner <he...@sntech.de>
> 
> > If host clock is disabled, host cannot detect a card
> > in case of using the internal or gpio card-detect for detection.
> > 
> > Signed-off-by: Seungwon Jeon <tgih....@samsung.com>
> > Tested-by: Heiko Stuebner <he...@sntech.de>
> > ---
> > I've added the SDHCI_CD_GPIO to the conditional. With this change it
> > works on my machine. But I'm not sure if this would also be necessary
> > for the external card detect.
> 
> Card detection will be asserted out of host in case of using SDHCI_CD_GPIO.
> Adding SDHCI_CD_GPIO to the conditional seems unnecessary.

But it _was_ necessary :-) . Because only then did the problem go away. You 
might be right, that there exists a better solution for this, but something in 
the original patch is at least still missing to fix the problem.

Heiko


> >  drivers/mmc/host/sdhci-s3c.c |    8 ++++++--
> >  1 files changed, 6 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
> > index 0cabf18..649dc32 100644
> > --- a/drivers/mmc/host/sdhci-s3c.c
> > +++ b/drivers/mmc/host/sdhci-s3c.c
> > @@ -750,7 +750,9 @@ static int __devinit sdhci_s3c_probe(struct
> > platform_device *pdev)
> > 
> >             sdhci_s3c_setup_card_detect_gpio(sc);
> >  
> >  #ifdef CONFIG_PM_RUNTIME
> > 
> > -   clk_disable(sc->clk_io);
> > +   if (pdata->cd_type != S3C_SDHCI_CD_INTERNAL &&
> > +       pdata->cd_type != S3C_SDHCI_CD_GPIO)
> > +           clk_disable(sc->clk_io);
> > 
> >  #endif
> >  
> >     return 0;
> > 
> > @@ -797,7 +799,9 @@ static int __devexit sdhci_s3c_remove(struct
> > platform_device *pdev)
> > 
> >             gpio_free(sc->ext_cd_gpio);
> >  
> >  #ifdef CONFIG_PM_RUNTIME
> > 
> > -   clk_enable(sc->clk_io);
> > +   if (pdata->cd_type != S3C_SDHCI_CD_INTERNAL &&
> > +       pdata->cd_type != S3C_SDHCI_CD_GPIO)
> > +           clk_enable(sc->clk_io);
> > 
> >  #endif
> >  
> >     sdhci_remove_host(host, 1);
> > 
> > --
> > 1.7.2.3
> > 
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> > the body of a message to majord...@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to