linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] add device managed version of dev_pm_domain_attach|detach_list()
@ 2024-07-12  5:48 Dikshita Agarwal
  2024-02-09 21:09 ` [PATCH v2 00/20] Venus cleanups Konrad Dybcio
                   ` (3 more replies)
  0 siblings, 4 replies; 61+ messages in thread
From: Dikshita Agarwal @ 2024-07-12  5:48 UTC (permalink / raw)
  To: Rafael J. Wysocki, Pavel Machek, Len Brown, Greg Kroah-Hartman,
	Stanimir Varbanov, Vikash Garodia, Bjorn Andersson, Konrad Dybcio,
	Mauro Carvalho Chehab, Ulf Hansson, Philipp Zabel,
	Bryan O'Donoghue, Dikshita Agarwal
  Cc: Stanimir Varbanov, Mauro Carvalho Chehab, linux-pm, linux-kernel,
	linux-media, linux-arm-msm

These patches add the devres-enabled version of dev_pm_domain_attach|detach_list
in pm domain framework and use the same APIs in venus driver.
If any client drivers use devm_pm_domain_attach_list() to attach the PM domains,
devm_pm_domain_detach_list() will be invoked implicitly during remove phase.

Dikshita Agarwal (2):
  PM: domains: add device managed version of
    dev_pm_domain_attach|detach_list()
  media: venus: use device managed APIs for power domains

 drivers/base/power/common.c                    | 41 ++++++++++++++++++++++++++
 drivers/media/platform/qcom/venus/pm_helpers.c |  5 +---
 include/linux/pm_domain.h                      |  4 +++
 3 files changed, 46 insertions(+), 4 deletions(-)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 61+ messages in thread
