ov13858 contained a 64-bit division. Use do_div() for calculating it. Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> --- drivers/media/i2c/ov13858.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/media/i2c/ov13858.c b/drivers/media/i2c/ov13858.c index 2bd659976c30..5030f4ebe056 100644 --- a/drivers/media/i2c/ov13858.c +++ b/drivers/media/i2c/ov13858.c @@ -951,7 +951,12 @@ static const char * const ov13858_test_pattern_menu[] = { * pixel_rate = link_freq * data-rate * nr_of_lanes / bits_per_sample * data rate => double data rate; number of lanes => 4; bits per pixel => 10 */ -#define LINK_FREQ_TO_PIXEL_RATE(f) (((f) * 2 * 4) / 10) +#define LINK_FREQ_TO_PIXEL_RATE(f) \ + ({ \ + u64 __link_freq_to_pixel_rate_tmp = (f) * 2 * 4; \ + do_div(__link_freq_to_pixel_rate_tmp, 10); \ + __link_freq_to_pixel_rate_tmp; \ + }) /* Menu items for LINK_FREQ V4L2 control */ static const s64 link_freq_menu_items[OV13858_NUM_OF_LINK_FREQS] = { -- 2.11.0