Hi Hans, On Tue, Jun 28, 2022 at 02:05:15PM +0200, Hans Verkuil wrote: > This series adds support for dynamic array controls and for a > new v4l2_ctrl_modify_dimensions() function to modify the dimensions > of an array control by the driver. > > The dynamic array patches are unchanged and are already used in two > patch series (stateless HEVC uAPI and the dw100 driver), but they are > added here since the last 5 patches that add support for > v4l2_ctrl_modify_dimensions() build on those. > > The vivid driver is also extended with such controls to make it > possible to test this. > > Xavier, the v4l2_ctrl_modify_dimensions() are mostly identical to > the patches I mailed you before and that you added to v6 of dw100. > Just improved documentation and commit logs and a minor checkpatch > fix. For a v7 of your driver, please use this series. I've reviewed the whole series but 2/8 as I'm not familiar enough with the control framework implementation for that one. I think we also need a documentation update to indicate that drivers can modify control dimensions, and that this will reset the control value. It could be done in patch 6/8. > Hans Verkuil (8): > videodev2.h: add V4L2_CTRL_FLAG_DYNAMIC_ARRAY > v4l2-ctrls: add support for dynamically allocated arrays. > vivid: add dynamic array test control > v4l2-ctrls: allocate space for arrays > v4l2-ctrls: alloc arrays in ctrl_ref > v4l2-ctrls: add v4l2_ctrl_modify_dimensions > v4l2-ctrls: add change flag for when dimensions change > vivid: add pixel_array test control > > .../media/v4l/vidioc-dqevent.rst | 5 + > .../media/v4l/vidioc-queryctrl.rst | 8 + > .../media/videodev2.h.rst.exceptions | 2 + > drivers/media/test-drivers/vivid/vivid-core.h | 1 + > .../media/test-drivers/vivid/vivid-ctrls.c | 29 +++ > .../media/test-drivers/vivid/vivid-vid-cap.c | 4 + > drivers/media/v4l2-core/v4l2-ctrls-api.c | 139 ++++++++++--- > drivers/media/v4l2-core/v4l2-ctrls-core.c | 188 +++++++++++++++--- > drivers/media/v4l2-core/v4l2-ctrls-priv.h | 3 +- > drivers/media/v4l2-core/v4l2-ctrls-request.c | 13 +- > include/media/v4l2-ctrls.h | 90 ++++++++- > include/uapi/linux/videodev2.h | 2 + > 12 files changed, 413 insertions(+), 71 deletions(-) -- Regards, Laurent Pinchart