From ff25ff842ea6afd58ccc2e3f386ee5ac540b6a63 Mon Sep 17 00:00:00 2001 From: Stepan Moskovchenko Date: Fri, 12 Nov 2010 19:29:51 -0800 Subject: [PATCH] msm: iommu: Revise GFX2D0 IOMMU contexts and M2V mappings Based on recommendations from chip designers, optimize the Machine ID to translation context mappings for the first 2D core's IOMMU. Remove the "gfx2d0_texv3_smmu" context, as it is no longer needed under the new mapping scheme. Signed-off-by: Stepan Moskovchenko Signed-off-by: Daniel Walker --- arch/arm/mach-msm/devices-msm8x60-iommu.c | 28 +++++------------------ 1 file changed, 6 insertions(+), 22 deletions(-) diff --git a/arch/arm/mach-msm/devices-msm8x60-iommu.c b/arch/arm/mach-msm/devices-msm8x60-iommu.c index 22d0c7cb71f6..8cccb2680542 100644 --- a/arch/arm/mach-msm/devices-msm8x60-iommu.c +++ b/arch/arm/mach-msm/devices-msm8x60-iommu.c @@ -532,16 +532,10 @@ static struct msm_iommu_ctx_dev gfx3d_priv_ctx = { 31, -1} }; -static struct msm_iommu_ctx_dev gfx2d0_pixv1_ctx = { - .name = "gfx2d0_pixv1_smmu", +static struct msm_iommu_ctx_dev gfx2d0_2d0_ctx = { + .name = "gfx2d0_2d0", .num = 0, - .mids = {0, 3, 4, -1} -}; - -static struct msm_iommu_ctx_dev gfx2d0_texv3_ctx = { - .name = "gfx2d0_texv3_smmu", - .num = 1, - .mids = {1, 6, 7, -1} + .mids = {0, 1, 2, 3, 4, 5, 6, 7, -1} }; static struct platform_device msm_device_jpegd_src_ctx = { @@ -696,7 +690,7 @@ static struct platform_device msm_device_gfx3d_priv_ctx = { }, }; -static struct platform_device msm_device_gfx2d0_pixv1_ctx = { +static struct platform_device msm_device_gfx2d0_2d0_ctx = { .name = "msm_iommu_ctx", .id = 19, .dev = { @@ -704,14 +698,6 @@ static struct platform_device msm_device_gfx2d0_pixv1_ctx = { }, }; -static struct platform_device msm_device_gfx2d0_texv3_ctx = { - .name = "msm_iommu_ctx", - .id = 20, - .dev = { - .parent = &msm_device_iommu_gfx2d0.dev, - }, -}; - static struct platform_device *msm_iommu_devs[] = { &msm_device_iommu_jpegd, &msm_device_iommu_vpe, @@ -760,8 +746,7 @@ static struct platform_device *msm_iommu_ctx_devs[] = { &msm_device_vcodec_b_mm2_ctx, &msm_device_gfx3d_user_ctx, &msm_device_gfx3d_priv_ctx, - &msm_device_gfx2d0_pixv1_ctx, - &msm_device_gfx2d0_texv3_ctx, + &msm_device_gfx2d0_2d0_ctx, }; static struct msm_iommu_ctx_dev *msm_iommu_ctx_data[] = { @@ -784,8 +769,7 @@ static struct msm_iommu_ctx_dev *msm_iommu_ctx_data[] = { &vcodec_b_mm2_ctx, &gfx3d_user_ctx, &gfx3d_priv_ctx, - &gfx2d0_pixv1_ctx, - &gfx2d0_texv3_ctx, + &gfx2d0_2d0_ctx, }; static int msm8x60_iommu_init(void) -- 2.34.1