[coreboot-gerrit] Patch set updated for coreboot: de5a549 broadwell: Enable turbo ratio if available

Stefan Reinauer (stefan.reinauer@coreboot.org) gerrit at coreboot.org
Fri Apr 3 18:56:06 CEST 2015


Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/9281

-gerrit

commit de5a54985d58aac475b32d28b6caaf866c179b68
Author: Duncan Laurie <dlaurie at chromium.org>
Date:   Wed Dec 10 08:16:43 2014 -0800

    broadwell: Enable turbo ratio if available
    
    When turning up the CPU frequency set it to turbo if that is
    a possibility.  Also only set the frequency on the boot CPU
    since that is all we need it on, this will allow the 1-core
    turbo ratio.
    
    BUG=chrome-os-partner:28234
    BRANCH=samus,auron
    TEST=build and boot on samus
    
    Change-Id: I573eb7a507305814ec48cc2f624b8e6ddad43f84
    Signed-off-by: Stefan Reinauer <reinauer at chromium.org>
    Original-Commit-Id: d408c1b462983c682d61c6c447692391c2b52183
    Original-Change-Id: Ib5ad746767ee0a56bc7e59de679a9342f053c0e5
    Original-Signed-off-by: Duncan Laurie <dlaurie at chromium.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/234401
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
---
 src/soc/intel/broadwell/cpu.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/soc/intel/broadwell/cpu.c b/src/soc/intel/broadwell/cpu.c
index 1f2ee0d..912f8ae 100644
--- a/src/soc/intel/broadwell/cpu.c
+++ b/src/soc/intel/broadwell/cpu.c
@@ -485,7 +485,10 @@ static void set_max_ratio(void)
 	perf_ctl.hi = 0;
 
 	/* Check for configurable TDP option */
-	if (cpu_config_tdp_levels()) {
+	if (get_turbo_state() == TURBO_ENABLED) {
+		msr = rdmsr(MSR_TURBO_RATIO_LIMIT);
+		perf_ctl.lo = (msr.lo & 0xff) << 8;
+	} else if (cpu_config_tdp_levels()) {
 		/* Set to nominal TDP ratio */
 		msr = rdmsr(MSR_CONFIG_TDP_NOMINAL);
 		perf_ctl.lo = (msr.lo & 0xff) << 8;
@@ -587,9 +590,6 @@ static void cpu_core_init(device_t cpu)
 	/* Set energy policy */
 	set_energy_perf_bias(ENERGY_POLICY_NORMAL);
 
-	/* Set Max Ratio */
-	set_max_ratio();
-
 	/* Enable Turbo */
 	enable_turbo();
 }
@@ -692,6 +692,9 @@ void broadwell_init_cpus(device_t dev)
 		printk(BIOS_ERR, "MP initialization failure.\n");
 	}
 
+	/* Set Max Ratio */
+	set_max_ratio();
+
 	/* Restore the default SMM region. */
 	restore_default_smm_area(smm_save_area);
 }



More information about the coreboot-gerrit mailing list