aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2014-04-02 10:21:56 -0400
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-04-23 09:17:03 -0400
commit4fc7878401f9980a5f1c24caae9b19adf61ea3f8 (patch)
tree72486acb4f135ec49edbed8c040b322c357264ad
parentce9c22443e77594531be84ba8d523f4148ba09fe (diff)
[media] v4l: vsp1: Remove unexisting rt clocks
The VSP1 has no rt clock. Remove them from the driver. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
-rw-r--r--drivers/media/platform/vsp1/vsp1.h1
-rw-r--r--drivers/media/platform/vsp1/vsp1_drv.c40
2 files changed, 5 insertions, 36 deletions
diff --git a/drivers/media/platform/vsp1/vsp1.h b/drivers/media/platform/vsp1/vsp1.h
index 0313210c6e9e..8626e9b956c2 100644
--- a/drivers/media/platform/vsp1/vsp1.h
+++ b/drivers/media/platform/vsp1/vsp1.h
@@ -45,7 +45,6 @@ struct vsp1_device {
45 45
46 void __iomem *mmio; 46 void __iomem *mmio;
47 struct clk *clock; 47 struct clk *clock;
48 struct clk *rt_clock;
49 48
50 struct mutex lock; 49 struct mutex lock;
51 int ref_count; 50 int ref_count;
diff --git a/drivers/media/platform/vsp1/vsp1_drv.c b/drivers/media/platform/vsp1/vsp1_drv.c
index 2f74f0e0ddf5..3cd2df5af90e 100644
--- a/drivers/media/platform/vsp1/vsp1_drv.c
+++ b/drivers/media/platform/vsp1/vsp1_drv.c
@@ -329,33 +329,6 @@ static int vsp1_device_init(struct vsp1_device *vsp1)
329 return 0; 329 return 0;
330} 330}
331 331
332static int vsp1_clocks_enable(struct vsp1_device *vsp1)
333{
334 int ret;
335
336 ret = clk_prepare_enable(vsp1->clock);
337 if (ret < 0)
338 return ret;
339
340 if (IS_ERR(vsp1->rt_clock))
341 return 0;
342
343 ret = clk_prepare_enable(vsp1->rt_clock);
344 if (ret < 0) {
345 clk_disable_unprepare(vsp1->clock);
346 return ret;
347 }
348
349 return 0;
350}
351
352static void vsp1_clocks_disable(struct vsp1_device *vsp1)
353{
354 if (!IS_ERR(vsp1->rt_clock))
355 clk_disable_unprepare(vsp1->rt_clock);
356 clk_disable_unprepare(vsp1->clock);
357}
358
359/* 332/*
360 * vsp1_device_get - Acquire the VSP1 device 333 * vsp1_device_get - Acquire the VSP1 device
361 * 334 *
@@ -373,7 +346,7 @@ struct vsp1_device *vsp1_device_get(struct vsp1_device *vsp1)
373 if (vsp1->ref_count > 0) 346 if (vsp1->ref_count > 0)
374 goto done; 347 goto done;
375 348
376 ret = vsp1_clocks_enable(vsp1); 349 ret = clk_prepare_enable(vsp1->clock);
377 if (ret < 0) { 350 if (ret < 0) {
378 __vsp1 = NULL; 351 __vsp1 = NULL;
379 goto done; 352 goto done;
@@ -381,7 +354,7 @@ struct vsp1_device *vsp1_device_get(struct vsp1_device *vsp1)
381 354
382 ret = vsp1_device_init(vsp1); 355 ret = vsp1_device_init(vsp1);
383 if (ret < 0) { 356 if (ret < 0) {
384 vsp1_clocks_disable(vsp1); 357 clk_disable_unprepare(vsp1->clock);
385 __vsp1 = NULL; 358 __vsp1 = NULL;
386 goto done; 359 goto done;
387 } 360 }
@@ -405,7 +378,7 @@ void vsp1_device_put(struct vsp1_device *vsp1)
405 mutex_lock(&vsp1->lock); 378 mutex_lock(&vsp1->lock);
406 379
407 if (--vsp1->ref_count == 0) 380 if (--vsp1->ref_count == 0)
408 vsp1_clocks_disable(vsp1); 381 clk_disable_unprepare(vsp1->clock);
409 382
410 mutex_unlock(&vsp1->lock); 383 mutex_unlock(&vsp1->lock);
411} 384}
@@ -424,7 +397,7 @@ static int vsp1_pm_suspend(struct device *dev)
424 if (vsp1->ref_count == 0) 397 if (vsp1->ref_count == 0)
425 return 0; 398 return 0;
426 399
427 vsp1_clocks_disable(vsp1); 400 clk_disable_unprepare(vsp1->clock);
428 return 0; 401 return 0;
429} 402}
430 403
@@ -437,7 +410,7 @@ static int vsp1_pm_resume(struct device *dev)
437 if (vsp1->ref_count) 410 if (vsp1->ref_count)
438 return 0; 411 return 0;
439 412
440 return vsp1_clocks_enable(vsp1); 413 return clk_prepare_enable(vsp1->clock);
441} 414}
442#endif 415#endif
443 416
@@ -511,9 +484,6 @@ static int vsp1_probe(struct platform_device *pdev)
511 return PTR_ERR(vsp1->clock); 484 return PTR_ERR(vsp1->clock);
512 } 485 }
513 486
514 /* The RT clock is optional */
515 vsp1->rt_clock = devm_clk_get(&pdev->dev, "rt");
516
517 irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); 487 irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
518 if (!irq) { 488 if (!irq) {
519 dev_err(&pdev->dev, "missing IRQ\n"); 489 dev_err(&pdev->dev, "missing IRQ\n");