diff --git a/drivers/cpufreq/cpufreq_interactive.c b/drivers/cpufreq/cpufreq_interactive.c index f2be0d87d73d..9259d4829765 100644 --- a/drivers/cpufreq/cpufreq_interactive.c +++ b/drivers/cpufreq/cpufreq_interactive.c @@ -116,6 +116,28 @@ struct cpufreq_interactive_tunables { bool io_is_busy; }; +/* + * HACK: FIXME: Bring back cpufreq_{get,put}_global_kobject() + * definition removed by upstream commit 8eec1020f0c0 "cpufreq: + * create cpu/cpufreq at boot time" to fix build failures. + */ +static int cpufreq_global_kobject_usage; + +int cpufreq_get_global_kobject(void) +{ + if (!cpufreq_global_kobject_usage++) + return kobject_add(cpufreq_global_kobject, + &cpu_subsys.dev_root->kobj, "%s", "cpufreq"); + + return 0; +} + +void cpufreq_put_global_kobject(void) +{ + if (!--cpufreq_global_kobject_usage) + kobject_del(cpufreq_global_kobject); +} + /* For cases where we have single governor instance for system */ static struct cpufreq_interactive_tunables *common_tunables;