All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
To: stanimir.varbanov@linaro.org, agross@kernel.org,
	bjorn.andersson@linaro.org, mchehab@kernel.org,
	linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org
Cc: bryan.odonoghue@linaro.org, dikshita@codeaurora.org,
	jonathan@marek.ca, vgarodia@codeaurora.org
Subject: [PATCH v2 00/25] media: venus: Enable 6xx support
Date: Fri, 12 Mar 2021 17:30:14 +0000	[thread overview]
Message-ID: <20210312173039.1387617-1-bryan.odonoghue@linaro.org> (raw)

V2:
- Adds Acked-by as indicated - Stan
- Fixes typo in patch #1 22000000 -> 220000000 - Stan
- Fixes setting of clk_set_rate in core_clks_enable
  unbreaks regression for 1xx/db410c - Stan
- "Add 6xx AXI halt logic"
  * Polled read removed - Stan
  * Redundant comments removed - Stan
  * Delay assocaited with LPI write removed entirely
    experimentation shows a delay is not required - Stan/Bryan
- Unifies intbuf_types_6xx_enc and intbuf_types_6xx_dec into
  intbuf_types_6xx
  Looking at the code the separate arrays was a NOP anyway - Stan/Bryan
- Ensures venus_helper_set_format_constraints() runs for 6xx only
- Differentiates stop address between 6xx and >= 4xx
  0xdeadb000 >= 4xx
  0x00000000 == 6xx - Stan

With the fixes in place for db410c I've verified this code now on
sm8250/rb5 sdm845/rb3 and msm8916/db410c

yaml: pending - acked waiting application
https://www.spinics.net/lists/devicetree/msg406892.html

dts: pending - will resend when above is applied
https://lore.kernel.org/linux-arm-msm/20210222132817.1807788-1-bryan.odonoghue@linaro.org/T/#t

Reference tree:

ssh://git@git.linaro.org/people/bryan.odonoghue/kernel.git / tracking-qcomlt-sm8250-venus

This tree incorporates two sets of patches from Stan - plus the two
yaml/dts sets mentioned above.

svarbanov-linux-tv/venus-for-next-v5.13
svarbanov-linux-tv/venus-msm8916-fixes

There's a small integration error between the 5.13 and msm8916-fixes which
I resolved in favor of the bugfix in 5.13 pending - other than that this
tree and these patches apply on tip-of-tree and run as indicated on rb5/rb3
and db410c.

https://www.spinics.net/lists/linux-arm-msm/msg81291.html

V1:
This series enables support for 6xx venus encode/decode as found on the
sm8250.

The new silicon has different base addresses for existing functional blocks
within the venus address space. We add a base address offset mechanism to
handle this. The offsetting mechanism has been validated on 6xx and 4xx
hardware.

The sm8250 supports:

- h264
- h265
- vp8
- vp9

The driver changes are contingent on yaml and dts patches already
in-flight.

yaml: pending
https://www.spinics.net/lists/devicetree/msg406892.html

dts: pending
https://lore.kernel.org/linux-arm-msm/20210222132817.1807788-1-bryan.odonoghue@linaro.org/T/#t

clk: applied
https://kernel.googlesource.com/pub/scm/linux/kernel/git/clk/linux/+/clk-next

Applies on top of 

https://git.linuxtv.org/svarbanov/media_tree.git / venus-for-next-v5.12-part2

Bryan O'Donoghue (11):
  media: venus: Update v6 buffer descriptors
  media: venus: core: add sm8250 DT compatible and resource data
  media: venus: core: Add io base variables for each block
  media: venus: hfi,pm,firmware: Convert to block relative addressing
  media: venus: core: Add differentiator IS_V6(core)
  media: venus: core: Add an io base for TZ wrapper regs
  media: venus: core: Add an io base for AON regs
  media: venus: core: Hook to V6 base registers when appropriate
  media: venus: hfi: Read WRAPPER_TZ_CPU_STATUS_V6 on 6xx
  media: venus: hfi, vdec: v6 Add IS_V6() to existing IS_V4() if
    locations
  media: venus: pm: Hook 6xx pm ops into 4xx pm ops

Dikshita Agarwal (12):
  media: venus: hfi: Define block offsets for V6 hardware
  media: venus: hfi: Define additional 6xx registers
  media: venus: hfi: Add a 6xx boot logic
  media: venus: hfi: Add 6xx interrupt support
  media: venus: core,pm: Vote for min clk freq during venus boot
  media: venus: hfi: Add 6xx AXI halt logic
  media: venus: pm: Toggle 6xx wrapper power in vcodec_control
  media: venus: firmware: Do not toggle WRAPPER_A9SS_SW_RESET on 6xx
  media: venus: helpers: Add internal buffer list for v6
  media: venus: helpers, hfi, vdec: Set actual plane constraints to FW
  media: venus: hfi: Increase plat_buf_v6 o/p buffer count.
  media: venus: helper: Decide work mode

