From: Ondrej Jirman Date: Fri, 24 Jan 2020 18:25:59 +0100 Subject: [PATCH 158/465] media: ov5640: [Experiment] Try to disable denoising/sharpening Not sure how this works exactly. More tests are needed. Signed-off-by: Ondrej Jirman --- drivers/media/i2c/ov5640.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c index 624a3c0..2f6f97e 100644 --- a/drivers/media/i2c/ov5640.c +++ b/drivers/media/i2c/ov5640.c @@ -1772,6 +1772,7 @@ static int ov5640_set_mode(struct ov5640_dev *sensor) bool auto_exp = sensor->ctrls.auto_exp->val == V4L2_EXPOSURE_AUTO; unsigned long rate; int ret; + u8 tmp; dn_mode = mode->dn_mode; orig_dn_mode = orig_mode->dn_mode; @@ -1844,6 +1845,22 @@ static int ov5640_set_mode(struct ov5640_dev *sensor) if (ret < 0) return ret; + ret = ov5640_read_reg(sensor, 0x5308, &tmp); + if (ret) + return ret; + + ret = ov5640_write_reg(sensor, 0x5308, tmp | 0x10 | 0x40); + if (ret) + return ret; + + ret = ov5640_write_reg(sensor, 0x5306, 0); + if (ret) + return ret; + + ret = ov5640_write_reg(sensor, 0x5302, 0); + if (ret) + return ret; + sensor->pending_mode_change = false; sensor->last_mode = mode;