mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 00:04:15 +08:00
cpufreq: tegra194: add online/offline hooks
[ Upstream commita3aa97be69
] Implement the light-weight tear down and bring up helpers to reduce the amount of work to do on CPU offline/online operation. This change helps to make the hotplugging paths much faster. Suggested-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Sumit Gupta <sumitg@nvidia.com> Link: https://lore.kernel.org/lkml/20230816033402.3abmugb5goypvllm@vireshk-i7/ [ Viresh: Fixed rebase conflict ] Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Stable-dep-of:de0e85b29e
("cpufreq: tegra194: remove opp table in exit hook") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
bf6b336cf2
commit
88dbf430b6
@ -508,6 +508,21 @@ static int tegra194_cpufreq_init(struct cpufreq_policy *policy)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tegra194_cpufreq_online(struct cpufreq_policy *policy)
|
||||
{
|
||||
/* We did light-weight tear down earlier, nothing to do here */
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tegra194_cpufreq_offline(struct cpufreq_policy *policy)
|
||||
{
|
||||
/*
|
||||
* Preserve policy->driver_data and don't free resources on light-weight
|
||||
* tear down.
|
||||
*/
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tegra194_cpufreq_set_target(struct cpufreq_policy *policy,
|
||||
unsigned int index)
|
||||
{
|
||||
@ -535,6 +550,8 @@ static struct cpufreq_driver tegra194_cpufreq_driver = {
|
||||
.target_index = tegra194_cpufreq_set_target,
|
||||
.get = tegra194_get_speed,
|
||||
.init = tegra194_cpufreq_init,
|
||||
.online = tegra194_cpufreq_online,
|
||||
.offline = tegra194_cpufreq_offline,
|
||||
.attr = cpufreq_generic_attr,
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user