diff options
Diffstat (limited to 'src/cpu/intel/model_1067x/mp_init.c')
-rw-r--r-- | src/cpu/intel/model_1067x/mp_init.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/cpu/intel/model_1067x/mp_init.c b/src/cpu/intel/model_1067x/mp_init.c index ff6cbec8dc..fd6a82ac17 100644 --- a/src/cpu/intel/model_1067x/mp_init.c +++ b/src/cpu/intel/model_1067x/mp_init.c @@ -9,11 +9,10 @@ #include <device/device.h> /* Parallel MP initialization support. */ -static const void *microcode_patch; - static void pre_mp_init(void) { - intel_microcode_load_unlocked(microcode_patch); + const void *patch = intel_microcode_find(); + intel_microcode_load_unlocked(patch); /* Setup MTRRs based on physical address size. */ x86_setup_mtrrs_with_detect(); @@ -32,7 +31,7 @@ static int get_cpu_count(void) static void get_microcode_info(const void **microcode, int *parallel) { - *microcode = microcode_patch; + *microcode = intel_microcode_find(); *parallel = !intel_ht_supported(); } @@ -98,8 +97,6 @@ static const struct mp_ops mp_ops = { void mp_init_cpus(struct bus *cpu_bus) { - microcode_patch = intel_microcode_find(); - if (mp_init_with_smm(cpu_bus, &mp_ops)) printk(BIOS_ERR, "MP initialization failure.\n"); } |