///\r
typedef union {\r
struct {\r
- UINT32 Year:16;\r
- UINT32 Day:8;\r
- UINT32 Month:8;\r
+ UINT32 Year : 16;\r
+ UINT32 Day : 8;\r
+ UINT32 Month : 8;\r
} Bits;\r
- UINT32 Uint32;\r
+ UINT32 Uint32;\r
} CPU_MICROCODE_DATE;\r
\r
///\r
///\r
typedef union {\r
struct {\r
- UINT32 Stepping:4;\r
- UINT32 Model:4;\r
- UINT32 Family:4;\r
- UINT32 Type:2;\r
- UINT32 Reserved1:2;\r
- UINT32 ExtendedModel:4;\r
- UINT32 ExtendedFamily:8;\r
- UINT32 Reserved2:4;\r
+ UINT32 Stepping : 4;\r
+ UINT32 Model : 4;\r
+ UINT32 Family : 4;\r
+ UINT32 Type : 2;\r
+ UINT32 Reserved1 : 2;\r
+ UINT32 ExtendedModel : 4;\r
+ UINT32 ExtendedFamily : 8;\r
+ UINT32 Reserved2 : 4;\r
} Bits;\r
- UINT32 Uint32;\r
+ UINT32 Uint32;\r
} CPU_MICROCODE_PROCESSOR_SIGNATURE;\r
\r
#pragma pack (1)\r
///\r
/// Version number of the update header\r
///\r
- UINT32 HeaderVersion;\r
+ UINT32 HeaderVersion;\r
///\r
/// Unique version number for the update, the basis for the update\r
/// signature provided by the processor to indicate the current update\r
/// value in this field cannot be used for processor stepping identification\r
/// alone. This is a signed 32-bit number.\r
///\r
- UINT32 UpdateRevision;\r
+ UINT32 UpdateRevision;\r
///\r
/// Date of the update creation in binary format: mmddyyyy (e.g.\r
/// 07/18/98 is 07181998H).\r
///\r
- CPU_MICROCODE_DATE Date;\r
+ CPU_MICROCODE_DATE Date;\r
///\r
/// Extended family, extended model, type, family, model, and stepping\r
/// of processor that requires this particular update revision (e.g.,\r
/// this field exactly corresponds to the bit representations returned by\r
/// the CPUID instruction.\r
///\r
- CPU_MICROCODE_PROCESSOR_SIGNATURE ProcessorSignature;\r
+ CPU_MICROCODE_PROCESSOR_SIGNATURE ProcessorSignature;\r
///\r
/// Checksum of Update Data and Header. Used to verify the integrity of\r
/// the update header and data. Checksum is correct when the\r
/// Signature Table) that comprise the microcode update result in\r
/// 00000000H.\r
///\r
- UINT32 Checksum;\r
+ UINT32 Checksum;\r
///\r
/// Version number of the loader program needed to correctly load this\r
/// update. The initial version is 00000001H\r
///\r
- UINT32 LoaderRevision;\r
+ UINT32 LoaderRevision;\r
///\r
/// Platform type information is encoded in the lower 8 bits of this 4-\r
/// byte field. Each bit represents a particular platform type for a given\r
/// update is appropriate to load on a processor. Multiple bits may be set\r
/// representing support for multiple platform IDs.\r
///\r
- UINT32 ProcessorFlags;\r
+ UINT32 ProcessorFlags;\r
///\r
/// Specifies the size of the encrypted data in bytes, and must be a\r
/// multiple of DWORDs. If this value is 00000000H, then the microcode\r
/// update encrypted data is 2000 bytes (or 500 DWORDs).\r
///\r
- UINT32 DataSize;\r
+ UINT32 DataSize;\r
///\r
/// Specifies the total size of the microcode update in bytes. It is the\r
/// summation of the header size, the encrypted data size and the size of\r
/// the optional extended signature table. This value is always a multiple\r
/// of 1024.\r
///\r
- UINT32 TotalSize;\r
+ UINT32 TotalSize;\r
///\r
/// Reserved fields for future expansion.\r
///\r
- UINT8 Reserved[12];\r
+ UINT8 Reserved[12];\r
} CPU_MICROCODE_HEADER;\r
\r
///\r
/// Signature[n], processor flags[n] and checksum[n]) that exist in this\r
/// microcode update\r
///\r
- UINT32 ExtendedSignatureCount;\r
+ UINT32 ExtendedSignatureCount;\r
///\r
/// Checksum of update extended processor signature table. Used to\r
/// verify the integrity of the extended processor signature table.\r
/// comprise the extended processor signature table results in\r
/// 00000000H.\r
///\r
- UINT32 ExtendedChecksum;\r
+ UINT32 ExtendedChecksum;\r
///\r
/// Reserved fields.\r
///\r
- UINT8 Reserved[12];\r
+ UINT8 Reserved[12];\r
} CPU_MICROCODE_EXTENDED_TABLE_HEADER;\r
\r
///\r
/// this field exactly corresponds to the bit representations returned by\r
/// the CPUID instruction.\r
///\r
- CPU_MICROCODE_PROCESSOR_SIGNATURE ProcessorSignature;\r
+ CPU_MICROCODE_PROCESSOR_SIGNATURE ProcessorSignature;\r
///\r
/// Platform type information is encoded in the lower 8 bits of this 4-\r
/// byte field. Each bit represents a particular platform type for a given\r
/// update is appropriate to load on a processor. Multiple bits may be set\r
/// representing support for multiple platform IDs.\r
///\r
- UINT32 ProcessorFlag;\r
+ UINT32 ProcessorFlag;\r
///\r
/// Used by utility software to decompose a microcode update into\r
/// multiple microcode updates where each of the new updates is\r
/// summation of all DWORDs that comprise the created Extended\r
/// Processor Patch results in 00000000H.\r
///\r
- UINT32 Checksum;\r
+ UINT32 Checksum;\r
} CPU_MICROCODE_EXTENDED_TABLE;\r
\r
#pragma pack ()\r