summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorPhil Elwell <phil@raspberrypi.org>2015-04-17 19:30:22 +0100
committerpopcornmix <popcornmix@gmail.com>2015-05-18 14:12:37 +0100
commite638019cdf8414feb2789e82f586fa63bc6db646 (patch)
treed4c04226cf396b7a706f8a312a99caa60b7455e4 /drivers
parent516a244303eddd835e28d350e0192ea06a851290 (diff)
downloadlinux-e638019cdf8414feb2789e82f586fa63bc6db646.tar.gz
Add blk_pos parameter to mmc multi_io_quirk callback
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/card/block.c1
-rw-r--r--drivers/mmc/host/omap_hsmmc.c4
-rw-r--r--drivers/mmc/host/sh_mobile_sdhi.c4
-rw-r--r--drivers/mmc/host/tmio_mmc_pio.c4
4 files changed, 10 insertions, 3 deletions
diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
index ed2e71a74a58..ce854a9b908c 100644
--- a/drivers/mmc/card/block.c
+++ b/drivers/mmc/card/block.c
@@ -1413,6 +1413,7 @@ static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
brq->data.blocks = card->host->ops->multi_io_quirk(card,
(rq_data_dir(req) == READ) ?
MMC_DATA_READ : MMC_DATA_WRITE,
+ blk_rq_pos(req),
brq->data.blocks);
}
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index f84cfb01716d..fec8c12d7a51 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1798,7 +1798,9 @@ static int omap_hsmmc_disable_fclk(struct mmc_host *mmc)
}
static int omap_hsmmc_multi_io_quirk(struct mmc_card *card,
- unsigned int direction, int blk_size)
+ unsigned int direction,
+ u32 blk_pos,
+ int blk_size)
{
/* This controller can't do multiblock reads due to hw bugs */
if (direction == MMC_DATA_READ)
diff --git a/drivers/mmc/host/sh_mobile_sdhi.c b/drivers/mmc/host/sh_mobile_sdhi.c
index 6906a905cd54..1fb7577fda9b 100644
--- a/drivers/mmc/host/sh_mobile_sdhi.c
+++ b/drivers/mmc/host/sh_mobile_sdhi.c
@@ -170,7 +170,9 @@ static int sh_mobile_sdhi_write16_hook(struct tmio_mmc_host *host, int addr)
}
static int sh_mobile_sdhi_multi_io_quirk(struct mmc_card *card,
- unsigned int direction, int blk_size)
+ unsigned int direction,
+ u32 blk_pos,
+ int blk_size)
{
/*
* In Renesas controllers, when performing a
diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c
index dba7e1c19dd7..0c87f4fdfb11 100644
--- a/drivers/mmc/host/tmio_mmc_pio.c
+++ b/drivers/mmc/host/tmio_mmc_pio.c
@@ -1001,7 +1001,9 @@ static int tmio_mmc_get_ro(struct mmc_host *mmc)
}
static int tmio_multi_io_quirk(struct mmc_card *card,
- unsigned int direction, int blk_size)
+ unsigned int direction,
+ u32 blk_pos,
+ int blk_size)
{
struct tmio_mmc_host *host = mmc_priv(card->host);