In mt8192, we preassign 0-4G; 4G-8G; 8G-12G for different multimedia
engines. This depends on the "dma-ranges=" in the iommu consumer's dtsi
node.

Adds 12G-16G region here. and reword the previous comment. we don't limit
which master locate in which region.

CCU still is 8G-12G. Don't change it here.

Signed-off-by: Yong Wu <yong...@mediatek.com>
---
 drivers/iommu/mtk_iommu.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c
index 287dfc0fc6f8..259ff7b90ff3 100644
--- a/drivers/iommu/mtk_iommu.c
+++ b/drivers/iommu/mtk_iommu.c
@@ -179,10 +179,12 @@ static const struct mtk_iommu_iova_region single_domain[] 
= {
 };
 
 static const struct mtk_iommu_iova_region mt8192_multi_dom[] = {
-       { .iova_base = 0x0,             .size = SZ_4G},         /* disp: 0 ~ 4G 
*/
+       { .iova_base = 0x0,             .size = SZ_4G},         /* 0 ~ 4G */
        #if IS_ENABLED(CONFIG_ARCH_DMA_ADDR_T_64BIT)
-       { .iova_base = SZ_4G,           .size = SZ_4G},         /* vdec: 4G ~ 
8G */
-       { .iova_base = SZ_4G * 2,       .size = SZ_4G},         /* CAM/MDP: 8G 
~ 12G */
+       { .iova_base = SZ_4G,           .size = SZ_4G},         /* 4G ~ 8G */
+       { .iova_base = SZ_4G * 2,       .size = SZ_4G},         /* 8G ~ 12G */
+       { .iova_base = SZ_4G * 3,       .size = SZ_4G},         /* 12G ~ 16G */
+
        { .iova_base = 0x240000000ULL,  .size = 0x4000000},     /* CCU0 */
        { .iova_base = 0x244000000ULL,  .size = 0x4000000},     /* CCU1 */
        #endif
-- 
2.18.0

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to