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

Commit 632ca00a authored by Mitchel Humpherys's avatar Mitchel Humpherys
Browse files

iommu: Add domain attribute for getting page table info



For certain DMA API implementations, the overhead of going through the
IOMMU framework is too much.  Such an implementation might want to
perform some rudimentary page table management using bits of information
from the underlying page tables.  Add a domain attribute and structure
for querying this type of information.  For now, the only information
supported is the kernel virtual address of the PMDs (assumed to be
virtually contiguous).

CRs-Fixed: 997751
Change-Id: I29d31e9649c24d30a5a7ffaa4b238a0203846594
Signed-off-by: default avatarMitchel Humpherys <mitchelh@codeaurora.org>
parent 8f1c7517
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -56,6 +56,10 @@ struct iommu_domain_geometry {
	bool force_aperture;       /* DMA only allowed in mappable range? */
};

struct iommu_pgtbl_info {
	void *pmds;
};

struct iommu_domain {
	const struct iommu_ops *ops;
	void *priv;
@@ -103,6 +107,7 @@ enum iommu_attr {
	DOMAIN_ATTR_NON_FATAL_FAULTS,
	DOMAIN_ATTR_S1_BYPASS,
	DOMAIN_ATTR_FAST,
	DOMAIN_ATTR_PGTBL_INFO,
	DOMAIN_ATTR_MAX,
};