diff options
-rw-r--r-- | bootstub.c | 7 | ||||
-rw-r--r-- | bootstub.h | 4 |
2 files changed, 9 insertions, 2 deletions
@@ -159,10 +159,13 @@ int mrst_identify_cpu(void) u32 regs[4]; cpuid(1, ®s[CR_EAX], ®s[CR_EBX], ®s[CR_ECX], ®s[CR_EDX]); - if ((regs[CR_EAX] & PENWELL_FAMILY) == PENWELL_FAMILY) + + if ((regs[CR_EAX] & CPUID_MASK) == PENWELL_FAMILY) return MRST_CPU_CHIP_PENWELL; - else if ((regs[CR_EAX] & CLOVERVIEW_FAMILY) == CLOVERVIEW_FAMILY) + else if ((regs[CR_EAX] & CPUID_MASK) == CLOVERVIEW_FAMILY) return MRST_CPU_CHIP_CLOVERVIEW; + else if ((regs[CR_EAX] & CPUID_MASK) == VALLEYVIEW2_FAMILY) + return MRST_CPU_CHIP_VALLEYVIEW2; return MRST_CPU_CHIP_LINCROFT; } @@ -4,11 +4,15 @@ #ifndef _BOOT_STUB_HEAD #define _BOOT_STUB_HEAD +#define CPUID_MASK 0xffff0 #define PENWELL_FAMILY 0x20670 #define CLOVERVIEW_FAMILY 0x30650 +#define VALLEYVIEW2_FAMILY 0x30670 + #define MRST_CPU_CHIP_LINCROFT 1 #define MRST_CPU_CHIP_PENWELL 2 #define MRST_CPU_CHIP_CLOVERVIEW 3 +#define MRST_CPU_CHIP_VALLEYVIEW2 4 #define CMDLINE_OFFSET 0x1100000 #define BZIMAGE_SIZE_OFFSET (CMDLINE_OFFSET + CMDLINE_SIZE) |