Re: [PATCH 00/28] Venus updates
Hi Hans, On 7.05.2018 13:41, Hans Verkuil wrote: 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. For now it'll be internal for the driver. In downstream driver it is exposed to userspace via custom v4l_control but that is not generic and I decided to not expose it. regards, Stan
Re: [PATCH 00/28] Venus updates
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 >
[PATCH 00/28] Venus updates
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. 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 -- 2.14.1