|
@@ -225,15 +225,8 @@ static void sdhci_do_reset(struct sdhci_host *host, u8 mask)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-static void sdhci_init(struct sdhci_host *host, int soft)
|
|
|
+static void sdhci_set_default_irqs(struct sdhci_host *host)
|
|
|
{
|
|
|
- struct mmc_host *mmc = host->mmc;
|
|
|
-
|
|
|
- if (soft)
|
|
|
- sdhci_do_reset(host, SDHCI_RESET_CMD|SDHCI_RESET_DATA);
|
|
|
- else
|
|
|
- sdhci_do_reset(host, SDHCI_RESET_ALL);
|
|
|
-
|
|
|
host->ier = SDHCI_INT_BUS_POWER | SDHCI_INT_DATA_END_BIT |
|
|
|
SDHCI_INT_DATA_CRC | SDHCI_INT_DATA_TIMEOUT |
|
|
|
SDHCI_INT_INDEX | SDHCI_INT_END_BIT | SDHCI_INT_CRC |
|
|
@@ -246,6 +239,18 @@ static void sdhci_init(struct sdhci_host *host, int soft)
|
|
|
|
|
|
sdhci_writel(host, host->ier, SDHCI_INT_ENABLE);
|
|
|
sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE);
|
|
|
+}
|
|
|
+
|
|
|
+static void sdhci_init(struct sdhci_host *host, int soft)
|
|
|
+{
|
|
|
+ struct mmc_host *mmc = host->mmc;
|
|
|
+
|
|
|
+ if (soft)
|
|
|
+ sdhci_do_reset(host, SDHCI_RESET_CMD | SDHCI_RESET_DATA);
|
|
|
+ else
|
|
|
+ sdhci_do_reset(host, SDHCI_RESET_ALL);
|
|
|
+
|
|
|
+ sdhci_set_default_irqs(host);
|
|
|
|
|
|
if (soft) {
|
|
|
/* force clock reconfiguration */
|