Re: [PATCH 3/9] media: hantro: Constify the control array

From: Ezequiel Garcia
Date: Fri Jul 05 2019 - 12:05:23 EST


On Wed, 2019-06-19 at 14:15 +0200, Boris Brezillon wrote:
> controls[] is not supposed to be modified at runtime, let's make it
> explicit by adding a const specifier.
>
> Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx>
> ---
> drivers/staging/media/hantro/hantro_drv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c
> index 28b0fed89dcb..db49d643ddb7 100644
> --- a/drivers/staging/media/hantro/hantro_drv.c
> +++ b/drivers/staging/media/hantro/hantro_drv.c
> @@ -264,7 +264,7 @@ static const struct v4l2_ctrl_ops hantro_ctrl_ops = {
> .s_ctrl = hantro_s_ctrl,
> };
>
> -static struct hantro_ctrl controls[] = {
> +static const struct hantro_ctrl controls[] = {
> {
> .id = V4L2_CID_JPEG_COMPRESSION_QUALITY,
> .codec = HANTRO_JPEG_ENCODER,

This patch here breaks the build:

CC [M] drivers/staging/media/hantro/hantro_drv.o
/home/zeta/repos/linux/media_tree/drivers/staging/media/hantro/hantro_drv.c: In function âhantro_ctrls_setupâ:
/home/zeta/repos/linux/media_tree/drivers/staging/media/hantro/hantro_drv.c:319:23: error: assignment of member âidâ in read-only object
controls[i].cfg.id = controls[i].id;
^
You can fix it by simply moving it after:

[PATCH 4/9] media: hantro: Simplify the controls creation logic

Regards,
Ezequiel