]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/amd/display: Fix compilation warnings on i386
authorMikita Lipski <mikita.lipski@amd.com>
Fri, 10 Jan 2020 19:31:52 +0000 (14:31 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 10 Jan 2020 21:34:20 +0000 (16:34 -0500)
[why]
Compilation error "undefined reference to `__udivdi3'" was
thrown on i386 architecture.

[how]
Use div_u64 for unsigned long division instead of a divide operator.

Reported-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Mikita Lipski <mikita.lipski@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c

index 5a476028ee37092b363a4d4714ad09d77123e847..52fb207393ef73d94f13c94435ba98c607caefdd 100644 (file)
@@ -533,7 +533,7 @@ static int kbps_to_peak_pbn(int kbps)
        u64 peak_kbps = kbps;
 
        peak_kbps *= 1006;
-       peak_kbps /= 1000;
+       peak_kbps = div_u64(peak_kbps, 1000);
        return (int) DIV_ROUND_UP(peak_kbps * 64, (54 * 8 * 1000));
 }
 
@@ -565,7 +565,7 @@ static int bpp_x16_from_pbn(struct dsc_mst_fairness_params param, int pbn)
        struct dc_dsc_config dsc_config;
        u64 kbps;
 
-       kbps = (u64)pbn * 994 * 8 * 54 / 64;
+       kbps = div_u64((u64)pbn * 994 * 8 * 54, 64);
        dc_dsc_compute_config(
                        param.sink->ctx->dc->res_pool->dscs[0],
                        &param.sink->sink_dsc_caps.dsc_dec_caps,