mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
44 lines
1.3 KiB
Diff
44 lines
1.3 KiB
Diff
|
From 970208edb92b04eaa329c666e2e91717984c28b6 Mon Sep 17 00:00:00 2001
|
||
|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||
|
Date: Fri, 26 Jun 2020 18:11:49 +0100
|
||
|
Subject: [PATCH] media: i2c: imx290: Switch set_hmax to use
|
||
|
imx290_write_buffered_reg
|
||
|
|
||
|
imx290_set_hmax was using two independent writes to set up hmax,
|
||
|
when all other multi-register writes were using imx290_write_buffered_reg
|
||
|
which claims the group hold first.
|
||
|
|
||
|
Switch imx290_set_hmax to using imx290_write_buffered_reg too.
|
||
|
|
||
|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||
|
---
|
||
|
drivers/media/i2c/imx290.c | 15 ++++-----------
|
||
|
1 file changed, 4 insertions(+), 11 deletions(-)
|
||
|
|
||
|
--- a/drivers/media/i2c/imx290.c
|
||
|
+++ b/drivers/media/i2c/imx290.c
|
||
|
@@ -568,19 +568,12 @@ static int imx290_set_hmax(struct imx290
|
||
|
u32 hmax = val + imx290->current_mode->width;
|
||
|
int ret;
|
||
|
|
||
|
- ret = imx290_write_reg(imx290, IMX290_HMAX_LOW, (hmax & 0xff));
|
||
|
- if (ret) {
|
||
|
+ ret = imx290_write_buffered_reg(imx290, IMX290_HMAX_LOW, 2,
|
||
|
+ hmax);
|
||
|
+ if (ret)
|
||
|
dev_err(imx290->dev, "Error setting HMAX register\n");
|
||
|
- return ret;
|
||
|
- }
|
||
|
|
||
|
- ret = imx290_write_reg(imx290, IMX290_HMAX_HIGH, ((hmax >> 8) & 0xff));
|
||
|
- if (ret) {
|
||
|
- dev_err(imx290->dev, "Error setting HMAX register\n");
|
||
|
- return ret;
|
||
|
- }
|
||
|
-
|
||
|
- return 0;
|
||
|
+ return ret;
|
||
|
}
|
||
|
|
||
|
static int imx290_set_vmax(struct imx290 *imx290, u32 val)
|