aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/mmc/host/mmci.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index 5da5bea0f9f0..7721de942c69 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -1144,9 +1144,17 @@ static int __devinit mmci_probe(struct amba_device *dev,
1144 else if (ret != -ENOSYS) 1144 else if (ret != -ENOSYS)
1145 goto err_gpio_cd; 1145 goto err_gpio_cd;
1146 1146
1147 /*
1148 * A gpio pin that will detect cards when inserted and removed
1149 * will most likely want to trigger on the edges if it is
1150 * 0 when ejected and 1 when inserted (or mutatis mutandis
1151 * for the inverted case) so we request triggers on both
1152 * edges.
1153 */
1147 ret = request_any_context_irq(gpio_to_irq(plat->gpio_cd), 1154 ret = request_any_context_irq(gpio_to_irq(plat->gpio_cd),
1148 mmci_cd_irq, 0, 1155 mmci_cd_irq,
1149 DRIVER_NAME " (cd)", host); 1156 IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
1157 DRIVER_NAME " (cd)", host);
1150 if (ret >= 0) 1158 if (ret >= 0)
1151 host->gpio_cd_irq = gpio_to_irq(plat->gpio_cd); 1159 host->gpio_cd_irq = gpio_to_irq(plat->gpio_cd);
1152 } 1160 }