Hi, 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? Thanks, Faiz _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot