Re: [PATCH 00/31] Introduce devm_pm_opp_* API

From: Frank Lee
Date: Sun Jan 03 2021 - 09:31:16 EST


HI,

On Sun, Jan 3, 2021 at 8:52 PM Dmitry Osipenko <digetx@xxxxxxxxx> wrote:
>
> 01.01.2021 19:54, Yangtao Li пишет:
> > Hi,
> >
> > This patchset add devm_pm_opp_set_clkname, devm_pm_opp_put_clkname,
> > devm_pm_opp_set_regulators, devm_pm_opp_put_regulators,
> > devm_pm_opp_set_supported_hw, devm_pm_opp_of_add_table and
> > devm_pm_opp_register_notifier.
> >
> > Yangtao Li (31):
> > opp: Add devres wrapper for dev_pm_opp_set_clkname and
> > dev_pm_opp_put_clkname
> > opp: Add devres wrapper for dev_pm_opp_set_regulators and
> > dev_pm_opp_put_regulators
> > opp: Add devres wrapper for dev_pm_opp_set_supported_hw
> > opp: Add devres wrapper for dev_pm_opp_of_add_table
> > opp: Add devres wrapper for dev_pm_opp_register_notifier
> > serial: qcom_geni_serial: fix potential mem leak in
> > qcom_geni_serial_probe()
> > serial: qcom_geni_serial: convert to use devm_pm_opp_* API
> > spi: spi-qcom-qspi: fix potential mem leak in spi_geni_probe()
> > spi: spi-qcom-qspi: fix potential mem leak in spi_geni_probe()
> > qcom-geni-se: remove opp_table
> > mmc: sdhci-msm: fix potential mem leak in sdhci_msm_probe()
> > mmc: sdhci-msm: convert to use devm_pm_opp_* API
> > spi: spi-qcom-qspi: fix potential mem leak in qcom_qspi_probe()
> > spi: spi-qcom-qspi: convert to use devm_pm_opp_* API
> > drm/msm: fix potential mem leak
> > drm/msm: convert to use devm_pm_opp_* API and remove dp_ctrl_put
> > drm/lima: convert to use devm_pm_opp_* API
> > drm/lima: remove unneeded devm_devfreq_remove_device()
> > drm/panfrost: convert to use devm_pm_opp_* API
> > media: venus: fix error check in core_get_v4()
> > media: venus: convert to use devm_pm_opp_* API
> > memory: samsung: exynos5422-dmc: fix return error in
> > exynos5_init_freq_table
> > memory: samsung: exynos5422-dmc: convert to use devm_pm_opp_* API
> > memory: tegra20: convert to use devm_pm_opp_* API
> > memory: tegra30: convert to use devm_pm_opp_* API
> > PM / devfreq: tegra30: convert to use devm_pm_opp_* API
> > PM / devfreq: rk3399_dmc: convert to use devm_pm_opp_* API
> > PM / devfreq: imx8m-ddrc: convert to use devm_pm_opp_* API
> > PM / devfreq: imx-bus: convert to use devm_pm_opp_* API
> > PM / devfreq: exynos: convert to use devm_pm_opp_* API
> > PM / devfreq: convert to devm_pm_opp_register_notifier and remove
> > unused API
> >
> > drivers/devfreq/devfreq.c | 66 +------
> > drivers/devfreq/exynos-bus.c | 42 +----
> > drivers/devfreq/imx-bus.c | 14 +-
> > drivers/devfreq/imx8m-ddrc.c | 15 +-
> > drivers/devfreq/rk3399_dmc.c | 22 +--
> > drivers/devfreq/tegra30-devfreq.c | 21 +--
> > drivers/gpu/drm/lima/lima_devfreq.c | 45 +----
> > drivers/gpu/drm/lima/lima_devfreq.h | 2 -
> > drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 2 +-
> > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 +-
> > drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
> > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 31 ++--
> > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 2 -
> > drivers/gpu/drm/msm/dp/dp_ctrl.c | 29 +--
> > drivers/gpu/drm/msm/dp/dp_ctrl.h | 1 -
> > drivers/gpu/drm/msm/dp/dp_display.c | 5 +-
> > drivers/gpu/drm/msm/dsi/dsi_host.c | 23 ++-
> > drivers/gpu/drm/panfrost/panfrost_devfreq.c | 34 +---
> > drivers/gpu/drm/panfrost/panfrost_devfreq.h | 1 -
> > .../media/platform/qcom/venus/pm_helpers.c | 22 +--
> > drivers/memory/samsung/exynos5422-dmc.c | 13 +-
> > drivers/memory/tegra/tegra20-emc.c | 29 +--
> > drivers/memory/tegra/tegra30-emc.c | 29 +--
> > drivers/mmc/host/sdhci-msm.c | 27 ++-
> > drivers/opp/core.c | 173 ++++++++++++++++++
> > drivers/opp/of.c | 36 ++++
> > drivers/spi/spi-geni-qcom.c | 23 ++-
> > drivers/spi/spi-qcom-qspi.c | 25 ++-
> > drivers/tty/serial/qcom_geni_serial.c | 31 ++--
> > include/linux/devfreq.h | 23 ---
> > include/linux/pm_opp.h | 38 ++++
> > include/linux/qcom-geni-se.h | 2 -
> > 32 files changed, 402 insertions(+), 428 deletions(-)
> >
>
> Hello,
>
> Could you please add helper for dev_pm_opp_attach_genpd() and make
> cpufreq drivers to use the helpers?

Thank you for reminding me. But we shouldn't use this for CPU devices
as the CPU device doesn't get bound to a driver, it is rather a fake platform
device which gets the cpufreq drivers probed.

>
> I'd also like to see a devm helper for
> dev_pm_opp_register_set_opp_helper(), which should become useful for
> Tegra drivers sometime soon.

For non-cpu devices?

BR / Yangtao