Commit cfdc589f authored by Ionela Voinescu's avatar Ionela Voinescu Committed by Rafael J. Wysocki
Browse files

cppc_cpufreq: expose information on frequency domains



Use the existing sysfs attribute "freqdomain_cpus" to expose
information to userspace about CPUs in the same frequency domain.

Signed-off-by: default avatarIonela Voinescu <ionela.voinescu@arm.com>
Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Tested-by: default avatarMian Yousaf Kaukab <ykaukab@suse.de>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent bf76bb20
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -264,7 +264,8 @@ Description: Discover CPUs in the same CPU frequency coordination domain
		attribute is useful for user space DVFS controllers to get better
		power/performance results for platforms using acpi-cpufreq.

		This file is only present if the acpi-cpufreq driver is in use.
		This file is only present if the acpi-cpufreq or the cppc-cpufreq
		drivers are in use.


What:		/sys/devices/system/cpu/cpu*/cache/index3/cache_disable_{0,1}
+14 −0
Original line number Diff line number Diff line
@@ -402,6 +402,19 @@ static int cppc_cpufreq_set_boost(struct cpufreq_policy *policy, int state)
	return 0;
}

static ssize_t show_freqdomain_cpus(struct cpufreq_policy *policy, char *buf)
{
	unsigned int cpu = policy->cpu;

	return cpufreq_show_cpus(all_cpu_data[cpu]->shared_cpu_map, buf);
}
cpufreq_freq_attr_ro(freqdomain_cpus);

static struct freq_attr *cppc_cpufreq_attr[] = {
	&freqdomain_cpus,
	NULL,
};

static struct cpufreq_driver cppc_cpufreq_driver = {
	.flags = CPUFREQ_CONST_LOOPS,
	.verify = cppc_verify_policy,
@@ -410,6 +423,7 @@ static struct cpufreq_driver cppc_cpufreq_driver = {
	.init = cppc_cpufreq_cpu_init,
	.stop_cpu = cppc_cpufreq_stop_cpu,
	.set_boost = cppc_cpufreq_set_boost,
	.attr = cppc_cpufreq_attr,
	.name = "cppc_cpufreq",
};