Hi Faiz,

On Tue, Jul 23, 2019 at 02:27:28PM +0530, Faiz Abbas wrote:
> On 23/07/19 1:30 PM, Peng Fan wrote:
> > + Faiz
> > 
> >> Subject: [PATCH] mmd: sdhci: fix non GPIO card detect
> >>
> >> Some SD cards do not assert the SDHCI_CARD_PRESENT bit. Only the
> >> SDHCI_CARD_DETECT_PIN_LEVEL is enabled. Consider that enough for card
> >> detect indication.
> >>
> >> This fixes SD card access from SPL, since DM_GPIO is not available in SPL
> >> code.
> >>
> >> Fixes: da18c62b6e6a ("mmc: sdhci: Implement SDHCI card detect")
> >> Cc: T Karthik Reddy <t.karthik.re...@xilinx.com>
> >> Cc: Michal Simek <michal.si...@xilinx.com>
> >> Signed-off-by: Baruch Siach <bar...@tkos.co.il>
> >> ---
> >>  drivers/mmc/sdhci.c | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index
> >> 2779bca93f08..17a28181fcca 100644
> >> --- a/drivers/mmc/sdhci.c
> >> +++ b/drivers/mmc/sdhci.c
> >> @@ -683,7 +683,7 @@ int sdhci_get_cd(struct udevice *dev)
> >>    }
> >>  #endif
> >>    value = !!(sdhci_readl(host, SDHCI_PRESENT_STATE) &
> >> -             SDHCI_CARD_PRESENT);
> >> +             (SDHCI_CARD_PRESENT | SDHCI_CARD_DETECT_PIN_LEVEL));
> > 
> > Faiz, are you fine with this change?
> 
> Not really. The spec is pretty clear that DETECT_PIN_LEVEL is not to be
> trusted. Also how does the CARD_PRESENT assertion depend on the SD card
> you use? Are you normally muxing the SDCD line to the IP (for hardware
> to detect) or are you connecting it as a gpio which software must detect?

I tested SanDisk 8GB SD card, class 10, UHS1, on Armada 388 based SolidRun 
Clearfog Base. The SDHCI_PRESENT_STATE register consistently reads 0x01f60000, 
that is, CARD_PRESENT is disabled, DETECT_PIN_LEVEL is enabled.

The SD card-detect GPIO is present at the hardware level, but it is not 
accessible from SPL code because there is currently no SPL_DM_GPIO. The main 
U-Boot image detects the SD card correctly (once the other MMC patches I 
posted are applied).

Without this patch boot from SD card is broken. What is the right fix then?

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - bar...@tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to