Stefan Reinauer ([email protected]) just uploaded a new patch set to 
gerrit, which you can find at http://review.coreboot.org/2639

-gerrit

commit 24b563dff1348294ceb7d3405229a02d0be253f3
Author: Aaron Durbin <[email protected]>
Date:   Tue Dec 11 17:15:13 2012 -0600

    haswell: Properly Guard Engergy Policy by CPUID
    
    The IA32_ENERGY_PERFORMANCE_BIAS MSR can only be read or written
    to if the CPU supports it. The support is indicated by ECX[3] for
    cpuid(6). Without this guard, some Haswell parts would GP# fault
    in this routine.
    
    No more GP# while running on haswell CRBs.
    
    Change-Id: If41e1e133e5faebb3ed578cba60743ce7e1c196f
    Signed-off-by: Aaron Durbin <[email protected]>
---
 src/cpu/intel/haswell/haswell_init.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/cpu/intel/haswell/haswell_init.c 
b/src/cpu/intel/haswell/haswell_init.c
index 01d151e..9984c55 100644
--- a/src/cpu/intel/haswell/haswell_init.c
+++ b/src/cpu/intel/haswell/haswell_init.c
@@ -404,6 +404,12 @@ static void set_max_ratio(void)
 static void set_energy_perf_bias(u8 policy)
 {
        msr_t msr;
+       int ecx;
+
+       /* Determine if energy efficient policy is supported. */
+       ecx = cpuid_ecx(0x6);
+       if (!(ecx & (1 << 3)))
+               return;
 
        /* Energy Policy is bits 3:0 */
        msr = rdmsr(IA32_ENERGY_PERFORMANCE_BIAS);

-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to