On Mon, Jun 20, 2022 at 07:55:16PM +0200, Jernej Skrabec wrote: > Now that controls can be dynamic arrays, we need to know how many > elements are in such array. Add a helper for that. > > Signed-off-by: Jernej Skrabec <jernej.skrabec@xxxxxxxxx> Reviewed-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx> > --- > drivers/staging/media/sunxi/cedrus/cedrus.c | 11 +++++++++++ > drivers/staging/media/sunxi/cedrus/cedrus.h | 1 + > 2 files changed, 12 insertions(+) > > diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.c b/drivers/staging/media/sunxi/cedrus/cedrus.c > index 99c87319d2b4..b855e608885c 100644 > --- a/drivers/staging/media/sunxi/cedrus/cedrus.c > +++ b/drivers/staging/media/sunxi/cedrus/cedrus.c > @@ -232,6 +232,17 @@ void *cedrus_find_control_data(struct cedrus_ctx *ctx, u32 id) > return NULL; > } > > +u32 cedrus_get_num_of_controls(struct cedrus_ctx *ctx, u32 id) > +{ > + unsigned int i; > + > + for (i = 0; ctx->ctrls[i]; i++) > + if (ctx->ctrls[i]->id == id) > + return ctx->ctrls[i]->elems; > + > + return 0; > +} > + > static int cedrus_init_ctrls(struct cedrus_dev *dev, struct cedrus_ctx *ctx) > { > struct v4l2_ctrl_handler *hdl = &ctx->hdl; > diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.h b/drivers/staging/media/sunxi/cedrus/cedrus.h > index d2b697a9ded2..15a1bdbf6a1f 100644 > --- a/drivers/staging/media/sunxi/cedrus/cedrus.h > +++ b/drivers/staging/media/sunxi/cedrus/cedrus.h > @@ -261,5 +261,6 @@ vb2_to_cedrus_buffer(const struct vb2_buffer *p) > } > > void *cedrus_find_control_data(struct cedrus_ctx *ctx, u32 id); > +u32 cedrus_get_num_of_controls(struct cedrus_ctx *ctx, u32 id); > > #endif > -- > 2.36.1 >