[coreboot-gerrit] Patch set updated for coreboot: Don't read incorrect cpuid leaf when testing cpu family

Ryan Salsamendi (rsalsamendi@hotmail.com) gerrit at coreboot.org
Fri Jun 24 21:47:35 CEST 2016


Ryan Salsamendi (rsalsamendi at hotmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15346

-gerrit

commit ea12bb533966e8ff848f74abb1130250f11ae594
Author: Ryan Salsamendi <rsalsamendi at hotmail.com>
Date:   Fri Jun 24 12:01:11 2016 -0700

    Don't read incorrect cpuid leaf when testing cpu family
    
    Reading cpuid leaf 0 is incorrect for testing cpu family.
    Use leaf 1 instead. See Intel SDM 2a Table 3-17.
    
    Change-Id: Ib2c95cdd1fb93db06a08ecd7266f6b88700caf83
    Signed-off-by: Ryan Salsamendi <rsalsamendi at hotmail.com>
---
 src/northbridge/intel/sandybridge/raminit.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/northbridge/intel/sandybridge/raminit.c b/src/northbridge/intel/sandybridge/raminit.c
index cf66a0d..4ac7f3d 100644
--- a/src/northbridge/intel/sandybridge/raminit.c
+++ b/src/northbridge/intel/sandybridge/raminit.c
@@ -913,7 +913,7 @@ static void dram_timing_regs(ramctr_timing * ctrl)
 		// ODT stretch
 		reg = 0;
 
-		cpures = cpuid(0);
+		cpures = cpuid(1);
 		cpu = cpures.eax;
 		if (IS_IVY_CPU(cpu)
 		    || (IS_SANDY_CPU(cpu) && IS_SANDY_CPU_D2(cpu))) {
@@ -3779,7 +3779,7 @@ static void set_4f8c(void)
 	struct cpuid_result cpures;
 	u32 cpu;
 
-	cpures = cpuid(0);
+	cpures = cpuid(1);
 	cpu = (cpures.eax);
 	if (IS_SANDY_CPU(cpu) && (IS_SANDY_CPU_D0(cpu) || IS_SANDY_CPU_D1(cpu))) {
 		MCHBAR32(0x4f8c) = 0x141D1519;



More information about the coreboot-gerrit mailing list