summaryrefslogtreecommitdiff
path: root/Documentation/DMA-attributes.txt
diff options
context:
space:
mode:
authorMark Nelson <markn@au1.ibm.com>2008-07-18 23:03:34 +1000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2008-07-22 10:39:36 +1000
commit1ed6af73440c5ec920884bb800685a8cab4ce847 (patch)
tree68a452bd8e9d07e9a28cef63ee3b72e0319635da /Documentation/DMA-attributes.txt
parent79e25bac124a7d1d7bf966f06dd9398a1b5f3d20 (diff)
downloadlinux-3.10-1ed6af73440c5ec920884bb800685a8cab4ce847.tar.gz
linux-3.10-1ed6af73440c5ec920884bb800685a8cab4ce847.tar.bz2
linux-3.10-1ed6af73440c5ec920884bb800685a8cab4ce847.zip
powerpc/cell: Add DMA_ATTR_WEAK_ORDERING dma attribute and use in Cell IOMMU code
Introduce a new dma attriblue DMA_ATTR_WEAK_ORDERING to use weak ordering on DMA mappings in the Cell processor. Add the code to the Cell's IOMMU implementation to use this code. Dynamic mappings can be weakly or strongly ordered on an individual basis but the fixed mapping has to be either completely strong or completely weak. This is currently decided by a kernel boot option (pass iommu_fixed=weak for a weakly ordered fixed linear mapping, strongly ordered is the default). Signed-off-by: Mark Nelson <markn@au1.ibm.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'Documentation/DMA-attributes.txt')
-rw-r--r--Documentation/DMA-attributes.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/Documentation/DMA-attributes.txt b/Documentation/DMA-attributes.txt
index 6d772f84b47..b768cc0e402 100644
--- a/Documentation/DMA-attributes.txt
+++ b/Documentation/DMA-attributes.txt
@@ -22,3 +22,12 @@ ready and available in memory. The DMA of the "completion indication"
could race with data DMA. Mapping the memory used for completion
indications with DMA_ATTR_WRITE_BARRIER would prevent the race.
+DMA_ATTR_WEAK_ORDERING
+----------------------
+
+DMA_ATTR_WEAK_ORDERING specifies that reads and writes to the mapping
+may be weakly ordered, that is that reads and writes may pass each other.
+
+Since it is optional for platforms to implement DMA_ATTR_WEAK_ORDERING,
+those that do not will simply ignore the attribute and exhibit default
+behavior.