From e683c2a8b47b837b5a01d7e0d758dacf6cfe5450 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