blob: 2efdf51b220b410c7d3541855f091e693b330d80 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
Index: linux-3.12.13/drivers/mmc/host/atmel-mci.c
===================================================================
--- linux-3.12.13.orig/drivers/mmc/host/atmel-mci.c 2014-04-10 13:32:40.012723945 -0500
+++ linux-3.12.13/drivers/mmc/host/atmel-mci.c 2014-04-10 13:36:46.088723297 -0500
@@ -1447,6 +1447,9 @@
slot->detect_is_active_high);
dev_dbg(&mmc->class_dev, "card is %spresent\n",
present ? "" : "not ");
+ } else {
+ // jjg - assume card is present if detect pin is unset
+ present = 1;
}
return present;
@@ -2205,8 +2208,12 @@
}
}
- if (!gpio_is_valid(slot->detect_pin))
- mmc->caps |= MMC_CAP_NEEDS_POLL;
+ // jjg - if detect pin isn't set, don't poll -- just assume device
+ // is there and mark it non-removable
+ if (!gpio_is_valid(slot->detect_pin)) {
+ dev_info(&host->pdev->dev,"No detect pin, marking non-removable and assuming device is present\n");
+ mmc->caps |= MMC_CAP_NONREMOVABLE;
+ }
if (gpio_is_valid(slot->wp_pin)) {
if (gpio_request(slot->wp_pin, "mmc_wp")) {
|