Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8b8ae0ed authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "common: DMA-mapping: add per-buffer coherent mappings attributes"

parents 8313c19b 7e89aa76
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -126,3 +126,22 @@ DMA_ATTR_EXEC_MAPPING
By default, the DMA mappings are non-executable. Some use cases might require
an executable mapping. This attribute can be used to indicate to the DMA
subsystem to create an executable mappings for the buffer.

DMA_ATTR_FORCE_COHERENT
-----------------------

When passed to a DMA map call the DMA_ATTR_FORCE_COHERENT DMA
attribute can be used to force a buffer to be mapped as IO coherent.
This DMA attribute is only currently supported for arm64 stage 1 IOMMU
mappings.

DMA_ATTR_FORCE_NON_COHERENT
---------------------------
When passed to a DMA map call the DMA_ATTR_FORCE_NON_COHERENT DMA
attribute can be used to force a buffer to not be mapped as IO
coherent.
The DMA_ATTR_FORCE_NON_COHERENT DMA attribute overrides the buffer IO
coherency configuration set by making the device IO coherent.

This DMA attribute is only currently supported for arm64 stage 1 IOMMU
mappings.
+2 −0
Original line number Diff line number Diff line
@@ -22,6 +22,8 @@ enum dma_attr {
	DMA_ATTR_SKIP_ZEROING,
	DMA_ATTR_NO_DELAYED_UNMAP,
	DMA_ATTR_EXEC_MAPPING,
	DMA_ATTR_FORCE_COHERENT,
	DMA_ATTR_FORCE_NON_COHERENT,
	DMA_ATTR_MAX,
};