* [PATCH v2 00/20] Venus cleanups
@ 2024-02-09 21:09 Konrad Dybcio
  2024-02-09 21:09 ` [PATCH v2 03/20] media: venus: pm_helpers: Add kerneldoc to venus_clks_get() Konrad Dybcio
  0 siblings, 1 reply; 61+ messages in thread
From: Konrad Dybcio @ 2024-02-09 21:09 UTC (permalink / raw)
  To: Stanimir Varbanov, Vikash Garodia, Bryan O'Donoghue,
	Andy Gross, Bjorn Andersson, Mauro Carvalho Chehab,
	Dikshita Agarwal, Philipp Zabel
  Cc: Marijn Suijten, Stanimir Varbanov, Mauro Carvalho Chehab,
	linux-media, linux-arm-msm, linux-kernel, Konrad Dybcio

With the driver supporting multiple generations of hardware, some mold
has definitely grown over the code..

This series attempts to amend this situation a bit by commonizing some
code paths and fixing some bugs while at it.

Only tested on SM8250.

Definitely needs testing on:

- SDM845 with old bindings
- SDM845 with new bindings or 7180
- MSM8916
- MSM8996

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
Changes in v2:
- Fix "set but unused" warning in "Drop cache properties in resource struct"
- Fix modular build with "Commonize vdec_get()"
- Rebase
- Test again on 8250, since nobody else tested other platforms since the last
  submission (or at least hasn't reported that), I'm assuming nobody cares
- Needs to be tested atop [1] and similar, it's in latest -next already
- Link to v1: https://lore.kernel.org/r/20230911-topic-mars-v1-0-a7d38bf87bdb@linaro.org

[1] https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=d2cd22c9c384aa50c0b4530e842bd078427e6279

---
Konrad Dybcio (20):
      media: venus: pm_helpers: Only set rate of the core clock in core_clks_enable
      media: venus: pm_helpers: Rename core_clks_get to venus_clks_get
      media: venus: pm_helpers: Add kerneldoc to venus_clks_get()
      media: venus: core: Set OPP clkname in a common code path
      media: venus: pm_helpers: Kill dead code
      media: venus: pm_helpers: Move reset acquisition to common code
      media: venus: core: Constify all members of the resource struct
      media: venus: core: Deduplicate OPP genpd names
      media: venus: core: Get rid of vcodec_num
      media: venus: core: Drop cache properties in resource struct
      media: venus: core: Use GENMASK for dma_mask
      media: venus: core: Remove cp_start
      media: venus: pm_helpers: Commonize core_power
      media: venus: pm_helpers: Remove pm_ops->core_put
      media: venus: core: Define a pointer to core->res
      media: venus: pm_helpers: Simplify vcodec clock handling
      media: venus: pm_helpers: Commonize getting clocks and GenPDs
      media: venus: pm_helpers: Commonize vdec_get()
      media: venus: pm_helpers: Commonize venc_get()
      media: venus: pm_helpers: Use reset_bulk API

 drivers/media/platform/qcom/venus/core.c       | 139 ++++-------
 drivers/media/platform/qcom/venus/core.h       |  66 +++--
 drivers/media/platform/qcom/venus/firmware.c   |   3 +-
 drivers/media/platform/qcom/venus/hfi_venus.c  |  10 +-
 drivers/media/platform/qcom/venus/pm_helpers.c | 323 +++++++++----------------
 drivers/media/platform/qcom/venus/pm_helpers.h |  10 +-
 drivers/media/platform/qcom/venus/vdec.c       |   9 +-
 drivers/media/platform/qcom/venus/venc.c       |   9 +-
 8 files changed, 213 insertions(+), 356 deletions(-)
---
base-commit: 445a555e0623387fa9b94e68e61681717e70200a
change-id: 20230911-topic-mars-e60bb2269411

Best regards,
-- 
Konrad Dybcio <konrad.dybcio@linaro.org>


^ permalink raw reply	[flat|nested] 61+ messages in thread

end of thread, other threads:[~2024-07-16 10:49 UTC | newest]

Thread overview: 61+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-12  5:48 [PATCH 0/2] add device managed version of dev_pm_domain_attach|detach_list() Dikshita Agarwal
2024-02-09 21:09 ` [PATCH v2 00/20] Venus cleanups Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 01/20] media: venus: pm_helpers: Only set rate of the core clock in core_clks_enable Konrad Dybcio
2024-07-12  5:48     ` Dikshita Agarwal
2024-07-12  6:07     ` Dikshita Agarwal
2024-07-16 10:49       ` Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 02/20] media: venus: pm_helpers: Rename core_clks_get to venus_clks_get Konrad Dybcio
2024-03-06 11:48     ` Bryan O'Donoghue
2024-03-26 21:24       ` Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 03/20] media: venus: pm_helpers: Add kerneldoc to venus_clks_get() Konrad Dybcio
2024-03-06 12:20     ` Bryan O'Donoghue
2024-03-26 21:23       ` Konrad Dybcio
2024-03-27  9:55         ` Bryan O'Donoghue
2024-03-27 17:23           ` Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 04/20] media: venus: core: Set OPP clkname in a common code path Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 05/20] media: venus: pm_helpers: Kill dead code Konrad Dybcio
2024-03-04  5:40     ` Dikshita Agarwal
2024-03-26 21:30       ` Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 06/20] media: venus: pm_helpers: Move reset acquisition to common code Konrad Dybcio
2024-03-04  5:47     ` Dikshita Agarwal
2024-02-09 21:09   ` [PATCH v2 07/20] media: venus: core: Constify all members of the resource struct Konrad Dybcio
2024-02-21  0:59     ` Richard Acayan
2024-02-09 21:09   ` [PATCH v2 08/20] media: venus: core: Deduplicate OPP genpd names Konrad Dybcio
2024-03-06 12:28     ` Bryan O'Donoghue
2024-02-09 21:09   ` [PATCH v2 09/20] media: venus: core: Get rid of vcodec_num Konrad Dybcio
2024-03-06 12:29     ` Bryan O'Donoghue
2024-02-09 21:09   ` [PATCH v2 10/20] media: venus: core: Drop cache properties in resource struct Konrad Dybcio
2024-03-06 12:32     ` Bryan O'Donoghue
2024-02-09 21:09   ` [PATCH v2 11/20] media: venus: core: Use GENMASK for dma_mask Konrad Dybcio
2024-03-06 13:19     ` Bryan O'Donoghue
2024-02-09 21:09   ` [PATCH v2 12/20] media: venus: core: Remove cp_start Konrad Dybcio
2024-03-06 13:20     ` Bryan O'Donoghue
2024-02-09 21:09   ` [PATCH v2 13/20] media: venus: pm_helpers: Commonize core_power Konrad Dybcio
2024-02-09 21:09   ` [PATCH v2 14/20] media: venus: pm_helpers: Remove pm_ops->core_put Konrad Dybcio
2024-03-04  6:57     ` Dikshita Agarwal
2024-03-04 22:52       ` Konrad Dybcio
2024-03-06  9:54         ` Dikshita Agarwal
2024-02-09 21:09   ` [PATCH v2 15/20] media: venus: core: Define a pointer to core->res Konrad Dybcio
2024-02-09 21:10   ` [PATCH v2 16/20] media: venus: pm_helpers: Simplify vcodec clock handling Konrad Dybcio
2024-02-09 21:10   ` [PATCH v2 17/20] media: venus: pm_helpers: Commonize getting clocks and GenPDs Konrad Dybcio
2024-03-04  7:13     ` Dikshita Agarwal
2024-03-26 21:31       ` Konrad Dybcio
2024-02-09 21:10   ` [PATCH v2 18/20] media: venus: pm_helpers: Commonize vdec_get() Konrad Dybcio
2024-02-09 21:10   ` [PATCH v2 19/20] media: venus: pm_helpers: Commonize venc_get() Konrad Dybcio
2024-02-09 21:10   ` [PATCH v2 20/20] media: venus: pm_helpers: Use reset_bulk API Konrad Dybcio
2024-02-14 13:31     ` Philipp Zabel
2024-02-14 21:20       ` Konrad Dybcio
2024-02-21 13:34         ` Philipp Zabel
2024-02-21 13:37           ` Konrad Dybcio
2024-02-21 13:45             ` Philipp Zabel
2024-02-14 12:56   ` [PATCH v2 00/20] Venus cleanups Bryan O'Donoghue
2024-02-14 21:43     ` Konrad Dybcio
2024-07-12  5:48 ` [PATCH 1/2] PM: domains: add device managed version of dev_pm_domain_attach|detach_list() Dikshita Agarwal
2024-07-13  2:42   ` kernel test robot
2024-07-14 23:08   ` Bryan O'Donoghue
2024-07-16  4:11   ` Pavan Kondeti
2024-07-12  5:48 ` [PATCH 2/2] media: venus: use device managed APIs for power domains Dikshita Agarwal
2024-07-13  3:16   ` kernel test robot
2024-07-14 22:59   ` Bryan O'Donoghue
2024-07-15 11:17 ` [PATCH 0/2] add device managed version of dev_pm_domain_attach|detach_list() Ulf Hansson
  -- strict thread matches above, loose matches on Subject: below --
2024-02-09 21:09 [PATCH v2 00/20] Venus cleanups Konrad Dybcio
2024-02-09 21:09 ` [PATCH v2 03/20] media: venus: pm_helpers: Add kerneldoc to venus_clks_get() Konrad Dybcio

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).