summaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2012-10-10 00:28:00 +0200
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-10-10 00:28:00 +0200
commitd6d022e7382343b57184c83f5fea0532be240b98 (patch)
tree3141512d6438cb20d3494f3b14b1ce93d70d45a7 /drivers/media
parent[media] dvb: LNA implementation changes (diff)
downloadlinux-d6d022e7382343b57184c83f5fea0532be240b98.tar.xz
linux-d6d022e7382343b57184c83f5fea0532be240b98.zip
Revert "[media] omap3isp: Replace cpu_is_omap3630() with ISP revision check"
Reverted, as requested by Laurent: I don't consider it as being ready yet, as Sakari pointed out we need to investigate whether the right fix shouldn't be at the OMAP3 clocks level instead. This reverts commit 947c48086623d9ca2207dd0434bd58458af4ba86. Requested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/platform/omap3isp/isp.c25
1 files changed, 9 insertions, 16 deletions
diff --git a/drivers/media/platform/omap3isp/isp.c b/drivers/media/platform/omap3isp/isp.c
index 6034dca63404..d7aa513dcc8d 100644
--- a/drivers/media/platform/omap3isp/isp.c
+++ b/drivers/media/platform/omap3isp/isp.c
@@ -1345,7 +1345,10 @@ static int isp_enable_clocks(struct isp_device *isp)
* has to be twice of what is set on OMAP3430 to get
* the required value for cam_mclk
*/
- divisor = isp->revision == ISP_REVISION_15_0 ? 1 : 2;
+ if (cpu_is_omap3630())
+ divisor = 1;
+ else
+ divisor = 2;
r = clk_enable(isp->clock[ISP_CLK_CAM_ICK]);
if (r) {
@@ -2090,11 +2093,7 @@ static int __devinit isp_probe(struct platform_device *pdev)
isp->isp_csiphy1.vdd = regulator_get(&pdev->dev, "VDD_CSIPHY1");
isp->isp_csiphy2.vdd = regulator_get(&pdev->dev, "VDD_CSIPHY2");
- /* Clocks
- *
- * The ISP clock tree is revision-dependent. We thus need to enable ICLK
- * manually to read the revision before calling __omap3isp_get().
- */
+ /* Clocks */
ret = isp_map_mem_resource(pdev, isp, OMAP3_ISP_IOMEM_MAIN);
if (ret < 0)
goto error;
@@ -2103,16 +2102,6 @@ static int __devinit isp_probe(struct platform_device *pdev)
if (ret < 0)
goto error;
- ret = clk_enable(isp->clock[ISP_CLK_CAM_ICK]);
- if (ret < 0)
- goto error;
-
- isp->revision = isp_reg_readl(isp, OMAP3_ISP_IOMEM_MAIN, ISP_REVISION);
- dev_info(isp->dev, "Revision %d.%d found\n",
- (isp->revision & 0xf0) >> 4, isp->revision & 0x0f);
-
- clk_disable(isp->clock[ISP_CLK_CAM_ICK]);
-
if (__omap3isp_get(isp, false) == NULL) {
ret = -ENODEV;
goto error;
@@ -2123,6 +2112,10 @@ static int __devinit isp_probe(struct platform_device *pdev)
goto error_isp;
/* Memory resources */
+ isp->revision = isp_reg_readl(isp, OMAP3_ISP_IOMEM_MAIN, ISP_REVISION);
+ dev_info(isp->dev, "Revision %d.%d found\n",
+ (isp->revision & 0xf0) >> 4, isp->revision & 0x0f);
+
for (m = 0; m < ARRAY_SIZE(isp_res_maps); m++)
if (isp->revision == isp_res_maps[m].isp_rev)
break;