iommu/arm-smmu: add support to configure IOVA range
For IOMMU clients the DMA layer only allocates IOVA addresses within the range specified by the qcom,iommu-dma-addr-pool DT property. The remaining IOVA addresses outside of this range, but limited to [0 - 4GB) for fastmap clients, can be used by calls such as iommu_map and iommu_map_sg. Fastmap pre-allocates the page tables for its fully supported IOVA range, which is [0 - 4GB), and this consumes 8MB of memory. Because clients often don't use most of the IOVA addresses outside of the DMA layer IOVA range allow fastmap clients to use the qcom,iommu-geometry DT property to specify only the IOVA range which needs to be supported in order to save memory. CRs-Fixed: 2035925 Change-Id: Ib389e019a022d98417884002de08115fb0fc9384 [lmark@codeaurora.org: removed support for DOMAIN_ATTR_GEOMETRY domain] Signed-off-by:Liam Mark <lmark@codeaurora.org> [guptap@codeaurora.org: update geometry.aperture with mapping] Signed-off-by:
Prakash Gupta <guptap@codeaurora.org>
Loading
Please register or sign in to comment