[02/11] media: exynos4-is: Request syscon only if ISP writeback is present

Message ID BN6PR04MB066006C199A43996C0502B62A3AE0@BN6PR04MB0660.namprd04.prod.outlook.com
State New
Headers show
Series
  • Untitled series #38907
Related show

Commit Message

Jonathan Bakker April 26, 2020, 2:26 a.m.
From: Tomasz Figa <tomasz.figa@gmail.com>

On FIMC variants which don't have writeback channel, there is no need to
access system registers. This patch makes the driver request sysreg
regmap conditionally depending on whether writeback is supported.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
Signed-off-by: Jonathan Bakker <xc-racer2@live.ca>
---
 drivers/media/platform/exynos4-is/fimc-core.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Comments

Tomasz Figa July 7, 2020, 5:34 p.m. | #1
On Sat, Apr 25, 2020 at 07:26:41PM -0700, Jonathan Bakker wrote:
> From: Tomasz Figa <tomasz.figa@gmail.com>

> 

> On FIMC variants which don't have writeback channel, there is no need to

> access system registers. This patch makes the driver request sysreg

> regmap conditionally depending on whether writeback is supported.

> 

> Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>

> Signed-off-by: Jonathan Bakker <xc-racer2@live.ca>

> ---

>  drivers/media/platform/exynos4-is/fimc-core.c | 8 +++++---

>  1 file changed, 5 insertions(+), 3 deletions(-)

> 


Reviewed-by: Tomasz Figa <tfiga@chromium.org>


Best regards,
Tomasz
Sylwester Nawrocki July 8, 2020, 2:47 p.m. | #2
On 26.04.2020 04:26, Jonathan Bakker wrote:
> From: Tomasz Figa <tomasz.figa@gmail.com>

> 

> On FIMC variants which don't have writeback channel, there is no need to

> access system registers. This patch makes the driver request sysreg

> regmap conditionally depending on whether writeback is supported.

> 

> Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>

> Signed-off-by: Jonathan Bakker <xc-racer2@live.ca>


Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

Patch

diff --git a/drivers/media/platform/exynos4-is/fimc-core.c b/drivers/media/platform/exynos4-is/fimc-core.c
index 2258f3bfc929..08d1f39a914c 100644
--- a/drivers/media/platform/exynos4-is/fimc-core.c
+++ b/drivers/media/platform/exynos4-is/fimc-core.c
@@ -954,9 +954,11 @@  static int fimc_probe(struct platform_device *pdev)
 	spin_lock_init(&fimc->slock);
 	mutex_init(&fimc->lock);
 
-	fimc->sysreg = fimc_get_sysreg_regmap(dev->of_node);
-	if (IS_ERR(fimc->sysreg))
-		return PTR_ERR(fimc->sysreg);
+	if (fimc->variant->has_isp_wb) {
+		fimc->sysreg = fimc_get_sysreg_regmap(dev->of_node);
+		if (IS_ERR(fimc->sysreg))
+			return PTR_ERR(fimc->sysreg);
+	}
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	fimc->regs = devm_ioremap_resource(dev, res);