Hi Maxime,

Thanks for your patch!

On Mon, Mar 4, 2024 at 10:12 AM Maxime Ripard <mrip...@kernel.org> wrote:
> Commit 358e76fd613a ("drm/sun4i: hdmi: Consolidate atomic_check and
> mode_valid") changed the clock rate from an unsigned long to an unsigned
> long long resulting in a a 64-bit division that might not be supported
> on all platforms.

Why was this changed to unsigned long long?
Can a valid pixel clock really not fit in 32-bit?

> The resulted in compilation being broken at least for m68k, xtensa and
> some arm configurations, at least.
>
> Fixes: 358e76fd613a ("drm/sun4i: hdmi: Consolidate atomic_check and 
> mode_valid")
> Reported-by: Geert Uytterhoeven <ge...@linux-m68k.org>
> Reported-by: Naresh Kamboju <naresh.kamb...@linaro.org>
> Closes: 
> https://lore.kernel.org/r/CA+G9fYvG9KE15PGNoLu+SBVyShe+u5HBLQ81+kK9Zop6u=y...@mail.gmail.com/
> Reported-by: kernel test robot <l...@intel.com>
> Closes: 
> https://lore.kernel.org/oe-kbuild-all/202403011839.klixh4wc-...@intel.com/
> Signed-off-by: Maxime Ripard <mrip...@kernel.org>

> --- a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c
> @@ -163,11 +163,11 @@ static enum drm_mode_status
>  sun4i_hdmi_connector_clock_valid(const struct drm_connector *connector,
>                                  const struct drm_display_mode *mode,
>                                  unsigned long long clock)
>  {
>         const struct sun4i_hdmi *hdmi = 
> drm_connector_to_sun4i_hdmi(connector);
> -       unsigned long diff = clock / 200; /* +-0.5% allowed by HDMI spec */
> +       unsigned long diff = div_u64(clock, 200); /* +-0.5% allowed by HDMI 
> spec */

I'd rather see clock changed back to unsigned long.

>         long rounded_rate;
>
>         if (mode->flags & DRM_MODE_FLAG_DBLCLK)
>                 return MODE_BAD;
>

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

Reply via email to