diff options
Diffstat (limited to 'drivers/media/platform/soc_camera/tegra_camera/vi2.c')
-rw-r--r-- | drivers/media/platform/soc_camera/tegra_camera/vi2.c | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/drivers/media/platform/soc_camera/tegra_camera/vi2.c b/drivers/media/platform/soc_camera/tegra_camera/vi2.c index bf69682c85c8..f58c03bff8a5 100644 --- a/drivers/media/platform/soc_camera/tegra_camera/vi2.c +++ b/drivers/media/platform/soc_camera/tegra_camera/vi2.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013-2014, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -29,6 +29,9 @@ #define TEGRA_SYNCPT_CSI_WAIT_TIMEOUT 200 +#define TEGRA_VI_SYNCPT_CSI_A NVSYNCPT_VI_0_3 +#define TEGRA_VI_SYNCPT_CSI_B NVSYNCPT_VI_1_3 + #define TEGRA_VI_CFG_VI_INCR_SYNCPT 0x000 #define TEGRA_VI_CFG_VI_INCR_SYNCPT_CNTRL 0x004 #define TEGRA_VI_CFG_VI_INCR_SYNCPT_ERROR 0x008 @@ -435,27 +438,24 @@ static void vi2_clks_disable(struct tegra_camera_dev *cam) } } -static void vi2_init_syncpts(struct tegra_camera_dev *cam) -{ - cam->syncpt_id_csi_a = nvhost_get_syncpt_client_managed("vi_csi_A"); - - cam->syncpt_id_csi_b = nvhost_get_syncpt_client_managed("vi_csi_B"); -} - static void vi2_save_syncpts(struct tegra_camera_dev *cam) { cam->syncpt_csi_a = - nvhost_syncpt_read_ext(cam->ndev, cam->syncpt_id_csi_a); + nvhost_syncpt_read_ext(cam->ndev, + TEGRA_VI_SYNCPT_CSI_A); cam->syncpt_csi_b = - nvhost_syncpt_read_ext(cam->ndev, cam->syncpt_id_csi_b); + nvhost_syncpt_read_ext(cam->ndev, + TEGRA_VI_SYNCPT_CSI_B); } static void vi2_incr_syncpts(struct tegra_camera_dev *cam) { - nvhost_syncpt_cpu_incr_ext(cam->ndev, cam->syncpt_id_csi_a); + nvhost_syncpt_cpu_incr_ext(cam->ndev, + TEGRA_VI_SYNCPT_CSI_A); - nvhost_syncpt_cpu_incr_ext(cam->ndev, cam->syncpt_id_csi_b); + nvhost_syncpt_cpu_incr_ext(cam->ndev, + TEGRA_VI_SYNCPT_CSI_B); } static void vi2_capture_clean(struct tegra_camera_dev *cam) @@ -493,7 +493,7 @@ static int vi2_capture_setup_csi_0(struct tegra_camera_dev *cam, /* VI_MWA_REQ_DONE */ TC_VI_REG_WT(cam, TEGRA_VI_CFG_VI_INCR_SYNCPT, - (0x4 << 8) | cam->syncpt_id_csi_a); + (0x4 << 8) | TEGRA_VI_SYNCPT_CSI_A); if (cam->tpg_mode) { TC_VI_REG_WT(cam, TEGRA_CSI_PATTERN_GENERATOR_CTRL_A, @@ -546,7 +546,7 @@ static int vi2_capture_setup_csi_1(struct tegra_camera_dev *cam, /* VI_MWB_REQ_DONE */ TC_VI_REG_WT(cam, TEGRA_VI_CFG_VI_INCR_SYNCPT, - (0x5 << 8) | cam->syncpt_id_csi_b); + (0x5 << 8) | TEGRA_VI_SYNCPT_CSI_B); if (cam->tpg_mode) { TC_VI_REG_WT(cam, TEGRA_CSI_PATTERN_GENERATOR_CTRL_B, @@ -717,7 +717,7 @@ static int vi2_capture_start(struct tegra_camera_dev *cam, 0x0000f005); TC_VI_REG_WT(cam, TEGRA_VI_CSI_0_SINGLE_SHOT, 0x1); err = nvhost_syncpt_wait_timeout_ext(cam->ndev, - cam->syncpt_id_csi_a, + TEGRA_VI_SYNCPT_CSI_A, cam->syncpt_csi_a, TEGRA_SYNCPT_CSI_WAIT_TIMEOUT, NULL, @@ -728,7 +728,7 @@ static int vi2_capture_start(struct tegra_camera_dev *cam, 0x0000f005); TC_VI_REG_WT(cam, TEGRA_VI_CSI_1_SINGLE_SHOT, 0x1); err = nvhost_syncpt_wait_timeout_ext(cam->ndev, - cam->syncpt_id_csi_b, + TEGRA_VI_SYNCPT_CSI_B, cam->syncpt_csi_b, TEGRA_SYNCPT_CSI_WAIT_TIMEOUT, NULL, @@ -804,7 +804,6 @@ struct tegra_camera_ops vi2_ops = { .activate = vi2_sw_reset, - .init_syncpts = vi2_init_syncpts, .save_syncpts = vi2_save_syncpts, .incr_syncpts = vi2_incr_syncpts, |