[PATCH 06/18] media: coda: Add reset device before getting interrupt
From: Sergey Khimich
Date: Fri Mar 14 2025 - 11:31:09 EST
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