summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXianzhong <b07117@freescale.com>2012-08-13 23:42:29 +0800
committerXianzhong <b07117@freescale.com>2012-08-15 02:39:11 +0800
commit8a85ba0f89a925c2c2009a0b1374d2c8588867e6 (patch)
tree397b04c3dfc64a33f437a2e8ca270259f8d99cc9
parentf367a5196d8a42522ca8ee9cdf6f26084b395fe2 (diff)
ENGR00219602 Disable VPU ION and increase GPU to 192M
All vpu memory requests go through GPU video allocator Unify the reserved memory for GPU & VPU to ultize memory with max efficiency Will use ION to implement GPU video memory managment later Signed-off-by: Xianzhong <b07117@freescale.com>
-rw-r--r--arch/arm/configs/imx6_android_defconfig4
-rw-r--r--arch/arm/mach-mx6/board-mx6q_arm2.c4
-rw-r--r--arch/arm/mach-mx6/board-mx6q_sabreauto.c4
-rw-r--r--arch/arm/mach-mx6/board-mx6q_sabrelite.c4
-rw-r--r--arch/arm/mach-mx6/board-mx6q_sabresd.c4
5 files changed, 14 insertions, 6 deletions
diff --git a/arch/arm/configs/imx6_android_defconfig b/arch/arm/configs/imx6_android_defconfig
index fc2549e75899..8da0b52dc0cf 100644
--- a/arch/arm/configs/imx6_android_defconfig
+++ b/arch/arm/configs/imx6_android_defconfig
@@ -1856,6 +1856,7 @@ CONFIG_MXC_CAMERA_OV5642=y
# CONFIG_MXC_TVIN_ADV7180 is not set
CONFIG_MXC_CAMERA_OV5640_MIPI=y
CONFIG_MXC_CAMERA_SENSOR_CLK=y
+# CONFIG_MXC_IPU_DEVICE_QUEUE_SDC is not set
CONFIG_MXC_IPU_PRP_VF_SDC=y
CONFIG_MXC_IPU_PRP_ENC=y
CONFIG_MXC_IPU_CSI_ENC=y
@@ -1888,8 +1889,7 @@ CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
# Graphics support
#
# CONFIG_DRM is not set
-CONFIG_ION=y
-CONFIG_ION_MXC=y
+# CONFIG_ION is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
CONFIG_FB=y
diff --git a/arch/arm/mach-mx6/board-mx6q_arm2.c b/arch/arm/mach-mx6/board-mx6q_arm2.c
index 98394c54d7d6..4808272b9126 100644
--- a/arch/arm/mach-mx6/board-mx6q_arm2.c
+++ b/arch/arm/mach-mx6/board-mx6q_arm2.c
@@ -1250,7 +1250,7 @@ static void __init mx6_arm2_init_usb(void)
}
static struct viv_gpu_platform_data imx6_gpu_pdata __initdata = {
- .reserved_mem_size = SZ_128M,
+ .reserved_mem_size = SZ_128M + SZ_64M,
};
/* HW Initialization, if return 0, initialization is successful. */
@@ -2256,12 +2256,14 @@ static void __init mx6_arm2_reserve(void)
}
#endif
+#if defined(CONFIG_ION)
if (imx_ion_data.heaps[0].size) {
phys = memblock_alloc(imx_ion_data.heaps[0].size, SZ_4K);
memblock_free(phys, imx_ion_data.heaps[0].size);
memblock_remove(phys, imx_ion_data.heaps[0].size);
imx_ion_data.heaps[0].base = phys;
}
+#endif
}
MACHINE_START(MX6Q_ARM2, "Freescale i.MX 6Quad/Solo/DualLite Armadillo2 Board")
diff --git a/arch/arm/mach-mx6/board-mx6q_sabreauto.c b/arch/arm/mach-mx6/board-mx6q_sabreauto.c
index b8f609c136cc..cf146e032b58 100644
--- a/arch/arm/mach-mx6/board-mx6q_sabreauto.c
+++ b/arch/arm/mach-mx6/board-mx6q_sabreauto.c
@@ -766,7 +766,7 @@ static void __init imx6q_sabreauto_init_usb(void)
}
static struct viv_gpu_platform_data imx6q_gpu_pdata __initdata = {
- .reserved_mem_size = SZ_128M,
+ .reserved_mem_size = SZ_128M + SZ_64M,
};
/* HW Initialization, if return 0, initialization is successful. */
@@ -1669,12 +1669,14 @@ static void __init mx6q_reserve(void)
}
#endif
+#if defined(CONFIG_ION)
if (imx_ion_data.heaps[0].size) {
phys = memblock_alloc(imx_ion_data.heaps[0].size, SZ_4K);
memblock_free(phys, imx_ion_data.heaps[0].size);
memblock_remove(phys, imx_ion_data.heaps[0].size);
imx_ion_data.heaps[0].base = phys;
}
+#endif
}
MACHINE_START(MX6Q_SABREAUTO, "Freescale i.MX 6Quad/DualLite/Solo Sabre Auto Board")
diff --git a/arch/arm/mach-mx6/board-mx6q_sabrelite.c b/arch/arm/mach-mx6/board-mx6q_sabrelite.c
index 7208a49709ba..cd7298e6af06 100644
--- a/arch/arm/mach-mx6/board-mx6q_sabrelite.c
+++ b/arch/arm/mach-mx6/board-mx6q_sabrelite.c
@@ -756,7 +756,7 @@ static const struct flexcan_platform_data
};
static struct viv_gpu_platform_data imx6q_gpu_pdata __initdata = {
- .reserved_mem_size = SZ_128M,
+ .reserved_mem_size = SZ_128M + SZ_64M,
};
static struct imx_asrc_platform_data imx_asrc_data = {
@@ -1287,11 +1287,13 @@ static void __init mx6q_sabrelite_reserve(void)
}
#endif
+#if defined(CONFIG_ION)
if (imx_ion_data.heaps[0].size) {
phys = memblock_alloc(imx_ion_data.heaps[0].size, SZ_4K);
memblock_remove(phys, imx_ion_data.heaps[0].size);
imx_ion_data.heaps[0].base = phys;
}
+#endif
for (i = 0; i < ARRAY_SIZE(sabrelite_fb_data); i++)
if (sabrelite_fb_data[i].res_size[0]) {
diff --git a/arch/arm/mach-mx6/board-mx6q_sabresd.c b/arch/arm/mach-mx6/board-mx6q_sabresd.c
index 405ae9c015e7..f9b72c777cf5 100644
--- a/arch/arm/mach-mx6/board-mx6q_sabresd.c
+++ b/arch/arm/mach-mx6/board-mx6q_sabresd.c
@@ -1207,7 +1207,7 @@ static const struct flexcan_platform_data
};
static struct viv_gpu_platform_data imx6q_gpu_pdata __initdata = {
- .reserved_mem_size = SZ_128M,
+ .reserved_mem_size = SZ_128M + SZ_64M,
};
static struct imx_asrc_platform_data imx_asrc_data = {
@@ -1942,11 +1942,13 @@ static void __init mx6q_sabresd_reserve(void)
}
#endif
+#if defined(CONFIG_ION)
if (imx_ion_data.heaps[0].size) {
phys = memblock_alloc(imx_ion_data.heaps[0].size, SZ_4K);
memblock_remove(phys, imx_ion_data.heaps[0].size);
imx_ion_data.heaps[0].base = phys;
}
+#endif
for (i = 0; i < ARRAY_SIZE(sabresd_fb_data); i++)
if (sabresd_fb_data[i].res_size[0]) {