summaryrefslogtreecommitdiffstats
path: root/include/linux/mmc
diff options
context:
space:
mode:
authorRussell King2014-04-25 13:55:46 +0200
committerChris Ball2014-05-22 13:26:24 +0200
commit781e989cf593c71d26bdca74f5e77b3651fc060e (patch)
tree55c3bf7af666f50a2fc88e7ab2929958b34ba7ac /include/linux/mmc
parentmmc: sdhci: clean up sdio interrupt enable handling (diff)
downloadkernel-qcow2-linux-781e989cf593c71d26bdca74f5e77b3651fc060e.tar.gz
kernel-qcow2-linux-781e989cf593c71d26bdca74f5e77b3651fc060e.tar.xz
kernel-qcow2-linux-781e989cf593c71d26bdca74f5e77b3651fc060e.zip
mmc: sdhci: convert to new SDIO IRQ handling
Use a generic threaded interrupt handler for SDIO interrupt handling, rather than allowing the SDIO core code to buggily spawn its own thread. This results in host drivers to be more in control of how SDIO interrupts are acknowledged in the hardware, rather than having the internals of the SDIO core placed upon them, possibly resulting in sub-standard handling. At least one SDHCI implementation specifies a very specific sequence to deal with a card interrupt. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Tested-by: Markus Pargmann <mpa@pengutronix.de> Tested-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Chris Ball <chris@printf.net>
Diffstat (limited to 'include/linux/mmc')
-rw-r--r--include/linux/mmc/sdhci.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h
index 7be12b883485..d1aa97b77dd9 100644
--- a/include/linux/mmc/sdhci.h
+++ b/include/linux/mmc/sdhci.h
@@ -177,6 +177,8 @@ struct sdhci_host {
unsigned int ocr_avail_mmc;
u32 ocr_mask; /* available voltages */
+ u32 thread_isr;
+
wait_queue_head_t buf_ready_int; /* Waitqueue for Buffer Read Ready interrupt */
unsigned int tuning_done; /* Condition flag set when CMD19 succeeds */