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>
This commit is contained in:
Christoph Hellwig 2018-05-18 19:18:45 +02:00 committed by Ulf Hansson
parent b189e7589f
commit a403417382

View File

@ -300,8 +300,10 @@ static void ushc_request(struct mmc_host *mmc, struct mmc_request *req)
pipe = usb_sndbulkpipe(ushc->usb_dev, 2); pipe = usb_sndbulkpipe(ushc->usb_dev, 2);
usb_fill_bulk_urb(ushc->data_urb, ushc->usb_dev, pipe, usb_fill_bulk_urb(ushc->data_urb, ushc->usb_dev, pipe,
sg_virt(data->sg), data->sg->length, NULL, data->sg->length,
data_callback, ushc); data_callback, ushc);
ushc->data_urb->num_sgs = 1;
ushc->data_urb->sg = data->sg;
ret = usb_submit_urb(ushc->data_urb, GFP_ATOMIC); ret = usb_submit_urb(ushc->data_urb, GFP_ATOMIC);
if (ret < 0) if (ret < 0)
goto out; goto out;