[coreboot-gerrit] Patch set updated for coreboot: cpu/amd/fam10h-fam15h: Add CMOS option to disable CPB (core boost)

Timothy Pearson (tpearson@raptorengineeringinc.com) gerrit at coreboot.org
Tue Jan 26 21:47:12 CET 2016


Timothy Pearson (tpearson at raptorengineeringinc.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13172

-gerrit

commit 29bad3ca8a19a17ad9ba11c9c0770354ab548a16
Author: Timothy Pearson <tpearson at raptorengineeringinc.com>
Date:   Tue Nov 24 14:12:07 2015 -0600

    cpu/amd/fam10h-fam15h: Add CMOS option to disable CPB (core boost)
    
    On certain systems and CPUs Core Performance Boost (CPB) may cause
    sporadic system lockups.  This issue is also somewhat known on the
    various proprietary BIOSes, therefore it seems to be a hardware
    incompatibility when present.
    
    Allow the user to disable CBP if needed.
    
    Change-Id: Id6395d067d48963f6c084ad0bf79e23419af24d8
    Signed-off-by: Timothy Pearson <tpearson at raptorengineeringinc.com>
---
 src/cpu/amd/family_10h-family_15h/init_cpus.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/src/cpu/amd/family_10h-family_15h/init_cpus.c b/src/cpu/amd/family_10h-family_15h/init_cpus.c
index e2a1bf3..c1ff240 100644
--- a/src/cpu/amd/family_10h-family_15h/init_cpus.c
+++ b/src/cpu/amd/family_10h-family_15h/init_cpus.c
@@ -987,6 +987,7 @@ void cpuSetAMDMSR(uint8_t node_id)
 	u32 platform;
 	uint64_t revision;
 	uint8_t enable_c_states;
+	uint8_t enable_cpb;
 
 	printk(BIOS_DEBUG, "cpuSetAMDMSR ");
 
@@ -1078,6 +1079,19 @@ void cpuSetAMDMSR(uint8_t node_id)
 	enable_c_states = 0;
 #endif
 
+	if (revision & AMD_FAM15_ALL) {
+		enable_cpb = 1;
+		if (get_option(&nvram, "cpu_core_boost") == CB_SUCCESS)
+			enable_cpb = !!nvram;
+
+		if (!enable_cpb) {
+			/* Disable Core Performance Boost */
+			msr = rdmsr(0xc0010015);
+			msr.lo |= (0x1 << 25);		/* CpbDis = 1 */
+			wrmsr(0xc0010015, msr);
+		}
+	}
+
 	printk(BIOS_DEBUG, " done\n");
 }
 



More information about the coreboot-gerrit mailing list