[PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()

Thomas Zimmermann posted 25 patches 2 months, 1 week ago
[PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
Posted by Thomas Zimmermann 2 months, 1 week ago
Call drm_mode_size_dumb() to compute dumb-buffer scanline pitch and
buffer size. Align the pitch according to hardware requirements.

v5:
- include dumb-buffers header for drm_mode_size_dumb() (kernel test robot)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Biju Das <biju.das.jz@bp.renesas.com>
---
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
index 87f171145a23..5fcade2b6054 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_kms.c
@@ -11,6 +11,7 @@
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc.h>
 #include <drm/drm_device.h>
+#include <drm/drm_dumb_buffers.h>
 #include <drm/drm_framebuffer.h>
 #include <drm/drm_gem_dma_helper.h>
 #include <drm/drm_gem_framebuffer_helper.h>
@@ -181,10 +182,11 @@ const struct rzg2l_du_format_info *rzg2l_du_format_info(u32 fourcc)
 int rzg2l_du_dumb_create(struct drm_file *file, struct drm_device *dev,
 			 struct drm_mode_create_dumb *args)
 {
-	unsigned int min_pitch = DIV_ROUND_UP(args->width * args->bpp, 8);
-	unsigned int align = 16 * args->bpp / 8;
+	int ret;
 
-	args->pitch = roundup(min_pitch, align);
+	ret = drm_mode_size_dumb(dev, args, 16 * args->bpp / 8, 0);
+	if (ret)
+		return ret;
 
 	return drm_gem_dma_dumb_create_internal(file, dev, args);
 }
-- 
2.50.1
RE: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
Posted by Biju Das 2 months, 1 week ago
Hi Thomas Zimmermann,

Thanks for the patch.

> -----Original Message-----
> From: Thomas Zimmermann <tzimmermann@suse.de>
> Sent: 21 August 2025 09:17
> Subject: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
> 
> Call drm_mode_size_dumb() to compute dumb-buffer scanline pitch and buffer size. Align the pitch
> according to hardware requirements.
> 
> v5:
> - include dumb-buffers header for drm_mode_size_dumb() (kernel test robot)
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Biju Das <biju.das.jz@bp.renesas.com>

Tested-by: Biju Das <biju.das.jz@bp.renesas.com>

Cheers,
Biju
Re: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
Posted by Thomas Zimmermann 2 months, 1 week ago
Hi

Am 21.08.25 um 13:28 schrieb Biju Das:
> Hi Thomas Zimmermann,
>
> Thanks for the patch.
>
>> -----Original Message-----
>> From: Thomas Zimmermann <tzimmermann@suse.de>
>> Sent: 21 August 2025 09:17
>> Subject: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
>>
>> Call drm_mode_size_dumb() to compute dumb-buffer scanline pitch and buffer size. Align the pitch
>> according to hardware requirements.
>>
>> v5:
>> - include dumb-buffers header for drm_mode_size_dumb() (kernel test robot)
>>
>> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
>> Cc: Biju Das <biju.das.jz@bp.renesas.com>
> Tested-by: Biju Das <biju.das.jz@bp.renesas.com>

Thanks for testing. Could you also review the patch, please?

Best regards
Thomas

>
> Cheers,
> Biju

-- 
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
RE: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
Posted by Biju Das 2 months, 1 week ago
Hi Thomas,

> -----Original Message-----
> From: Thomas Zimmermann <tzimmermann@suse.de>
> Sent: 21 August 2025 12:56
> Subject: Re: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer sizes with drm_mode_size_dumb()
> 
> Hi
> 
> Am 21.08.25 um 13:28 schrieb Biju Das:
> > Hi Thomas Zimmermann,
> >
> > Thanks for the patch.
> >
> >> -----Original Message-----
> >> From: Thomas Zimmermann <tzimmermann@suse.de>
> >> Sent: 21 August 2025 09:17
> >> Subject: [PATCH v6 18/25] drm/renesas/rz-du: Compute dumb-buffer
> >> sizes with drm_mode_size_dumb()
> >>
> >> Call drm_mode_size_dumb() to compute dumb-buffer scanline pitch and
> >> buffer size. Align the pitch according to hardware requirements.
> >>
> >> v5:
> >> - include dumb-buffers header for drm_mode_size_dumb() (kernel test
> >> robot)
> >>
> >> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> >> Cc: Biju Das <biju.das.jz@bp.renesas.com>
> > Tested-by: Biju Das <biju.das.jz@bp.renesas.com>
> 
> Thanks for testing. Could you also review the patch, please?

Sure, will do.

Cheers,
Biju