Re: [PATCH v3 02/10] devicetree: Add generic IOMMU device tree bindings
From: Stephen Warren <hidden>
Date: 2014-06-30 22:25:08
Also in:
linux-arm-kernel, linux-iommu, linux-tegra, lkml
From: Stephen Warren <hidden>
Date: 2014-06-30 22:25:08
Also in:
linux-arm-kernel, linux-iommu, linux-tegra, lkml
On 06/26/2014 02:49 PM, Thierry Reding wrote:
From: Thierry Reding <redacted>
This commit introduces a generic device tree binding for IOMMU devices.
Only a very minimal subset is described here, but it is enough to cover
the requirements of both the Exynos System MMU and Tegra SMMU as
discussed here:
https://lkml.org/lkml/2014/4/27/346diff --git a/Documentation/devicetree/bindings/iommu/iommu.txt b/Documentation/devicetree/bindings/iommu/iommu.txt
+When an "iommus" property is specified in a device tree node, the IOMMU will +be used for address translation. If a "dma-ranges" property exists in the +device's parent node it will be ignored. An exception to this rule is if the +referenced IOMMU is disabled, in which case the "dma-ranges" property of the +parent shall take effect.
I wonder how useful that paragraph is. The fact that someone disabled a particular IOMMU's node doesn't necessarily mean that the HW can actually do that; an IOMMU might always be active in HW and always translate accesses by some master. In that case, the fallback to dma-ranges wouldn't correlate with what the HW actually does. Perhaps all we need is to add a note to that effect here?