]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/mmc/host/omap_hsmmc.c
mmc: Fix compile for omap_hsmmc.c
[linux-2.6-omap-h63xx.git] / drivers / mmc / host / omap_hsmmc.c
index d183be6f2a5f7ab369ef8b60c5cfd25815db110f..d765df29ee15dd90078ce776edc3d93976324bbe 100644 (file)
@@ -298,7 +298,6 @@ mmc_omap_xfer_done(struct mmc_omap_host *host, struct mmc_data *data)
                struct mmc_request *mrq = host->mrq;
 
                host->mrq = NULL;
-               mmc_omap_fclk_lazy_disable(host);
                mmc_request_done(host->mmc, mrq);
                return;
        }
@@ -434,6 +433,8 @@ static irqreturn_t mmc_omap_irq(int irq, void *dev_id)
        if (host->mrq == NULL) {
                OMAP_HSMMC_WRITE(host->base, STAT,
                        OMAP_HSMMC_READ(host->base, STAT));
+               /* Flush posted write */
+               OMAP_HSMMC_READ(host->base, STAT);
                return IRQ_HANDLED;
        }
 
@@ -489,6 +490,8 @@ static irqreturn_t mmc_omap_irq(int irq, void *dev_id)
        }
 
        OMAP_HSMMC_WRITE(host->base, STAT, status);
+       /* Flush posted write */
+       OMAP_HSMMC_READ(host->base, STAT);
 
        if (end_cmd || (status & CC))
                mmc_omap_cmd_done(host, host->cmd);