4.9-stable review patch. If anyone has any objections, please let me know.
------------------ From: Philipp Zabel <p.za...@pengutronix.de> commit f2c61f98e0b5f8b53b8fb860e5dcdd661bde7d0b upstream. The below mentioned fix contains a small but severe bug, fix it to make the driver work again. Fixes: 3538aa6ecfb2 ("[media] tc358743: fix register i2c_rd/wr functions") Cc: Hans Verkuil <hans.verk...@cisco.com> Cc: Mauro Carvalho Chehab <mche...@s-opensource.com> Signed-off-by: Philipp Zabel <p.za...@pengutronix.de> Acked-by: Arnd Bergmann <a...@arndb.de> Signed-off-by: Hans Verkuil <hansv...@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mche...@s-opensource.com> Cc: Ben Hutchings <ben.hutchi...@codethink.co.uk> Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- drivers/media/i2c/tc358743.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/media/i2c/tc358743.c +++ b/drivers/media/i2c/tc358743.c @@ -222,7 +222,7 @@ static void i2c_wr8(struct v4l2_subdev * static void i2c_wr8_and_or(struct v4l2_subdev *sd, u16 reg, u8 mask, u8 val) { - i2c_wrreg(sd, reg, (i2c_rdreg(sd, reg, 2) & mask) | val, 2); + i2c_wrreg(sd, reg, (i2c_rdreg(sd, reg, 1) & mask) | val, 1); } static u16 i2c_rd16(struct v4l2_subdev *sd, u16 reg)