]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ENGR00210160: [mx6]: mmc/sd illegal func call "clk_enable" in intr context
authorRyan QIAN <b32804@freescale.com>
Mon, 21 May 2012 09:24:42 +0000 (17:24 +0800)
committerLothar Waßmann <LW@KARO-electronics.de>
Fri, 24 May 2013 06:34:41 +0000 (08:34 +0200)
issue:
calling clk_enable in an interrupt context which will cause kernel bug.

- It is a temp workaround for calling 'clk_enable' in an interrupt context.
By redefine SDHCI_USE_LEDS_CLASS to SDHCI_USE_LEDS_CLASS_BROKEN to exclude
led ctrl support, it does not support mmc/sd LED ctrl with this patch.

- Per current driver structure, it's difficult to fix this issue in driver
layer. The fix for this issue needs adjustment to current driver structure
and using new clock management in kernel interface.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
drivers/mmc/host/sdhci.c

index 4d36a874e6062e5dd6e7f5aef0d4489731a0128e..22e71be5435c3db9e7bd2f6816458862e476f815 100755 (executable)
@@ -37,7 +37,8 @@
 
 #if defined(CONFIG_LEDS_CLASS) || (defined(CONFIG_LEDS_CLASS_MODULE) && \
        defined(CONFIG_MMC_SDHCI_MODULE))
-#define SDHCI_USE_LEDS_CLASS
+/* FIXME: temp workaround for calling clk_enable in an interrupt context */
+#define SDHCI_USE_LEDS_CLASS_BROKEN
 #endif
 
 #define MAX_TUNING_LOOP 40