summaryrefslogtreecommitdiffstats
path: root/drivers/mci
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2016-09-13 14:56:05 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2016-09-13 14:56:05 +0200
commitdd534571bdabeea50e32399b7661b3204275e724 (patch)
treed1cb34ffde79a411c5054630b505afb4bd4906d4 /drivers/mci
parentebe2e918c2f8d9afb309f941f516eee3d41e6c3d (diff)
parentfaf2ec64e7442fda2e2330c0df047bcd902c5927 (diff)
downloadbarebox-dd534571bdabeea50e32399b7661b3204275e724.tar.gz
barebox-dd534571bdabeea50e32399b7661b3204275e724.tar.xz
Merge branch 'for-next/misc'
Diffstat (limited to 'drivers/mci')
-rw-r--r--drivers/mci/mmci.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/mci/mmci.c b/drivers/mci/mmci.c
index 9d1e858917..7489ee03a1 100644
--- a/drivers/mci/mmci.c
+++ b/drivers/mci/mmci.c
@@ -212,7 +212,7 @@ static u64 mmci_pio_read(struct mmci_host *host, char *buffer, unsigned int host
struct variant_data *variant = host->variant;
do {
- int count = readl(base + MMCIFIFOCNT) << 2;
+ int count = host_remain - (readl(base + MMCIFIFOCNT) << 2);
if (count > host_remain)
count = host_remain;
@@ -264,7 +264,6 @@ static int read_bytes(struct mci_host *mci, char *dest, unsigned int blkcount, u
dev_dbg(host->hw_dev, "read_bytes: blkcount=%u blksize=%u\n", blkcount, blksize);
do {
- mmci_writel(host, MMCIDATACTRL, mmci_readl(host, MMCIDATACTRL));
len = mmci_pio_read(host, dest, xfercount);
xfercount -= len;
dest += len;