drm/imx/dcss: Fix 64bit divisions
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 3 Oct 2024 11:18:47 +0000 (14:18 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 25 Oct 2024 07:23:40 +0000 (10:23 +0300)
Use the appropriate 64bit division helpers to make the code
build on 32bit architectures.

Cc: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241003111851.10453-7-ville.syrjala@linux.intel.com
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
drivers/gpu/drm/imx/dcss/dcss-scaler.c

index 825728c..32c3f46 100644 (file)
@@ -136,7 +136,7 @@ static int div_q(int A, int B)
        else
                temp -= B / 2;
 
-       result = (int)(temp / B);
+       result = div_s64(temp, B);
        return result;
 }
 
@@ -239,7 +239,7 @@ static void dcss_scaler_gaussian_filter(int fc_q, bool use_5_taps,
                        ll_temp = coef[phase][i];
                        ll_temp <<= PSC_COEFF_PRECISION;
                        ll_temp += sum >> 1;
-                       ll_temp /= sum;
+                       ll_temp = div_s64(ll_temp, sum);
                        coef[phase][i] = (int)ll_temp;
                }
        }