diff options
-rw-r--r-- | drivers/mmc/host/sdhci.c | 4 | ||||
-rw-r--r-- | drivers/mmc/host/sdhci.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index 3ad3973bdb33..a78bd4f3aecc 100644 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c | |||
@@ -2062,6 +2062,10 @@ static void sdhci_card_event(struct mmc_host *mmc) | |||
2062 | struct sdhci_host *host = mmc_priv(mmc); | 2062 | struct sdhci_host *host = mmc_priv(mmc); |
2063 | unsigned long flags; | 2063 | unsigned long flags; |
2064 | 2064 | ||
2065 | /* First check if client has provided their own card event */ | ||
2066 | if (host->ops->card_event) | ||
2067 | host->ops->card_event(host); | ||
2068 | |||
2065 | spin_lock_irqsave(&host->lock, flags); | 2069 | spin_lock_irqsave(&host->lock, flags); |
2066 | 2070 | ||
2067 | /* Check host->mrq first in case we are runtime suspended */ | 2071 | /* Check host->mrq first in case we are runtime suspended */ |
diff --git a/drivers/mmc/host/sdhci.h b/drivers/mmc/host/sdhci.h index 379e09d9f3c1..b037f188fe44 100644 --- a/drivers/mmc/host/sdhci.h +++ b/drivers/mmc/host/sdhci.h | |||
@@ -294,6 +294,7 @@ struct sdhci_ops { | |||
294 | void (*platform_resume)(struct sdhci_host *host); | 294 | void (*platform_resume)(struct sdhci_host *host); |
295 | void (*adma_workaround)(struct sdhci_host *host, u32 intmask); | 295 | void (*adma_workaround)(struct sdhci_host *host, u32 intmask); |
296 | void (*platform_init)(struct sdhci_host *host); | 296 | void (*platform_init)(struct sdhci_host *host); |
297 | void (*card_event)(struct sdhci_host *host); | ||
297 | }; | 298 | }; |
298 | 299 | ||
299 | #ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS | 300 | #ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS |