[PATCH 06/18] media: coda: Add reset device before getting interrupt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Vladimir Yakovlev <vovchkir@xxxxxxxxx>

Get access to the reset and reset the Coda HW before getting
interrupt because sometimes after hot boot(reboot) irq can remain
from previous session.

Co-developed-by: Sergey Khimich <serghox@xxxxxxxxx>
Signed-off-by: Sergey Khimich <serghox@xxxxxxxxx>
Signed-off-by: Vladimir Yakovlev <vovchkir@xxxxxxxxx>
---
 .../platform/chips-media/coda/coda-common.c      | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/drivers/media/platform/chips-media/coda/coda-common.c b/drivers/media/platform/chips-media/coda/coda-common.c
index b240091cdc9d..33c7e8398f31 100644
--- a/drivers/media/platform/chips-media/coda/coda-common.c
+++ b/drivers/media/platform/chips-media/coda/coda-common.c
@@ -3177,6 +3177,15 @@ static int coda_probe(struct platform_device *pdev)
 	if (IS_ERR(dev->regs_base))
 		return PTR_ERR(dev->regs_base);
 
+	dev->rstc = devm_reset_control_array_get_optional_exclusive(&pdev->dev);
+	if (IS_ERR(dev->rstc)) {
+		ret = PTR_ERR(dev->rstc);
+		dev_err(&pdev->dev, "failed get reset control: %d\n", ret);
+		return ret;
+	}
+
+	reset_control_reset(dev->rstc);
+
 	/* IRQ */
 	irq = platform_get_irq_byname(pdev, "bit");
 	if (irq < 0)
@@ -3209,13 +3218,6 @@ static int coda_probe(struct platform_device *pdev)
 		}
 	}
 
-	dev->rstc = devm_reset_control_array_get_optional_exclusive(&pdev->dev);
-	if (IS_ERR(dev->rstc)) {
-		ret = PTR_ERR(dev->rstc);
-		dev_err(&pdev->dev, "failed get reset control: %d\n", ret);
-		return ret;
-	}
-
 	/* Get IRAM pool from device tree */
 	pool = of_gen_pool_get(np, "iram", 0);
 	if (!pool) {
-- 
2.30.2





[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux