Re: [PATCH 11/33] dma-mapping: move swiotlb arch helpers to a new header

From: Robin Murphy
Date: Wed Jan 10 2018 - 09:56:11 EST


On 10/01/18 08:00, Christoph Hellwig wrote:
phys_to_dma, dma_to_phys and dma_capable are helpers published by
architecture code for use of swiotlb and xen-swiotlb only. Drivers are
not supposed to use these directly, but use the DMA API instead.

Move these to a new asm/dma-direct.h helper, included by a
linux/dma-direct.h wrapper that provides the default linear mapping
unless the architecture wants to override it.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>
---
[...]
drivers/crypto/marvell/cesa.c | 1 +
drivers/mtd/nand/qcom_nandc.c | 1 +

I took a look at these, and it seems their phys_to_dma() usage is doing the thing which we subsequently formalised as dma_map_resource(). I've had a crack at a quick patch to update the CESA driver; qcom_nandc looks slightly more complex in that the changes probably need to span the BAM dmaengine driver as well.

In the process, though, I stumbled across gen_pool_dma_alloc() - yuck, something needs doing there, for sure...

Robin.
--
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html