[PATCH] drm/rockchip: avoid 64-bit division
Geert Uytterhoeven
geert at linux-m68k.org
Mon Nov 25 10:35:58 UTC 2024
Hi Maxime,
On Fri, Nov 22, 2024 at 10:15 AM Maxime Ripard <mripard at kernel.org> wrote:
> On Fri, Nov 22, 2024 at 09:36:16AM +0100, Geert Uytterhoeven wrote:
> > On Mon, Nov 4, 2024 at 6:30 PM Nathan Chancellor <nathan at kernel.org> wrote:
> > > On Fri, Oct 18, 2024 at 03:10:10PM +0000, Arnd Bergmann wrote:
> > > > From: Arnd Bergmann <arnd at arndb.de>
> > > >
> > > > Dividing a 64-bit integer prevents building this for 32-bit targets:
> > > >
> > > > ERROR: modpost: "__aeabi_uldivmod" [drivers/gpu/drm/rockchip/rockchipdrm.ko] undefined!
> > > >
> > > > As this function is not performance criticial, just Use the div_u64() helper.
> > > >
> > > > Fixes: 128a9bf8ace2 ("drm/rockchip: Add basic RK3588 HDMI output support")
> > > > Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> > >
> > > Reviewed-by: Nathan Chancellor <nathan at kernel.org>
> > >
> > > Can someone please pick this up? It is still broken in next-20241104...
> > >
> > > https://storage.tuxsuite.com/public/clangbuiltlinux/continuous-integration2/builds/2oNvJFRj8tkDieb6VfrMf4rh1Kn/build.log
> > >
> > > > ---
> > > > drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
> > > > index 9c796ee4c303..c8b362cc2b95 100644
> > > > --- a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
> > > > +++ b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
> > > > @@ -82,7 +82,7 @@ static void dw_hdmi_qp_rockchip_encoder_enable(struct drm_encoder *encoder)
> > > > * comment in rk_hdptx_phy_power_on() from
> > > > * drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
> > > > */
> > > > - phy_set_bus_width(hdmi->phy, rate / 100);
> > > > + phy_set_bus_width(hdmi->phy, div_u64(rate, 100));
> > > > }
> > > > }
> >
> > noreply at ellerman.id.au has just told me this build issue is now upstream:
> >
> > FAILED linus/m68k-allmodconfig/m68k-gcc8.1 Fri Nov 22, 05:34
> > http://kisskb.ellerman.id.au/kisskb/buildresult/15277242/
> >
> > Commit: Merge tag 'drm-next-2024-11-21' of
> > https://gitlab.freedesktop.org/drm/kernel
> > 28eb75e178d389d325f1666e422bc13bbbb9804c
> > Compiler: m68k-linux-gcc (GCC) 8.1.0 / GNU ld (GNU Binutils) 2.30
> >
> > ERROR: modpost: "__udivdi3"
> > [drivers/gpu/drm/rockchip/rockchipdrm.ko] undefined!
> >
> > Applying this patch fixes it, so
> > Acked-by: Geert Uytterhoeven <geert at linux-m68k.org>
> >
> > Do we really need +5 weeks to apply a fix for a reported build issue?
>
> Do we really need that kind of comments?
>
> It was applied already, I made sure it's part of the next PR we send to
> Linus. And it should be in linux-next tomorrow.
Thank you, I can confirm it is now commit 818956c76517e127
("drm/rockchip: avoid 64-bit division") in drm-misc/for-linux-next
and next-20241125.
Interestingly, the commit description contains:
(cherry picked from commit 4b64b4a81fcd51f570c046cf904aef19ec756d45)
which is not in any tree on git.kernel.org, but the github collective
does know about it:
https://github.com/torvalds/linux/commit/4b64b4a81fcd51f570c046cf904aef19ec756d45
Probably you want to drop that line.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at 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
More information about the dri-devel
mailing list