[RFC v2 0/8] Move HEVC stateless controls out of staging

Benjamin Gaignard benjamin.gaignard at collabora.com
Fri Feb 18 02:54:27 PST 2022


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@collabora.com/
>
> "media: hevc: fix pictures lists type":
> https://patchwork.linuxtv.org/project/linux-media/patch/20210823082949.237716-1-benjamin.gaignard@collabora.com/
>
> "media: hantro: Trace hevc hw cycles performance register":
> https://patchwork.linuxtv.org/project/linux-media/patch/20210823135606.633052-1-benjamin.gaignard@collabora.com/
>
> "media: hantro: Add support of compressed reference buffers"
> https://patchwork.linuxtv.org/project/linux-media/patch/20210823162916.824336-1-benjamin.gaignard@collabora.com/
>
> 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.
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 ?

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
>>



More information about the linux-arm-kernel mailing list