* Drop unused include in private.h.
* Used explicit width integers for Intel header fields.
* Adjust comment to better describe the extended header.
* Drop unnecessary __packed attribute for AMD header.
* Fix types and style.
No functional change.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
#define pr_debug(x...) ((void)0)
-struct __packed equiv_cpu_entry {
+struct equiv_cpu_entry {
uint32_t installed_cpu;
uint32_t fixed_errata_mask;
uint32_t fixed_errata_compare;
smp_processor_id(), csig->rev);
}
-static bool_t verify_patch_size(uint32_t patch_size)
+static bool verify_patch_size(uint32_t patch_size)
{
uint32_t max_size;
#define F17H_MPB_MAX_SIZE 3200
#define F19H_MPB_MAX_SIZE 4800
- switch (boot_cpu_data.x86)
+ switch ( boot_cpu_data.x86 )
{
case 0x14:
max_size = F14H_MPB_MAX_SIZE;
break;
}
- return (patch_size <= max_size);
+ return patch_size <= max_size;
}
static bool check_final_patch_levels(const struct cpu_signature *sig)
#define pr_debug(x...) ((void)0)
struct microcode_patch {
- unsigned int hdrver;
- unsigned int rev;
+ uint32_t hdrver;
+ uint32_t rev;
uint16_t year;
uint8_t day;
uint8_t month;
- unsigned int sig;
- unsigned int cksum;
- unsigned int ldrver;
+ uint32_t sig;
+ uint32_t cksum;
+ uint32_t ldrver;
/*
* Microcode for the Pentium Pro and II had all further fields in the
* header reserved, had a fixed datasize of 2000 and totalsize of 2048,
* and didn't use platform flags despite the availability of the MSR.
*/
- unsigned int pf;
- unsigned int datasize;
- unsigned int totalsize;
- unsigned int reserved[3];
+ uint32_t pf;
+ uint32_t datasize;
+ uint32_t totalsize;
+ uint32_t reserved[3];
/* Microcode payload. Format is propriety and encrypted. */
uint8_t data[];
-};
-/* microcode format is extended from prescott processors */
+ /* Extended header (iff totalsize > datasize, P4 Prescott and later) */
+};
struct extended_sigtable {
- unsigned int count;
- unsigned int cksum;
- unsigned int reserved[3];
+ uint32_t count;
+ uint32_t cksum;
+ uint32_t rsvd[3];
struct {
- unsigned int sig;
- unsigned int pf;
- unsigned int cksum;
+ uint32_t sig;
+ uint32_t pf;
+ uint32_t cksum;
} sigs[];
};
#ifndef ASM_X86_MICROCODE_PRIVATE_H
#define ASM_X86_MICROCODE_PRIVATE_H
-#include <xen/types.h>
-
#include <asm/microcode.h>
enum microcode_match_result {