From 682355ab16a946dce3f989b9581196a888b17ee8 Mon Sep 17 00:00:00 2001 From: Barnali Sarkar Date: Tue, 6 Jun 2017 15:22:30 +0530 Subject: [PATCH] soc/intel/skylake: Move update microcode from cbfs to mp_ops callbacks FIT is already loading microcode before CPU Reset. So, we need not update the microcode again in RO FW in bootblock. But we need to update in RW FW if there is any new ucode version. So, added the update microcode function in get_microcode_info callback before MP Init to make sure BSP is using the microcode from cbfs. BUG=none BRANCH=none TEST=Build and Boot poppy Change-Id: I5606563726c00974f00285acfa435cadc90a085e Signed-off-by: Barnali Sarkar Reviewed-on: https://review.coreboot.org/20051 Reviewed-by: Aaron Durbin Reviewed-by: Furquan Shaikh Tested-by: build bot (Jenkins) Reviewed-by: Subrata Banik --- src/soc/intel/skylake/bootblock/cpu.c | 3 +-- src/soc/intel/skylake/cpu.c | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/soc/intel/skylake/bootblock/cpu.c b/src/soc/intel/skylake/bootblock/cpu.c index 6963b829ea..ee344efb13 100644 --- a/src/soc/intel/skylake/bootblock/cpu.c +++ b/src/soc/intel/skylake/bootblock/cpu.c @@ -16,7 +16,7 @@ #include #include -#include +#include #include #include #include @@ -89,7 +89,6 @@ void bootblock_cpu_init(void) fast_spi_cache_bios_region(); /* Set flex ratio and reset if needed */ set_flex_ratio_to_tdp_nominal(); - intel_update_microcode_from_cbfs(); } void set_max_freq(void) diff --git a/src/soc/intel/skylake/cpu.c b/src/soc/intel/skylake/cpu.c index d1ed146c1b..a40aefcf4f 100644 --- a/src/soc/intel/skylake/cpu.c +++ b/src/soc/intel/skylake/cpu.c @@ -480,6 +480,7 @@ static void get_microcode_info(const void **microcode, int *parallel) microcode_patch = intel_microcode_find(); *microcode = microcode_patch; *parallel = 1; + intel_microcode_load_unlocked(microcode_patch); } static int adjust_apic_id(int index, int apic_id)