Hello, This aims to make Venus decoder compliant with stateful Codec API [1]. The patches 1-9 are preparation for the cherry on the cake patch 10 which implements the decoder state machine similar to the one in the stateful codec API documentation. There few things which are still TODO: - V4L2_DEC_CMD_START implementation as per decoder documentation. - Dynamic resolution change V4L2_BUF_FLAG_LAST for the last buffer before the resolution change. The patches are tested with chromium VDA unittests at [2]. Note that the patchset depends on Venus various fixes at [3]. Comments are welcome! regards, Stan [1] https://patchwork.kernel.org/patch/10652199/ [2] https://chromium.googlesource.com/chromium/src/+/lkgr/docs/media/gpu/vdatest_usage.md [3] https://www.mail-archive.com/linux-kernel@xxxxxxxxxxxxxxx/msg1894510.html Stanimir Varbanov (10): venus: hfi_cmds: add more not-implemented properties venus: helpers: fix dynamic buffer mode for v4 venus: helpers: export few helper functions venus: hfi: add type argument to hfi flush function venus: hfi: export few HFI functions venus: hfi: return an error if session_init is already called venus: helpers: add three more helper functions venus: vdec_ctrls: get real minimum buffers for capture venus: vdec: allow bigger sizeimage set by clients venus: dec: make decoder compliant with stateful codec API drivers/media/platform/qcom/venus/core.h | 20 +- drivers/media/platform/qcom/venus/helpers.c | 141 +++++- drivers/media/platform/qcom/venus/helpers.h | 14 + drivers/media/platform/qcom/venus/hfi.c | 11 +- drivers/media/platform/qcom/venus/hfi.h | 2 +- drivers/media/platform/qcom/venus/hfi_cmds.c | 2 + drivers/media/platform/qcom/venus/vdec.c | 467 ++++++++++++++---- .../media/platform/qcom/venus/vdec_ctrls.c | 7 +- 8 files changed, 535 insertions(+), 129 deletions(-) -- 2.17.1