aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/ushc.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2018-05-18 13:18:45 -0400
committerUlf Hansson <ulf.hansson@linaro.org>2018-05-21 09:49:20 -0400
commita4034173822e6a9092245f546739946489f8f30d (patch)
treef3732c0975da74ac35081d796876c4abbb825929 /drivers/mmc/host/ushc.c
parentb189e7589f6d3411e85c6b7ae6eef158f08f388f (diff)
mmc: ushc: handle highmem pages
Pass the scatterlist on to the USB subsystem instead of expecting a kernel virtual address. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc/host/ushc.c')
-rw-r--r--drivers/mmc/host/ushc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/mmc/host/ushc.c b/drivers/mmc/host/ushc.c
index 81dac17064d7..b2b379b10dfa 100644
--- a/drivers/mmc/host/ushc.c
+++ b/drivers/mmc/host/ushc.c
@@ -300,8 +300,10 @@ static void ushc_request(struct mmc_host *mmc, struct mmc_request *req)
300 pipe = usb_sndbulkpipe(ushc->usb_dev, 2); 300 pipe = usb_sndbulkpipe(ushc->usb_dev, 2);
301 301
302 usb_fill_bulk_urb(ushc->data_urb, ushc->usb_dev, pipe, 302 usb_fill_bulk_urb(ushc->data_urb, ushc->usb_dev, pipe,
303 sg_virt(data->sg), data->sg->length, 303 NULL, data->sg->length,
304 data_callback, ushc); 304 data_callback, ushc);
305 ushc->data_urb->num_sgs = 1;
306 ushc->data_urb->sg = data->sg;
305 ret = usb_submit_urb(ushc->data_urb, GFP_ATOMIC); 307 ret = usb_submit_urb(ushc->data_urb, GFP_ATOMIC);
306 if (ret < 0) 308 if (ret < 0)
307 goto out; 309 goto out;