Stanimir Varbanov (2):
  media: venus: core,pm: Add handling for resets
  media: venus: vdec: Fix decoder cmd STOP issue

 drivers/media/platform/qcom/venus/core.c      |  78 +++++++++
 drivers/media/platform/qcom/venus/core.h      |  19 ++
 drivers/media/platform/qcom/venus/firmware.c  |  34 ++--
 drivers/media/platform/qcom/venus/helpers.c   |  73 +++++++-
 drivers/media/platform/qcom/venus/helpers.h   |   3 +-
 drivers/media/platform/qcom/venus/hfi_cmds.c  |  15 +-
 .../media/platform/qcom/venus/hfi_helper.h    |   9 +-
 .../platform/qcom/venus/hfi_plat_bufs_v6.c    |   2 +-
 .../platform/qcom/venus/hfi_platform_v6.c     | 138 +++++++--------
 drivers/media/platform/qcom/venus/hfi_venus.c | 164 +++++++++++++-----
 .../media/platform/qcom/venus/hfi_venus_io.h  | 118 ++++++++-----
 .../media/platform/qcom/venus/pm_helpers.c    |  92 +++++++++-
 drivers/media/platform/qcom/venus/vdec.c      |  17 +-
 drivers/media/platform/qcom/venus/venc.c      |   2 +-
 14 files changed, 567 insertions(+), 197 deletions(-)

-- 
2.30.1


             reply	other threads:[~2021-03-12 17:29 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-12 17:30 Bryan O'Donoghue [this message]
2021-03-12 17:30 ` [PATCH v2 01/25] media: venus: Update v6 buffer descriptors Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 02/25] media: venus: core,pm: Add handling for resets Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 03/25] media: venus: core: add sm8250 DT compatible and resource data Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 04/25] media: venus: core: Add io base variables for each block Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 05/25] media: venus: hfi,pm,firmware: Convert to block relative addressing Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 06/25] media: venus: hfi: Define block offsets for V6 hardware Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 07/25] media: venus: hfi: Define additional 6xx registers Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 08/25] media: venus: core: Add differentiator IS_V6(core) Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 09/25] media: venus: core: Add an io base for TZ wrapper regs Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 10/25] media: venus: core: Add an io base for AON regs Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 11/25] media: venus: core: Hook to V6 base registers when appropriate Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 12/25] media: venus: hfi: Add a 6xx boot logic Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 13/25] media: venus: hfi: Add 6xx interrupt support Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 14/25] media: venus: hfi: Read WRAPPER_TZ_CPU_STATUS_V6 on 6xx Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 15/25] media: venus: hfi, vdec: v6 Add IS_V6() to existing IS_V4() if locations Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 16/25] media: venus: pm: Hook 6xx pm ops into 4xx pm ops Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 17/25] media: venus: core,pm: Vote for min clk freq during venus boot Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 18/25] media: venus: hfi: Add 6xx AXI halt logic Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 19/25] media: venus: pm: Toggle 6xx wrapper power in vcodec_control Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 20/25] media: venus: firmware: Do not toggle WRAPPER_A9SS_SW_RESET on 6xx Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 21/25] media: venus: helpers: Add internal buffer list for v6 Bryan O'Donoghue
2021-03-17  9:59   ` dikshita
2021-03-12 17:30 ` [PATCH v2 22/25] media: venus: helpers, hfi, vdec: Set actual plane constraints to FW Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 23/25] media: venus: hfi: Increase plat_buf_v6 o/p buffer count Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 24/25] media: venus: helper: Decide work mode Bryan O'Donoghue
2021-03-22 13:12   ` Stanimir Varbanov
2021-03-12 17:30 ` [PATCH v2 25/25] media: venus: vdec: Fix decoder cmd STOP issue Bryan O'Donoghue
2021-03-23 12:20 ` [PATCH v2 00/25] media: venus: Enable 6xx support Stanimir Varbanov
2021-03-23 14:07   ` Bryan O'Donoghue

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210312173039.1387617-1-bryan.odonoghue@linaro.org \
    --to=bryan.odonoghue@linaro.org \
    --cc=agross@kernel.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=dikshita@codeaurora.org \
    --cc=jonathan@marek.ca \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=stanimir.varbanov@linaro.org \
    --cc=vgarodia@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.