Thread (30 messages) 30 messages, 8 authors, 2016-04-26

[PATCH v5 3/9] dma-mapping: add dma_{map,unmap}_resource

From: laurent.pinchart@ideasonboard.com (Laurent Pinchart)
Date: 2016-03-17 16:43:23
Also in: linux-arch, linux-iommu, linux-renesas-soc, lkml

Hello,

On Tuesday 15 March 2016 01:22:54 Christoph Hellwig wrote:
On Fri, Mar 11, 2016 at 01:58:46PM +0100, Niklas S?derlund wrote:
quoted
Without an IOMMU this is easy since the phys_addr_t and dma_addr_t are
the same and no special care is needed. However if you have a IOMMU you
need to map the DMA slave phys_addr_t to a dma_addr_t using something
like this. Is it not very similar to dma_map_single() where one maps
processor virtual memory (instead if MMIO) so that it can be used with
DMA slaves?
It's similar, but I don't think this actually works as a general case
as there are quite a few places that expect to be able to have a
struct page for a physical address.  We'd at least need a very careful
audit for that case.
The good news is that, given that no code uses this new API at the moment, 
there isn't much to audit. The patch series implements the resource mapping 
for arch/arm only, and makes use of it in the rcar-dmac driver only. Would you 
like anything audited else than the arch/arm dma mapping implementation, the 
rcar-dmac driver and the code that then deals with the dma addresses (I'm 
thinking about the IOMMU subsystem and the ipmmu-vmsa driver in particular) ?

-- 
Regards,

Laurent Pinchart
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help