diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/video/tegra_v4l2_camera.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/media/video/tegra_v4l2_camera.c b/drivers/media/video/tegra_v4l2_camera.c index 22e3f5b73cbb..990f6afe8b10 100644 --- a/drivers/media/video/tegra_v4l2_camera.c +++ b/drivers/media/video/tegra_v4l2_camera.c @@ -21,6 +21,8 @@ #include <linux/pm_runtime.h> #include <linux/nvhost.h> +#include <mach/iomap.h> + #include <media/soc_camera.h> #include <media/soc_mediabus.h> #include <media/videobuf2-dma-nvmap.h> @@ -936,6 +938,11 @@ static void tegra_camera_work(struct work_struct *work) 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); /* Turn on relevant clocks. */ @@ -945,6 +952,12 @@ static void tegra_camera_activate(struct tegra_camera_dev *pcdev) clk_enable(pcdev->clk_isp); clk_enable(pcdev->clk_csus); +#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); } |