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

From: Benjamin Gaignard
Date: Tue Feb 15 2022 - 08:24:53 EST



Le 15/02/2022 à 14:01, Sebastian Fricke a écrit :
Hey 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).

Why is rkvdec out-of-tree? It is in the staging directory just like
hantro and cedrus? Am I missing something here?

I have made a shortcut here: HEVC part of rkvdec isn't in staging directory.
I hope that this series will enough to add it after.

Regards,
Benjamin


Greetings,
Sebastian


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

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

--
2.32.0