diff options
author | Andreas Herrmann <andreas.herrmann@calxeda.com> | 2013-09-27 00:36:15 +0200 |
---|---|---|
committer | Marek Szyprowski <m.szyprowski@samsung.com> | 2013-10-02 13:23:11 +0200 |
commit | c9b24996d5da1bf7d2bebab5770dfcc7834c53b7 (patch) | |
tree | 986b26dc765c0bfb16ace52b2a7e83e1c1a5a4a8 /arch/arm/mm/abort-ev7.S | |
parent | 15c03dd4859ab16f9212238f29dd315654aa94f6 (diff) | |
download | blackbird-op-linux-c9b24996d5da1bf7d2bebab5770dfcc7834c53b7.tar.gz blackbird-op-linux-c9b24996d5da1bf7d2bebab5770dfcc7834c53b7.zip |
ARM: dma-mapping: Always pass proper prot flags to iommu_map()
... otherwise it is impossible for the low level iommu driver to
figure out which pte flags should be used.
In __map_sg_chunk we can derive the flags from dma_data_direction.
In __iommu_create_mapping we should treat the memory like
DMA_BIDIRECTIONAL and pass both IOMMU_READ and IOMMU_WRITE to
iommu_map.
__iommu_create_mapping is used during dma_alloc_coherent (via
arm_iommu_alloc_attrs). AFAIK dma_alloc_coherent is responsible for
allocation _and_ mapping. I think this implies that access to the
mapped pages should be allowed.
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Andreas Herrmann <andreas.herrmann@calxeda.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Diffstat (limited to 'arch/arm/mm/abort-ev7.S')
0 files changed, 0 insertions, 0 deletions