From: Ricardo Ribalda Date: Thu, 7 May 2026 20:58:07 +0000 (+0000) Subject: media: i2c: mt9p031: Rewrite assignment to make smatch happy X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=508afd8060e83182e5c2f88385b77f598f6a3d0d;p=thirdparty%2Fkernel%2Flinux.git media: i2c: mt9p031: Rewrite assignment to make smatch happy The current code makes smatch a bit uncomfortable: drivers/media/i2c/mt9p031.c:799 mt9p031_s_ctrl() warn: assigning (-1952) to unsigned variable 'data' Probably because smatch is not clever enough (yet). Do a simple rewrite to make sure that smatch understands what we are doing here. Reviewed-by: Laurent Pinchart Signed-off-by: Ricardo Ribalda Signed-off-by: Hans Verkuil --- diff --git a/drivers/media/i2c/mt9p031.c b/drivers/media/i2c/mt9p031.c index ea5d43d925ff..8dc57eeba606 100644 --- a/drivers/media/i2c/mt9p031.c +++ b/drivers/media/i2c/mt9p031.c @@ -796,7 +796,8 @@ static int mt9p031_s_ctrl(struct v4l2_ctrl *ctrl) data = (1 << 6) | (ctrl->val >> 1); } else { ctrl->val &= ~7; - data = ((ctrl->val - 64) << 5) | (1 << 6) | 32; + data = ((ctrl->val - 64) >> 3) & 0x7f; + data = (data << 8) | (1 << 6) | 32; } return mt9p031_write(client, MT9P031_GLOBAL_GAIN, data);