]> Pileus Git - ~andy/linux/commitdiff
msm: iommu: Revise GFX2D0 IOMMU contexts and M2V mappings
authorStepan Moskovchenko <stepanm@codeaurora.org>
Sat, 13 Nov 2010 03:29:51 +0000 (19:29 -0800)
committerDaniel Walker <dwalker@codeaurora.org>
Tue, 30 Nov 2010 22:01:32 +0000 (14:01 -0800)
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 <stepanm@codeaurora.org>
Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
arch/arm/mach-msm/devices-msm8x60-iommu.c

index 22d0c7cb71f6402ba5ab26916f34958e16a68491..8cccb26805421bf4f1aee7229bbf7dd7fd34021a 100644 (file)
@@ -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)