summaryrefslogtreecommitdiff
path: root/drivers/media/platform/soc_camera/tegra_camera/vi2.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/platform/soc_camera/tegra_camera/vi2.c')
-rw-r--r--drivers/media/platform/soc_camera/tegra_camera/vi2.c33
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,