|
@@ -911,17 +911,9 @@ static void sdhci_finish_data(struct sdhci_host *host)
|
|
|
data = host->data;
|
|
|
host->data = NULL;
|
|
|
|
|
|
- if (host->flags & SDHCI_REQ_USE_DMA) {
|
|
|
- if (host->flags & SDHCI_USE_ADMA)
|
|
|
- sdhci_adma_table_post(host, data);
|
|
|
-
|
|
|
- if (data->host_cookie == COOKIE_MAPPED) {
|
|
|
- dma_unmap_sg(mmc_dev(host->mmc), data->sg, data->sg_len,
|
|
|
- (data->flags & MMC_DATA_READ) ?
|
|
|
- DMA_FROM_DEVICE : DMA_TO_DEVICE);
|
|
|
- data->host_cookie = COOKIE_UNMAPPED;
|
|
|
- }
|
|
|
- }
|
|
|
+ if ((host->flags & (SDHCI_REQ_USE_DMA | SDHCI_USE_ADMA)) ==
|
|
|
+ (SDHCI_REQ_USE_DMA | SDHCI_USE_ADMA))
|
|
|
+ sdhci_adma_table_post(host, data);
|
|
|
|
|
|
/*
|
|
|
* The specification states that the block count register must
|