Subject: Re: [PATCH v7 06/28] media: rockchip: rga: fix too small buffer size

From: Michael Tretter <[email-masked]>
Date: Thu, 21 May 2026 14:44:28 +0200

On Thu, 21 May 2026 00:44:11 +0200, Sven Püschel wrote:
> Fix the command buffer size being only a quarter of the actual size.
> The RGA_CMDBUF_SIZE macro was potentially intended to specify the length
> of the cmdbuf u32 array pointer. But as it's used to specify the size of
> the allocation, which is counted in bytes. Therefore adjust the macro
> size to bytes as it better matches the variable name and adjust it's
> users accordingly.
> 
> As the command buffer is relatively small, it probably didn't caused
> an issue due to being smaller than a single page.
> 
> Fixes: f7e7b48e6d79 ("[media] rockchip/rga: v4l2 m2m support")
> Reviewed-by: Nicolas Dufresne <[email-masked]>
> Signed-off-by: Sven Püschel <[email-masked]>
> 
> ---
> 
> Flagged by Sashiko:
> https://sashiko.dev/#/patchset/20260325-spu-rga3-v4-0-e90ec1c61354%40pengutronix.de?part=10
> ---
>  drivers/media/platform/rockchip/rga/rga-hw.c | 2 +-
>  drivers/media/platform/rockchip/rga/rga-hw.h | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/media/platform/rockchip/rga/rga-hw.c b/drivers/media/platform/rockchip/rga/rga-hw.c
> index 43ed742a16492..d1618bb247501 100644
> --- a/drivers/media/platform/rockchip/rga/rga-hw.c
> +++ b/drivers/media/platform/rockchip/rga/rga-hw.c
> @@ -414,7 +414,7 @@ static void rga_cmd_set(struct rga_ctx *ctx,
>  {
>  	struct rockchip_rga *rga = ctx->rga;
>  
> -	memset(rga->cmdbuf_virt, 0, RGA_CMDBUF_SIZE * 4);
> +	memset(rga->cmdbuf_virt, 0, RGA_CMDBUF_SIZE);

Maybe use rga->hw->cmdbuf_size instead of RGA_CMDBUF_SIZE to really be
in sync with the allocation.

Anyway:

Reviewed-by: Michael Tretter <[email-masked]>

>  
>  	rga_cmd_set_src_addr(ctx, src->dma_desc_pa);
>  	/*
> diff --git a/drivers/media/platform/rockchip/rga/rga-hw.h b/drivers/media/platform/rockchip/rga/rga-hw.h
> index cc6bd7f5b0300..2b8537a5fd0d7 100644
> --- a/drivers/media/platform/rockchip/rga/rga-hw.h
> +++ b/drivers/media/platform/rockchip/rga/rga-hw.h
> @@ -6,7 +6,7 @@
>  #ifndef __RGA_HW_H__
>  #define __RGA_HW_H__
>  
> -#define RGA_CMDBUF_SIZE 0x20
> +#define RGA_CMDBUF_SIZE 0x80
>  
>  /* Hardware limits */
>  #define MAX_WIDTH 8192
> 
> -- 
> 2.54.0
> 
>