@@ -327,7 +327,6 @@ static void bcm2835_sdhost_reset_internal(struct bcm2835_host *host)
host->clock = 0;
bcm2835_sdhost_write(host, host->hcfg, SDHCFG);
bcm2835_sdhost_write(host, host->cdiv, SDCDIV);
- mmiowb();
}
static void bcm2835_sdhost_reset(struct mmc_host *mmc)
@@ -1035,8 +1034,6 @@ static void bcm2835_sdhost_timeout(unsigned long data)
tasklet_schedule(&host->finish_tasklet);
}
}
-
- mmiowb();
spin_unlock_irqrestore(&host->lock, flags);
}
@@ -1187,8 +1184,6 @@ static irqreturn_t bcm2835_sdhost_irq(int irq, void *dev_id)
result = IRQ_HANDLED;
}
- mmiowb();
-
spin_unlock(&host->lock);
return result;
@@ -1303,7 +1298,6 @@ static void bcm2835_sdhost_request(struct mmc_host *mmc,
bcm2835_sdhost_dumpregs(host);
mrq->cmd->error = -EILSEQ;
tasklet_schedule(&host->finish_tasklet);
- mmiowb();
spin_unlock_irqrestore(&host->lock, flags);
return;
}
@@ -1324,8 +1318,6 @@ static void bcm2835_sdhost_request(struct mmc_host *mmc,
bcm2835_sdhost_finish_command(host, &flags);
}
- mmiowb();
-
spin_unlock_irqrestore(&host->lock, flags);
}
@@ -1353,8 +1345,6 @@ static void bcm2835_sdhost_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
bcm2835_sdhost_write(host, host->hcfg, SDHCFG);
- mmiowb();
-
spin_unlock_irqrestore(&host->lock, flags);
}
@@ -1383,8 +1373,6 @@ static void bcm2835_sdhost_cmd_wait_work(struct work_struct *work)
bcm2835_sdhost_finish_command(host, &flags);
- mmiowb();
-
spin_unlock_irqrestore(&host->lock, flags);
}
@@ -1415,8 +1403,6 @@ static void bcm2835_sdhost_tasklet_finish(unsigned long param)
host->cmd = NULL;
host->data = NULL;
- mmiowb();
-
host->dma_desc = NULL;
terminate_chan = host->dma_chan;
host->dma_chan = NULL;
@@ -1515,7 +1501,6 @@ int bcm2835_sdhost_add_host(struct bcm2835_host *host)
goto untasklet;
}
- mmiowb();
mmc_add_host(mmc);
pio_limit_string[0] = '\0';
Arnd asked why they are needed. Seems they are not needed at all. Things are still working fine if I remove them. Guess the arm{,64} versions of writel() & friends take care already. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- drivers/mmc/host/bcm2835-sdhost.c | 15 --------------- 1 file changed, 15 deletions(-)