Skip to content

Instantly share code, notes, and snippets.

@ddv2005
Created September 21, 2012 14:43
Show Gist options
  • Save ddv2005/3761879 to your computer and use it in GitHub Desktop.
Save ddv2005/3761879 to your computer and use it in GitHub Desktop.
SDHCI fix kernel OOPS on boot
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 0562295..b4ffbe3 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -143,9 +143,9 @@ void sdhci_spin_unlock(struct sdhci_host *host)
if(enable_llm)
{
local_irq_disable();
- enable_irq(host->irq);
if(host->second_irq)
enable_irq(host->second_irq);
+ enable_irq(host->irq);
}
#endif
spin_unlock(&host->lock);
@@ -177,9 +177,9 @@ void sdhci_spin_unlock_irqrestore(struct sdhci_host *host,unsigned long flags)
if(enable_llm)
{
local_irq_disable();
- enable_irq(host->irq);
if(host->second_irq)
enable_irq(host->second_irq);
+ enable_irq(host->irq);
}
#endif
spin_unlock_irqrestore(&host->lock,flags);
@@ -292,9 +292,7 @@ static void sdhci_reset(struct sdhci_host *host, u8 mask)
return;
}
timeout--;
- sdhci_spin_enable_schedule(host);
mdelay(1);
- sdhci_spin_disable_schedule(host);
}
if (host->ops->platform_reset_exit)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment