#define CPUID_FAMILY_BOBCAT 0x14
#define CPUID_FAMILY_BULLDOZER 0x15 // BD PD SR EX
#define CPUID_FAMILY_KYOTO 0x16 // Note: Jaguar microarch
+#define CPUID_FAMILY_ZEN 0x17
/* Effective VIA CPU Families */
#define CPUID_FAMILY_C7 6
#define CPUID_MODEL_STEAMROLLER_30 0x30 // family == CPUID_FAMILY_BULLDOZER
#define CPUID_MODEL_EXCAVATOR_60 0x60 // family == CPUID_FAMILY_BULLDOZER
#define CPUID_MODEL_EXCAVATOR_6F 0x6F // Max Excavator model defined in BKDG
+#define CPUID_MODEL_ZEN_00 0x00 // family == CPUID_FAMILY_ZEN
+#define CPUID_MODEL_ZEN_0F 0x0F // Max Zen model defined in BKDG
/* VIA model information */
#define CPUID_MODEL_NANO 15 // Isaiah
return CPUID_EFFECTIVE_FAMILY(eax) == CPUID_FAMILY_KYOTO;
}
+static INLINE Bool
+CPUID_FAMILY_IS_ZEN(uint32 eax)
+{
+ return CPUID_EFFECTIVE_FAMILY(eax) == CPUID_FAMILY_ZEN;
+}
/*
* AMD Barcelona (of either Opteron or Phenom kind).
}
+static INLINE Bool
+CPUID_MODEL_IS_ZEN(uint32 eax)
+{
+ return CPUID_EFFECTIVE_FAMILY(eax) == CPUID_FAMILY_ZEN &&
+ CPUID_EFFECTIVE_MODEL(eax) <= CPUID_MODEL_ZEN_0F;
+}
#define CPUID_TYPE_PRIMARY 0
#define CPUID_TYPE_OVERDRIVE 1