From: Christoph Hellwig Date: Fri, 18 May 2018 17:18:41 +0000 (+0200) Subject: mmc: android-goldfish: use sg_copy_{from,to}_buffer X-Git-Tag: v4.19~895^2~20 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=53d7e098ba085584e9ce083e8a1041284b351878;p=platform%2Fkernel%2Flinux-rpi.git mmc: android-goldfish: use sg_copy_{from,to}_buffer This handles highmem pages, and also cleans up the code. Signed-off-by: Christoph Hellwig Signed-off-by: Ulf Hansson --- diff --git a/drivers/mmc/host/android-goldfish.c b/drivers/mmc/host/android-goldfish.c index 63d2758..294de17 100644 --- a/drivers/mmc/host/android-goldfish.c +++ b/drivers/mmc/host/android-goldfish.c @@ -217,8 +217,8 @@ static void goldfish_mmc_xfer_done(struct goldfish_mmc_host *host, * We don't really have DMA, so we need * to copy from our platform driver buffer */ - uint8_t *dest = (uint8_t *)sg_virt(data->sg); - memcpy(dest, host->virt_base, data->sg->length); + sg_copy_to_buffer(data->sg, 1, host->virt_base, + data->sg->length); } host->data->bytes_xfered += data->sg->length; dma_unmap_sg(mmc_dev(host->mmc), data->sg, host->sg_len, @@ -393,8 +393,8 @@ static void goldfish_mmc_prepare_data(struct goldfish_mmc_host *host, * We don't really have DMA, so we need to copy to our * platform driver buffer */ - const uint8_t *src = (uint8_t *)sg_virt(data->sg); - memcpy(host->virt_base, src, data->sg->length); + sg_copy_from_buffer(data->sg, 1, host->virt_base, + data->sg->length); } }