diff options
| author | Christoph Hellwig <[email protected]> | 2019-02-01 09:47:44 +0100 |
|---|---|---|
| committer | Paul Burton <[email protected]> | 2019-02-12 09:40:33 -0800 |
| commit | 74f03104ed465ff71b11076ef620e4eaa53dbf74 (patch) | |
| tree | c234d46f9f0daceb40d53a86b723012b1e274d6f | |
| parent | 94ee12b507db8b5876e31c9d6c9d84f556a4b49f (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.c | 4 |
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) { |