Re: [PATCH 00/28] Venus updates
From: Hans Verkuil
Date: Mon May 07 2018 - 06:41:45 EST
On 24/04/18 14:44, Stanimir Varbanov wrote:
> Hello,
>
> This patch set aims to:
>
> * add initial support for Venus version 4xx (found on sdm845).
>
> * introduce a common capability parser to enumerate better
> supported uncompressed formats, capabilities by codec,
> supported codecs and so on.
>
> * also contains various cleanups, readability improvements
> and fixes.
>
> * adds HEVC codec support for the Venus versions which has
> support for it.
>
> * add multi-stream support (secondary decoder output), which
> will give as an opportunity to use UBWC compressed formats
> to optimize internal interconnect bandwidth on higher
> resolutions.
I'm a bit confused about this: is this a purely driver-internal thing,
or is this exposed somehow to userspace as well? It seems to be purely
internal.
Regards,
Hans
>
> Comments are welcome!
>
> regards,
> Stan
>
> Stanimir Varbanov (28):
> venus: hfi_msgs: correct pointer increment
> venus: hfi: preparation to support venus 4xx
> venus: hfi: update sequence event to handle more properties
> venus: hfi_cmds: add set_properties for 4xx version
> venus: hfi: support session continue for 4xx version
> venus: hfi: handle buffer output2 type as well
> venus: hfi_venus: add halt AXI support for Venus 4xx
> venus: hfi_venus: add suspend function for 4xx version
> venus: venc,vdec: adds clocks needed for venus 4xx
> venus: vdec: call session_continue in insufficient event
> venus: add common capability parser
> venus: helpers: make a commmon function for power_enable
> venus: core: delete not used flag for buffer mode
> venus: helpers: rename a helper function and use buffer mode from caps
> venus: add a helper function to set dynamic buffer mode
> venus: add helper function to set actual buffer size
> venus: delete no longer used bufmode flag from instance
> venus: helpers: add buffer type argument to a helper
> venus: helpers: add a new helper to set raw format
> venus: helpers,vdec,venc: add helpers to set work mode and core usage
> venus: helpers: extend set_num_bufs helper with one more argument
> venus: helpers: add a helper to return opb buffer sizes
> venus: vdec: get required input buffers as well
> venus: vdec: new function for output configuration
> venus: move frame size calculations in common place
> venus: implementing multi-stream support
> venus: add sdm845 compatible and resource data
> venus: add HEVC codec support
>
> .../devicetree/bindings/media/qcom,venus.txt | 1 +
> drivers/media/platform/qcom/venus/Makefile | 3 +-
> drivers/media/platform/qcom/venus/core.c | 102 ++++
> drivers/media/platform/qcom/venus/core.h | 91 ++--
> drivers/media/platform/qcom/venus/helpers.c | 558 +++++++++++++++++++--
> drivers/media/platform/qcom/venus/helpers.h | 23 +-
> drivers/media/platform/qcom/venus/hfi.c | 12 +-
> drivers/media/platform/qcom/venus/hfi.h | 9 +
> drivers/media/platform/qcom/venus/hfi_cmds.c | 64 ++-
> drivers/media/platform/qcom/venus/hfi_helper.h | 112 ++++-
> drivers/media/platform/qcom/venus/hfi_msgs.c | 401 +++------------
> drivers/media/platform/qcom/venus/hfi_parser.c | 290 +++++++++++
> drivers/media/platform/qcom/venus/hfi_parser.h | 45 ++
> drivers/media/platform/qcom/venus/hfi_venus.c | 69 +++
> drivers/media/platform/qcom/venus/hfi_venus_io.h | 24 +
> drivers/media/platform/qcom/venus/vdec.c | 324 +++++++-----
> drivers/media/platform/qcom/venus/venc.c | 166 +++---
> 17 files changed, 1641 insertions(+), 653 deletions(-)
> create mode 100644 drivers/media/platform/qcom/venus/hfi_parser.c
> create mode 100644 drivers/media/platform/qcom/venus/hfi_parser.h
>