Skip to content

media: venus: Update clock scaling

Aniket Masule linux-arm-msm linux-media lkml 9 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v7 Latest posting 2/22 patches 0 repliesNew
  2. v7 posting 1/23 patches 0 repliesSuperseded
  3. v6 posting 2/24 patches 7 repliesSuperseded
Earlier versions · 6
VersionPostedPatchesRepliesStatus
v6 posting 1/20 of 4 patches0 repliesSuperseded
v54 patches1 replySuperseded
v44 patches4 repliesSuperseded
v34 patches7 repliesSuperseded
v25 patches9 repliesSuperseded
v15 patches0 repliesSuperseded

Changes in v7 from the cover letter

- Removed core selection.
- Corrected frequency calculations.
- Removed instance lock used while iterating over buffers.

Patches in v7 posting 2/2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2media: venus: Add codec data tabledrivers/media/platform/qcom/venus/core.c drivers/media/platform/qcom/venus/core.h drivers/media/platform/qcom/venus/helpers.c +3 more+68 -00 replies
2/2media: venus: Update clock scalingdrivers/media/platform/qcom/venus/helpers.c drivers/media/platform/qcom/venus/helpers.h drivers/media/platform/qcom/venus/vdec.c+140 -230 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v7 yet.

Read the v7 thread

Cover letter [RESEND v7 0/2]media: venus: Update clock scaling

In this patch series, clock scaling and core selection methods are updated. Current clock scaling is same for vpu4 and previous versions. Introducing load calculations using vpp cycles, which indicates the cycles required by video hardware to process each macroblock. Also adding vsp cycles, cycles require by stream processor. Clock scaling is now done more precisely using vpp and vsp cycles. Removing core selection from this series, there will be separate patch once issue related to power domain is fixed.

This patch depends on the following patch:
https://patchwork.kernel.org/patch/11142557/ - Venus interconnect support for sdm845

Changes since v6:
- Removed core selection.
- Corrected frequency calculations.
- Removed instance lock used while iterating over buffers.

Changes since v5:
- Corrected load_per_core calculations.

Changes since v4:
- Added call to load_scale_clocks from venus_helper_vb2_buf_queue.
- Modified check to match core_id in core_selection.

Changes since v3:
- vsp_cycles and vpp_cyles are now unsigned long.
- Core number counting aligned with VIDC_CORE_ID_.
- Aligned hardware overload handling of scale_clocks_v4 with scale_clocks.
- Added bitrate based clock scaling patch in this patch series.
- Instance state check is now moved from scale_clocks to load_scale_clocks

Aniket Masule (2):
media: venus: Add codec data table
media: venus: Update clock scaling

 drivers/media/platform/qcom/venus/core.c    |  13 ++
 drivers/media/platform/qcom/venus/core.h    |  16 +++
 drivers/media/platform/qcom/venus/helpers.c | 187 +++++++++++++++++++++++++---
 drivers/media/platform/qcom/venus/helpers.h |   3 +-
 drivers/media/platform/qcom/venus/vdec.c    |   8 +-
 drivers/media/platform/qcom/venus/venc.c    |   4 +
 6 files changed, 208 insertions(+), 23 deletions(-)
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project