*/
#include "arch/x86/cpuid.hh"
+
#include "base/bitfield.hh"
#include "cpu/thread_context.hh"
enum StandardCpuidFunction {
VendorAndLargestStdFunc,
FamilyModelStepping,
+ CacheAndTLB,
+ SerialNumber,
+ CacheParams,
+ MonitorMwait,
+ ThermalPowerMgmt,
+ ExtendedFeatures,
NumStandardCpuidFuncs
};
L2L3CacheAndL2TLB,
APMInfo,
LongModeAddressSize,
-
+
/*
* The following are defined by the spec but not yet implemented
*/
funcNum);
return false;
}
- } else if(family == 0x0000) {
+ } else if (family == 0x0000) {
// The standard functions
switch (funcNum) {
case VendorAndLargestStdFunc:
break;
case FamilyModelStepping:
result = CpuidResult(0x00020f51, 0x00000805,
- 0xe7dbfbff, 0x04000209);
+ 0xe7dbfbff, 0x00000209);
+ break;
+ case ExtendedFeatures:
+ result = CpuidResult(0x00000000, 0x01800000,
+ 0x00000000, 0x00000000);
break;
default:
warn("x86 cpuid family 0x0000: unimplemented function %u",