mmc: sdhci: Factor out sdhci_set_default_irqs
authorAdrian Hunter <adrian.hunter@intel.com>
Mon, 20 Mar 2017 17:50:46 +0000 (19:50 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 24 Apr 2017 19:41:35 +0000 (21:41 +0200)
Factor out sdhci_set_default_irqs().

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Ludovic Desroches <ludovic.desroches@microchip.com>
drivers/mmc/host/sdhci.c

index 48631b8..176e07f 100644 (file)
@@ -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 */