aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/setup-fimc0.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-exynos/setup-fimc0.c')
-rw-r--r--arch/arm/mach-exynos/setup-fimc0.c40
1 files changed, 28 insertions, 12 deletions
diff --git a/arch/arm/mach-exynos/setup-fimc0.c b/arch/arm/mach-exynos/setup-fimc0.c
index e95adcb..975412c 100644
--- a/arch/arm/mach-exynos/setup-fimc0.c
+++ b/arch/arm/mach-exynos/setup-fimc0.c
@@ -28,27 +28,41 @@ struct platform_device; /* don't need the contents */
void s3c_fimc0_cfg_gpio(struct platform_device *pdev)
{
-#if defined(CONFIG_MACH_SMDK4212) || defined(CONFIG_MACH_SMDK4210)
+#if defined(CONFIG_MACH_SMDK4212) || defined(CONFIG_MACH_SMDK4210) \
+ || defined(CONFIG_VIDEO_S5K5BBGX)
if (soc_is_exynos4210()) {
/* CAM A port(b0010) : PCLK, VSYNC, HREF, DATA[0-4] */
- s3c_gpio_cfgrange_nopull(EXYNOS4210_GPJ0(0), 8, S3C_GPIO_SFN(2));
- /* CAM A port(b0010) : DATA[5-7], CLKOUT(MIPI CAM also), FIELD */
- s3c_gpio_cfgrange_nopull(EXYNOS4210_GPJ1(0), 5, S3C_GPIO_SFN(2));
+ s3c_gpio_cfgrange_nopull(EXYNOS4210_GPJ0(0), 8,
+ S3C_GPIO_SFN(2));
+ /* CAM A port(b0010) : DATA[5-7], CLKOUT(MIPI CAM also),
+ * FIELD */
+ s3c_gpio_cfgrange_nopull(EXYNOS4210_GPJ1(0), 5,
+ S3C_GPIO_SFN(2));
+#if !defined(CONFIG_MACH_P8LTE) || !defined(CONFIG_VIDEO_S5K5BBGX)
/* CAM B port(b0011) : DATA[0-7] */
- s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE1(0), 8, S3C_GPIO_SFN(3));
+ s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE1(0), 8,
+ S3C_GPIO_SFN(3));
/* CAM B port(b0011) : PCLK, VSYNC, HREF, FIELD, CLKOUT */
- s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE0(0), 5, S3C_GPIO_SFN(3));
+ s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE0(0), 5,
+ S3C_GPIO_SFN(3));
+#endif
} else {
/* CAM A port(b0010) : PCLK, VSYNC, HREF, DATA[0-4] */
- s3c_gpio_cfgrange_nopull(EXYNOS4212_GPJ0(0), 8, S3C_GPIO_SFN(2));
- /* CAM A port(b0010) : DATA[5-7], CLKOUT(MIPI CAM also), FIELD */
- s3c_gpio_cfgrange_nopull(EXYNOS4212_GPJ1(0), 5, S3C_GPIO_SFN(2));
+ s3c_gpio_cfgrange_nopull(EXYNOS4212_GPJ0(0), 8,
+ S3C_GPIO_SFN(2));
+ /* CAM A port(b0010) : DATA[5-7], CLKOUT(MIPI CAM also),
+ * FIELD */
+ s3c_gpio_cfgrange_nopull(EXYNOS4212_GPJ1(0), 5,
+ S3C_GPIO_SFN(2));
/* CAM B port(b0011) : PCLK, DATA[0-6] */
- s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM0(0), 8, S3C_GPIO_SFN(3));
+ s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM0(0), 8,
+ S3C_GPIO_SFN(3));
/* CAM B port(b0011) : FIELD, DATA[7]*/
- s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM1(0), 2, S3C_GPIO_SFN(3));
+ s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM1(0), 2,
+ S3C_GPIO_SFN(3));
/* CAM B port(b0011) : VSYNC, HREF, CLKOUT*/
- s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM2(0), 3, S3C_GPIO_SFN(3));
+ s3c_gpio_cfgrange_nopull(EXYNOS4212_GPM2(0), 3,
+ S3C_GPIO_SFN(3));
}
/* note : driver strength to max is unnecessary */
#elif defined(CONFIG_MACH_PX)
@@ -60,11 +74,13 @@ void s3c_fimc0_cfg_gpio(struct platform_device *pdev)
s3c_gpio_cfgpin(EXYNOS4210_GPJ1(3), S3C_GPIO_INPUT);
s3c_gpio_setpull(EXYNOS4210_GPJ1(3), S3C_GPIO_PULL_DOWN);
+#if !defined(CONFIG_MACH_P8LTE)
/* CAM B port(b0011) : DATA[0-7] */
s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE1(0), 8, S3C_GPIO_SFN(3));
/* CAM B port(b0011) : PCLK, VSYNC, HREF, FIELD, CLKOUT */
s3c_gpio_cfgrange_nopull(EXYNOS4210_GPE0(0), 5, S3C_GPIO_SFN(3));
#endif
+#endif
}
int s3c_fimc_clk_on(struct platform_device *pdev, struct clk **clk)