From 9136259063f4984f17415bbc297f61878af4dfb2 Mon Sep 17 00:00:00 2001 From: Nitin Rawat Date: Mon, 9 Nov 2020 10:05:35 +0530 Subject: [PATCH] ARM: dts: msm: Add IOMMU Geometry property for storage Add IOMMU Geometry property to help save SMMU page table memory saving for UFS/eMMC. No functional change but helps saving memory table space. Change-Id: I94f9c4c58ca58f3491209bb8f12c1f080810dceb --- qcom/holi.dtsi | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/qcom/holi.dtsi b/qcom/holi.dtsi index 34fd9f97a15b..3f6054571a56 100644 --- a/qcom/holi.dtsi +++ b/qcom/holi.dtsi @@ -2111,6 +2111,23 @@ iommus = <&apps_smmu 0x60 0x0>; qcom,iommu-dma = "fastmap"; + /* + * iommu-dma-addr-pool- Indicate the range of data addresses which will be + * used in dma allocation. + * + * iommu-geometry - This is specific for fastmap which Allow clients + * to save SMMU page table memory. + * + * The 2nd parameter indicates size of the smmu page table memory. + * If its exceeds beyond this size, last unused entry from page table + * memory will be invalidated. + * + * It's better to provide range of dma address, hence provide + * iommu-dma-addr-pool property along with iommu-geometry property. + */ + + qcom,iommu-dma-addr-pool = <0x40000000 0x40000000>; + qcom,iommu-geometry = <0x40000000 0x40000000>; reset-gpios = <&tlmm 156 GPIO_ACTIVE_LOW>; resets = <&gcc GCC_UFS_PHY_BCR>; @@ -2137,6 +2154,24 @@ iommus = <&apps_smmu 0x20 0x0>; qcom,iommu-dma = "fastmap"; + /* + * iommu-dma-addr-pool- Indicate the range of data addresses which will be + * used in dma allocation. + * + * iommu-geometry - This is specific for fastmap which Allow clients + * to save SMMU page table memory. + * + * The 2nd parameter indicates size of the smmu page table memory. + * If its exceeds beyond this size, last unused entry from page table + * memory will be invalidated. + * + * It's better to provide range of dma address, hence provide + * iommu-dma-addr-pool property along with iommu-geometry property. + */ + + qcom,iommu-dma-addr-pool = <0x40000000 0x40000000>; + qcom,iommu-geometry = <0x40000000 0x40000000>; + interrupts = , ; interrupt-names = "hc_irq", "pwr_irq";