summaryrefslogtreecommitdiff
path: root/drivers/media/platform/soc_camera/tegra_camera/vi2.c
diff options
context:
space:
mode:
authorBryan Wu <pengw@nvidia.com>2014-09-17 18:04:17 -0700
committerWinnie Hsu <whsu@nvidia.com>2015-01-07 18:05:29 -0800
commit373c23c7936c05f615d3db569198c10be3d9d4b2 (patch)
tree99fd916382f2bcf633b5209f331182ebf5bd26ef /drivers/media/platform/soc_camera/tegra_camera/vi2.c
parent2e8fe26468a7c4e9b41e5bbd28681664e1153238 (diff)
media: tegra_v4l2_camera: use port num to init clk
Change clks_init() internal API to use CSI port number to enable clks instead of using dev_id which is incorrect sometime, since vi.0 might also assigned to CSI_B/CSI_C port. Bug 1560636 Change-Id: I0e26308ec885e2e34fe8faa63fca404c911912c4 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/539002 Reviewed-by: Venkat Moganty <vmoganty@nvidia.com> (cherry picked from commit c66d8e5880589b0d95dba63d10daff53e47e8628) Reviewed-on: http://git-master/r/665995 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
Diffstat (limited to 'drivers/media/platform/soc_camera/tegra_camera/vi2.c')
-rw-r--r--drivers/media/platform/soc_camera/tegra_camera/vi2.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/media/platform/soc_camera/tegra_camera/vi2.c b/drivers/media/platform/soc_camera/tegra_camera/vi2.c
index 00b400799cdf..09a3a6173a9f 100644
--- a/drivers/media/platform/soc_camera/tegra_camera/vi2.c
+++ b/drivers/media/platform/soc_camera/tegra_camera/vi2.c
@@ -344,7 +344,7 @@ static struct tegra_camera_clk vi2_clks1[] = {
.use_devname = 1,
},
{
- .name = "vi_sensor",
+ .name = "vi_sensor2",
.freq = 24000000,
},
{
@@ -366,12 +366,12 @@ static struct tegra_camera_clk vi2_clks1[] = {
},
{
.name = "cilcd",
- .freq = 0,
+ .freq = 102000000,
.use_devname = 1,
},
{
.name = "cile",
- .freq = 0,
+ .freq = 102000000,
.use_devname = 1,
},
/* Always put "p11_d" at the end */
@@ -383,23 +383,24 @@ static struct tegra_camera_clk vi2_clks1[] = {
#define MAX_DEVID_LENGTH 16
-static int vi2_clks_init(struct tegra_camera_dev *cam)
+static int vi2_clks_init(struct tegra_camera_dev *cam, int port)
{
struct platform_device *pdev = cam->ndev;
struct tegra_camera_clk *clks;
int i;
- switch (pdev->id) {
- case 0:
+ switch (port) {
+ case TEGRA_CAMERA_PORT_CSI_A:
cam->num_clks = ARRAY_SIZE(vi2_clks0);
cam->clks = vi2_clks0;
break;
- case 1:
+ case TEGRA_CAMERA_PORT_CSI_B:
+ case TEGRA_CAMERA_PORT_CSI_C:
cam->num_clks = ARRAY_SIZE(vi2_clks1);
cam->clks = vi2_clks1;
break;
default:
- dev_err(&pdev->dev, "Wrong device ID %d\n", pdev->id);
+ dev_err(&pdev->dev, "Wrong port number %d\n", port);
return -ENODEV;
}