X86: fix cpu_phys_address_size()

CPUs with CPUID level >= 0x80000008 can return
the number of physical address bits.

Change-Id: I1c0523b6a091c476af838d173ed9030280360d7f
Signed-off-by: Sven Schnelle <svens@stackframe.org>
Reviewed-on: http://review.coreboot.org/599
Tested-by: build bot (Jenkins)
This commit is contained in:
Sven Schnelle 2012-01-31 22:10:28 +01:00
parent bba0346ef5
commit 7363ca35f0
1 changed files with 1 additions and 1 deletions

View File

@ -144,7 +144,7 @@ int cpu_phys_address_size(void)
if (!(have_cpuid_p())) if (!(have_cpuid_p()))
return 32; return 32;
if (cpu_cpuid_extended_level() > 0x80000008) if (cpu_cpuid_extended_level() >= 0x80000008)
return cpuid_eax(0x80000008) & 0xff; return cpuid_eax(0x80000008) & 0xff;
if (cpuid_eax(1) & (CPUID_FEATURE_PAE | CPUID_FEATURE_PSE36)) if (cpuid_eax(1) & (CPUID_FEATURE_PAE | CPUID_FEATURE_PSE36))