aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Hellwig <[email protected]>2019-02-01 09:47:44 +0100
committerPaul Burton <[email protected]>2019-02-12 09:40:33 -0800
commit74f03104ed465ff71b11076ef620e4eaa53dbf74 (patch)
treec234d46f9f0daceb40d53a86b723012b1e274d6f
parent94ee12b507db8b5876e31c9d6c9d84f556a4b49f (diff)
MIPS: lantiq: pass struct device to DMA API functions
The DMA API generally relies on a struct device to work properly, and only barely works without one for legacy reasons. Pass the easily available struct device from the platform_device to remedy this. Also use GFP_KERNEL instead of GFP_ATOMIC as the gfp_t for the memory allocation, as we aren't in interrupt context or under a lock. Note that this whole function looks somewhat bogus given that we never even look at the returned dma address, and the CPHYSADDR magic on a returned noncached mapping looks "interesting". But I'll leave that to people more familiar with the code to sort out. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: Paul Burton <[email protected]> Cc: John Crispin <[email protected]> Cc: Vinod Koul <[email protected]> Cc: Dmitry Tarnyagin <[email protected]> Cc: Nicolas Ferre <[email protected]> Cc: Sudip Mukherjee <[email protected]> Cc: Felipe Balbi <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected]
-rw-r--r--arch/mips/lantiq/xway/vmmc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/mips/lantiq/xway/vmmc.c b/arch/mips/lantiq/xway/vmmc.c
index 577ec81b557d..3deab9a77718 100644
--- a/arch/mips/lantiq/xway/vmmc.c
+++ b/arch/mips/lantiq/xway/vmmc.c
@@ -31,8 +31,8 @@ static int vmmc_probe(struct platform_device *pdev)
dma_addr_t dma;
cp1_base =
- (void *) CPHYSADDR(dma_alloc_coherent(NULL, CP1_SIZE,
- &dma, GFP_ATOMIC));
+ (void *) CPHYSADDR(dma_alloc_coherent(&pdev->dev, CP1_SIZE,
+ &dma, GFP_KERNEL));
gpio_count = of_gpio_count(pdev->dev.of_node);
while (gpio_count > 0) {