diff options
author | Wojciech Bieganski <wbieganski@antmicro.com> | 2014-05-19 14:09:12 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2014-07-08 14:37:59 +0200 |
commit | 8394112f246f808f9ff2961c7b19e2f48ba1df81 (patch) | |
tree | 2c4e421d06b5287a68419131ac4376dd35145296 | |
parent | c016ea36e70158ad2f04f06b30ffd2eec0a44870 (diff) |
media: vi driver on Colibri T20 is working again
This commit resolves an issue of non-working vi camera driver
on Colibri T20 occured after a l4t-r16-r4 merge.
-rw-r--r-- | arch/arm/mach-tegra/board-colibri_t20-power.c | 1 | ||||
-rw-r--r-- | drivers/media/video/tegra_v4l2_camera.c | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-colibri_t20-power.c b/arch/arm/mach-tegra/board-colibri_t20-power.c index fb6e8e8e1bf3..ca1f5e4a2f95 100644 --- a/arch/arm/mach-tegra/board-colibri_t20-power.c +++ b/arch/arm/mach-tegra/board-colibri_t20-power.c @@ -53,6 +53,7 @@ static struct regulator_consumer_supply tps658621_sm2_supply[] = { /* unused */ static struct regulator_consumer_supply tps658621_ldo0_supply[] = { REGULATOR_SUPPLY("vdd_ldo0", NULL), + REGULATOR_SUPPLY("vcsi", NULL), }; /* AVDD_PLL_1.1V and +3.3V_ENABLE_N switching via FET: AVDD_AUDIO_S and +3.3V: diff --git a/drivers/media/video/tegra_v4l2_camera.c b/drivers/media/video/tegra_v4l2_camera.c index f4e33817241a..4272b34a3d56 100644 --- a/drivers/media/video/tegra_v4l2_camera.c +++ b/drivers/media/video/tegra_v4l2_camera.c @@ -1069,6 +1069,11 @@ static int tegra_camera_capture_stop(struct tegra_camera_dev *pcdev, int port) static void tegra_camera_activate(struct tegra_camera_dev *pcdev) { +#ifdef CONFIG_ARCH_TEGRA_2x_SOC + u32 val; + void __iomem *apb_misc; +#endif + nvhost_module_busy_ext(pcdev->ndev); /* Enable external power */ @@ -1090,6 +1095,12 @@ static void tegra_camera_activate(struct tegra_camera_dev *pcdev) clk_set_rate(pcdev->clk_sclk, 375000000); clk_enable(pcdev->clk_emc); +#ifdef CONFIG_ARCH_TEGRA_2x_SOC + apb_misc = IO_ADDRESS(TEGRA_APB_MISC_BASE); + val = readl(apb_misc + 0x42c); + writel(val | 0x1, apb_misc + 0x42c); +#endif + /* Save current syncpt values. */ tegra_camera_save_syncpts(pcdev); } |