aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMadhavan Srinivasan <maddy@linux.ibm.com>2020-09-29 17:27:12 +0530
committerVasant Hegde <hegdevasant@linux.vnet.ibm.com>2021-06-24 16:54:48 +0530
commit6371a030fa843680fb755a3c7bfd825cbe061395 (patch)
tree329e43a5c549dc83c2f914e4fbc60827e1dcf71a
parent1e78fc86008f935e74b97a0e6040566ac26ebb22 (diff)
downloadskiboot-6371a030fa843680fb755a3c7bfd825cbe061395.zip
skiboot-6371a030fa843680fb755a3c7bfd825cbe061395.tar.gz
skiboot-6371a030fa843680fb755a3c7bfd825cbe061395.tar.bz2
hw/imc: move imc_init() towards end main_cpu_entry()
[ Upstream commit fbcbd4e47cdcf00fffc7665a297c875ce9ef951a ] imc_init() checks for the 24x7 microcode state at boot to check whether the microcode is in proper state (running or paused). But in a larger system, loading of 24x7 microcode by OCC gets delayed. Because of this, imc_init() removes imc devices from the device tree. Moving imc_init() function towards end of the main_cpu_entry() works around this. Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com> Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
-rw-r--r--core/init.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/core/init.c b/core/init.c
index 4cb8f98..d5ba67e 100644
--- a/core/init.c
+++ b/core/init.c
@@ -1322,9 +1322,6 @@ void __noreturn __nomcount main_cpu_entry(const void *fdt)
/* NX init */
nx_init();
- /* Init In-Memory Collection related stuff (load the IMC dtb into memory) */
- imc_init();
-
/* Probe PHB3 on P8 */
probe_phb3();
@@ -1366,6 +1363,9 @@ void __noreturn __nomcount main_cpu_entry(const void *fdt)
/* Add the list of interrupts going to OPAL */
add_opal_interrupts();
+ /* Init In-Memory Collection related stuff (load the IMC dtb into memory) */
+ imc_init();
+
/* Disable protected execution facility in BML */
cpu_disable_pef();