Skip to content

Commit a1bca3e

Browse files
marcanjannau
authored andcommitted
mmc: sdhci-pci: Support external CD GPIO on all OF systems
Allow OF systems to specify an external CD GPIO on all devices, even if they have an internal CD feature. Signed-off-by: Hector Martin <marcan@marcan.st>
1 parent 917f114 commit a1bca3e

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

drivers/mmc/host/sdhci-pci-core.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include <linux/debugfs.h>
2828
#include <linux/acpi.h>
2929
#include <linux/dmi.h>
30+
#include <linux/of.h>
3031

3132
#include <linux/mmc/host.h>
3233
#include <linux/mmc/mmc.h>
@@ -2216,6 +2217,15 @@ static struct sdhci_pci_slot *sdhci_pci_probe_slot(
22162217
dev_warn(&pdev->dev, "failed to setup card detect gpio\n");
22172218
slot->cd_idx = -1;
22182219
}
2220+
} else if (is_of_node(pdev->dev.fwnode)) {
2221+
/* Allow all OF systems to use a CD GPIO if provided */
2222+
2223+
ret = mmc_gpiod_request_cd(host->mmc, "cd", 0,
2224+
slot->cd_override_level, 0);
2225+
if (ret == -EPROBE_DEFER)
2226+
goto remove;
2227+
else if (ret == 0)
2228+
slot->cd_idx = 0;
22192229
}
22202230

22212231
if (chip->fixes && chip->fixes->add_host)

0 commit comments

Comments
 (0)