On 18/02/2022 11:54, Benjamin Gaignard wrote: > > Le 18/02/2022 à 10:59, Hans Verkuil a écrit : >> Hi Benjamin, >> >> On 15/02/2022 12:00, Benjamin Gaignard wrote: >>> This series aims to make HEVC uapi stable and usable for hardware >>> decoder. HEVC uapi is used by 2 mainlined drivers (Cedrus and Hantro) >>> and 2 out of the tree drivers (rkvdec and RPI). >>> >>> The 3 first patches are from Hans to implement v4l2 dynamic control >>> feature which is need by patch 7 for V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET >>> definition. >>> >>> Patch 4 move the existing uapi to stable, including definitions renaming >>> and CID number change to fit with v4l2 naming. >>> >>> Patches 5 and 7 add fields needed for rkvdec and RPI decoders. >>> >>> Patches 6 is cleaning up the uapi of useless field. >>> Patches 8 change one field description and name to define offset by >>> bytes rather than by bits >> I have some housekeeping questions: >> >> I have several older HEVC-related patches from you, which of those are still >> valid? >> >> "[v4,0/9] Additional features for Hantro HEVC": >> https://patchwork.linuxtv.org/project/linux-media/cover/20210625141143.577998-1-benjamin.gaignard@xxxxxxxxxxxxx/ >> >> "media: hevc: fix pictures lists type": >> https://patchwork.linuxtv.org/project/linux-media/patch/20210823082949.237716-1-benjamin.gaignard@xxxxxxxxxxxxx/ >> >> "media: hantro: Trace hevc hw cycles performance register": >> https://patchwork.linuxtv.org/project/linux-media/patch/20210823135606.633052-1-benjamin.gaignard@xxxxxxxxxxxxx/ >> >> "media: hantro: Add support of compressed reference buffers" >> https://patchwork.linuxtv.org/project/linux-media/patch/20210823162916.824336-1-benjamin.gaignard@xxxxxxxxxxxxx/ >> >> Before moving the HEVC API out of staging I would prefer to have any remaining >> issues fixed. So one series that adds any remaining fixes (i.e. from the older patches >> mentioned above), and a second series on top that moves it out of staging. > > Hi Hans, > > They are all related to Hantro diver and, after post-proc patches, the internal driver design > has change so they won't apply anymore. You can discard them. OK, I'll mark them as Obsoleted. > HEVC UAPI migration isn't not impacted by these patches. > My plan is a finish the HEVC UAPI first, send patches to add features (compression, 10bits, scaling) > to Hantro driver and finally move it out of staging too. > If possible I would like to not make HEVC UAPI topic depends of Hantro features. > > Does that makes sense for you ? Well, only if you are absolutely certain that those features won't impact the uAPI. The easiest way to do that is to implement them and show that it doesn't :-) That's really my main concern: that those additions require uAPI changes. Looking over those patches it appears that this is the only one touching on the uAPI: "media: hevc: fix pictures lists type": https://patchwork.linuxtv.org/project/linux-media/patch/20210823082949.237716-1-benjamin.gaignard@xxxxxxxxxxxxx/ I haven't read all the comments in details, but it is something that needs to be clarified. Regards, Hans > > Regards, > Benjamin > >> >> That way I can mark the older patches as Superseded, and we have a >> fresh series that we can discuss. >> >> Regards, >> >> Hans >> >>> Benjamin >>> >>> Benjamin Gaignard (5): >>> media: uapi: Move HEVC stateless controls out of staging >>> media: uapi: Add fields needed for RKVDEC driver >>> media: uapi: Remove bit_size field from v4l2_ctrl_hevc_slice_params >>> media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET control >>> media: uapi: Change data_bit_offset definition >>> >>> Hans Verkuil (3): >>> videodev2.h: add V4L2_CTRL_FLAG_DYNAMIC_ARRAY >>> v4l2-ctrls: add support for dynamically allocated arrays. >>> vivid: add dynamic array test control >>> >>> .../userspace-api/media/drivers/hantro.rst | 5 - >>> .../media/v4l/ext-ctrls-codec.rst | 58 ++-- >>> .../media/v4l/vidioc-queryctrl.rst | 8 + >>> .../media/test-drivers/vivid/vivid-ctrls.c | 15 ++ >>> drivers/media/v4l2-core/v4l2-ctrls-api.c | 103 ++++++-- >>> drivers/media/v4l2-core/v4l2-ctrls-core.c | 182 ++++++++++--- >>> drivers/media/v4l2-core/v4l2-ctrls-defs.c | 32 +-- >>> drivers/media/v4l2-core/v4l2-ctrls-priv.h | 3 +- >>> drivers/media/v4l2-core/v4l2-ctrls-request.c | 13 +- >>> drivers/staging/media/hantro/hantro_drv.c | 27 +- >>> drivers/staging/media/hantro/hantro_hevc.c | 8 +- >>> drivers/staging/media/sunxi/cedrus/cedrus.c | 24 +- >>> .../staging/media/sunxi/cedrus/cedrus_dec.c | 10 +- >>> .../staging/media/sunxi/cedrus/cedrus_h265.c | 13 +- >>> include/linux/hantro-media.h | 17 ++ >>> include/media/hevc-ctrls.h | 250 ------------------ >>> include/media/v4l2-ctrls.h | 48 +++- >>> include/uapi/linux/v4l2-controls.h | 224 ++++++++++++++++ >>> include/uapi/linux/videodev2.h | 8 + >>> 19 files changed, 640 insertions(+), 408 deletions(-) >>> create mode 100644 include/linux/hantro-media.h >>> delete mode 100644 include/media/hevc-ctrls.h >>>