OSDN Git Service

drm/sun4i: Move rate variables to long long
authorMaxime Ripard <maxime.ripard@bootlin.com>
Tue, 26 Feb 2019 14:25:48 +0000 (15:25 +0100)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Thu, 7 Mar 2019 13:46:44 +0000 (14:46 +0100)
Our clock rate variables are getting pretty close to the LONG_MAX / ULONG_MAX
limit, especially since we will start doing arithmetic on it. Move those
types to unsigned long long to be sure we don't overflow their type.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Vasily Khoruzhick <anarsoul@gmail.com> # tested on pinebook
Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/022c3b850413edd6afbca20062f100971de2f5af.1551191081.git-series.maxime.ripard@bootlin.com
drivers/gpu/drm/sun4i/sun4i_rgb.c

index fb32cce..8df2c17 100644 (file)
@@ -60,8 +60,8 @@ static enum drm_mode_status sun4i_rgb_mode_valid(struct drm_encoder *crtc,
        struct sun4i_tcon *tcon = rgb->tcon;
        u32 hsync = mode->hsync_end - mode->hsync_start;
        u32 vsync = mode->vsync_end - mode->vsync_start;
-       unsigned long rate = mode->clock * 1000;
-       long rounded_rate;
+       unsigned long long rate = mode->clock * 1000;
+       unsigned long long rounded_rate;
 
        DRM_DEBUG_DRIVER("Validating modes...\n");