From c6f239ab472ddf970fa2db1639d62b307fcb71d4 Mon Sep 17 00:00:00 2001 From: Ryan QIAN Date: Mon, 21 May 2012 17:24:42 +0800 Subject: [PATCH] ENGR00210160: [mx6]: mmc/sd illegal func call "clk_enable" in intr context 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 --- drivers/mmc/host/sdhci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index 4d36a874e606..22e71be5435c 100755 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c @@ -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 -- 2.39.5