Dear All, This two-patch series adds uAPI for stateless VP8 encoding and an accompanying driver using it. It has been tested on an rk3399 board and there exists a gstreamer user: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3736 example pipeline: gst-launch-1.0 videotestsrc num-buffers=500 ! video/x-raw,width=640,height=480 \ ! v4l2slvp8enc ! queue ! matroskamux ! filesink location=test_vp8.mkv I kindly ask for comments. Notably, the documentation for the added uAPI is missing, that is to be addressed when sending a patch series proper (not RFC). For the RFC I also did not care to replace a BUG_ON() in the boolean encoder. Rebased onto v6.2. Regards, Andrzej Andrzej Pietrasiewicz (2): media: uapi: Add VP8 stateless encoder controls media: rkvdec: Add VP8 encoder drivers/media/platform/verisilicon/Makefile | 2 + drivers/media/platform/verisilicon/hantro.h | 10 + .../platform/verisilicon/hantro_boolenc.c | 69 + .../platform/verisilicon/hantro_boolenc.h | 21 + .../media/platform/verisilicon/hantro_drv.c | 18 +- .../media/platform/verisilicon/hantro_hw.h | 90 + .../media/platform/verisilicon/hantro_v4l2.c | 5 +- .../media/platform/verisilicon/hantro_vp8.c | 118 ++ .../verisilicon/rockchip_vpu2_hw_vp8_enc.c | 1574 +++++++++++++++++ .../platform/verisilicon/rockchip_vpu2_regs.h | 1 + .../platform/verisilicon/rockchip_vpu_hw.c | 23 +- drivers/media/v4l2-core/v4l2-ctrls-core.c | 16 + drivers/media/v4l2-core/v4l2-ctrls-defs.c | 5 + include/media/v4l2-ctrls.h | 1 + include/uapi/linux/v4l2-controls.h | 91 + include/uapi/linux/videodev2.h | 3 + 16 files changed, 2041 insertions(+), 6 deletions(-) create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.c create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.h create mode 100644 drivers/media/platform/verisilicon/rockchip_vpu2_hw_vp8_enc.c base-commit: c9c3395d5e3dcc6daee66c6908354d47bf98cb0c -- 2.25.1