[PATCH v2 21/26] media: i2c: st-mipid02: Use the correct div function
Sakari Ailus
sakari.ailus at linux.intel.com
Wed Apr 24 11:22:13 PDT 2024
Hi Ricardo,
On Fri, Apr 19, 2024 at 09:48:07AM +0000, Ricardo Ribalda wrote:
> link_freq does not fit in 32 bits.
>
> Found by cocci:
> drivers/media/i2c/st-mipid02.c:329:1-7: WARNING: do_div() does a 64-by-32 division, please consider using div64_s64 instead.
>
> Reviewed-by: Benjamin Mugnier <benjamin.mugnier at foss.st.com>
> Signed-off-by: Ricardo Ribalda <ribalda at chromium.org>
> ---
> drivers/media/i2c/st-mipid02.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/i2c/st-mipid02.c b/drivers/media/i2c/st-mipid02.c
> index f250640729ca..93a40bfda1af 100644
> --- a/drivers/media/i2c/st-mipid02.c
> +++ b/drivers/media/i2c/st-mipid02.c
> @@ -326,7 +326,7 @@ static int mipid02_configure_from_rx_speed(struct mipid02_dev *bridge,
> }
>
> dev_dbg(&client->dev, "detect link_freq = %lld Hz", link_freq);
> - do_div(ui_4, link_freq);
> + ui_4 = div64_s64(ui_4, link_freq);
These are positive numbers and ui_4 is unsigned. I'd use div64_u64()
instead. With that,
Reviewed-by: Sakari Ailus <sakari.ailus at linux.intel.com>
> bridge->r.clk_lane_reg1 |= ui_4 << 2;
>
> return 0;
>
--
Regards,
Sakari Ailus
More information about the Linux-mediatek
mailing list