aboutsummaryrefslogtreecommitdiff
path: root/core/init.c
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2017-09-14 21:13:46 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-09-28 00:30:02 -0500
commitcca6c3408711a8971dfc8c3331d381741012775f (patch)
tree77604854989d034b1a8991d455da5f80d3559b82 /core/init.c
parentab101cb041a985f99c9e05977d4d43ad4baaeef8 (diff)
downloadskiboot-cca6c3408711a8971dfc8c3331d381741012775f.zip
skiboot-cca6c3408711a8971dfc8c3331d381741012775f.tar.gz
skiboot-cca6c3408711a8971dfc8c3331d381741012775f.tar.bz2
cpu: idle POWER9 power management implementation
Add pm idle support to POWER9. IPIs are implemented with doorbells. POWER9 can use the EC=ESL=0 (lite) stop when sreset is not available. EC=ESL=1 state with RL=3 is enabled when we have a sreset wakeup. Deep idle states are not implemented. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/init.c')
-rw-r--r--core/init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/core/init.c b/core/init.c
index be49c3f..89a2758 100644
--- a/core/init.c
+++ b/core/init.c
@@ -928,6 +928,8 @@ void __noreturn __nomcount main_cpu_entry(const void *fdt)
/* Initialize the rest of the cpu thread structs */
init_all_cpus();
+ if (proc_gen == proc_gen_p9)
+ cpu_set_ipi_enable(true);
/* Allocate our split trace buffers now. Depends add_opal_node() */
init_trace_buffers();