#include <asm/tboot.h>
#include <asm/apic.h>
#include <asm/io_apic.h>
+#include <asm/microcode.h>
#include <asm/spec_ctrl.h>
#include <acpi/cpufreq/cpufreq.h>
extern const struct microcode_ops *microcode_ops;
+int microcode_init_intel(void);
+int microcode_init_amd(void);
+
#endif /* ASM_X86_MICROCODE_PRIVATE_H */
#include <xen/vga.h>
#include <asm/e820.h>
#include <asm/edd.h>
+#include <asm/microcode.h>
#include <asm/msr.h>
-#include <asm/processor.h>
static struct file __initdata ucode;
static multiboot_info_t __initdata mbi = {
#include <public/platform.h>
#include <acpi/cpufreq/processor_perf.h>
#include <asm/edd.h>
+#include <asm/microcode.h>
#include <asm/mtrr.h>
#include <asm/io_apic.h>
#include <asm/setup.h>
#include <asm/cpuid.h>
#include <asm/spec_ctrl.h>
#include <asm/guest.h>
+#include <asm/microcode.h>
/* opt_nosmp: If true, secondary processors are ignored. */
static bool __initdata opt_nosmp;
#include <asm/div64.h>
#include <asm/flushtlb.h>
#include <asm/guest.h>
+#include <asm/microcode.h>
#include <asm/msr.h>
#include <asm/mtrr.h>
#include <asm/spec_ctrl.h>
#include <asm/microcode.h>
#include <asm/msr.h>
-#include <asm/processor.h>
#include <asm/pv/domain.h>
#include <asm/pv/shim.h>
#include <asm/setup.h>
#ifndef ASM_X86__MICROCODE_H
#define ASM_X86__MICROCODE_H
+#include <xen/types.h>
#include <xen/percpu.h>
+#include <public/xen.h>
+
struct cpu_signature {
unsigned int sig;
unsigned int pf;
DECLARE_PER_CPU(struct cpu_signature, cpu_sig);
+void microcode_set_module(unsigned int idx);
+int microcode_update(XEN_GUEST_HANDLE_PARAM(const_void), unsigned long len);
+int early_microcode_init(void);
+int microcode_update_one(bool start_update);
+
#endif /* ASM_X86__MICROCODE_H */
#include <xen/types.h>
#include <xen/smp.h>
#include <xen/percpu.h>
-#include <public/xen.h>
#include <asm/types.h>
#include <asm/cpufeature.h>
#include <asm/desc.h>
int guest_rdmsr_xen(const struct vcpu *v, uint32_t idx, uint64_t *val);
int guest_wrmsr_xen(struct vcpu *v, uint32_t idx, uint64_t val);
-void microcode_set_module(unsigned int);
-int microcode_update(XEN_GUEST_HANDLE_PARAM(const_void), unsigned long len);
-int early_microcode_init(void);
-int microcode_update_one(bool start_update);
-int microcode_init_intel(void);
-int microcode_init_amd(void);
-
static inline uint8_t get_cpu_family(uint32_t raw, uint8_t *model,
uint8_t *stepping)
{