[PATCH v9 0/8] NVIDIA Tegra power management patches for 5.16

Dmitry Osipenko
2021-08-27T01:37:59Z

This is a reduced version of the patchset which adds power management
support to NVIDIA Tegra drivers. Viresh Kumar asked to send these PD/OPP
patches separately for now to reduce the noise and finalize the review.

I implemented new get_performance_state() GENPD callback as was discussed
in v8. GR3D driver patch shows how it's used by consumer drivers, which
is a good example because 3d driver supports both cases of a single and
multi-domain hardware, it also uses OPP API more extensively than other
drivers.

Dmitry Osipenko (8):
opp: Add dev_pm_opp_from_clk_rate()
opp: Allow dev_pm_opp_set_clkname() to replace released clock
opp: Change type of dev_pm_opp_attach_genpd(names) argument
PM: domains: Add get_performance_state() callback
soc/tegra: pmc: Implement get_performance_state() callback
soc/tegra: Add devm_tegra_core_dev_init_opp_table_simple()
gpu: host1x: Add host1x_channel_stop()
drm/tegra: gr3d: Support generic power domain and runtime PM

drivers/base/power/domain.c | 32 ++-
drivers/gpu/drm/tegra/gr3d.c | 384 ++++++++++++++++++++++++++++++-----
drivers/gpu/host1x/channel.c | 8 +
drivers/opp/core.c | 50 ++++-
drivers/soc/tegra/pmc.c | 86 ++++++++
include/linux/host1x.h | 1 +
include/linux/pm_domain.h | 2 +
include/linux/pm_opp.h | 14 +-
include/soc/tegra/common.h | 13 ++
9 files changed, 522 insertions(+), 68 deletions(-)

--
2.32.0