[PATCH] cpufreq: intel_pstate: Broxton support

Subsystems: cpu frequency scaling framework, intel pstate driver, the rest

STALE3762d

2 messages, 2 authors, 2016-06-14 · open the first message on its own page

[PATCH] cpufreq: intel_pstate: Broxton support

From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Date: 2016-06-09 22:33:08

Added Broxton cpu model number. Broxton requires core_params to get
performance limits via MSRs, but it is an Atom platform, which requires
more power optimized algorithm. So the P state selection will use similar
algorithm as other Atom platforms.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
---
 drivers/cpufreq/intel_pstate.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
index e1b7a5e..8a0e405 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
@@ -1110,6 +1110,26 @@ static struct cpu_defaults knl_params = {
 	},
 };
 
+static struct cpu_defaults bxt_params = {
+	.pid_policy = {
+		.sample_rate_ms = 10,
+		.deadband = 0,
+		.setpoint = 60,
+		.p_gain_pct = 14,
+		.d_gain_pct = 0,
+		.i_gain_pct = 4,
+	},
+	.funcs = {
+		.get_max = core_get_max_pstate,
+		.get_max_physical = core_get_max_pstate_physical,
+		.get_min = core_get_min_pstate,
+		.get_turbo = core_get_turbo_pstate,
+		.get_scaling = core_get_scaling,
+		.get_val = core_get_val,
+		.get_target_pstate = get_target_pstate_use_cpu_load,
+	},
+};
+
 static void intel_pstate_get_min_max(struct cpudata *cpu, int *min, int *max)
 {
 	int max_perf = cpu->pstate.turbo_pstate;
@@ -1370,6 +1390,7 @@ static const struct x86_cpu_id intel_pstate_cpu_ids[] = {
 	ICPU(INTEL_FAM6_SKYLAKE_DESKTOP,	core_params),
 	ICPU(INTEL_FAM6_BROADWELL_XEON_D,	core_params),
 	ICPU(INTEL_FAM6_XEON_PHI_KNL,		knl_params),
+	ICPU(INTEL_FAM6_ATOM_GOLDMONT,		bxt_params),
 	{}
 };
 MODULE_DEVICE_TABLE(x86cpu, intel_pstate_cpu_ids);
-- 
2.5.5

Re: [PATCH] cpufreq: intel_pstate: Broxton support

From: Rafael J. Wysocki <hidden>
Date: 2016-06-14 23:23:56

On Thursday, June 09, 2016 03:34:41 PM Srinivas Pandruvada wrote:
Added Broxton cpu model number. Broxton requires core_params to get
performance limits via MSRs, but it is an Atom platform, which requires
more power optimized algorithm. So the P state selection will use similar
algorithm as other Atom platforms.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Applied, thanks!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help