Message ID | 20200826183749.143980-11-grimm@linux.ibm.com |
---|---|
State | Changes Requested |
Headers | show |
Series | Ultravisor support in skiboot | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | success | Successfully applied on branch master (abe4c4799ffee4be12674ad59fc0bc521b0724f3) |
snowpatch_ozlabs/snowpatch_job_snowpatch-skiboot | success | Test snowpatch/job/snowpatch-skiboot on branch master |
snowpatch_ozlabs/snowpatch_job_snowpatch-skiboot-dco | success | Signed-off-by present |
diff --git a/hw/imc.c b/hw/imc.c index 927fba0b..f6351225 100644 --- a/hw/imc.c +++ b/hw/imc.c @@ -527,6 +527,16 @@ void imc_init(void) struct dt_node *dev; int err_flag = -1; + /* + * If MSR(S) bit is set, HOMER and IMC scoms are only accessible via + * ultra call. The kernels lacks support, so don't create them. + * + * At this point uv_present can't be used since uv_init() + * is called much later, so check the MSR bit. + */ + if (is_msr_bit_set(MSR_S)) + return; + if (proc_chip_quirks & QUIRK_MAMBO_CALLOUTS) { dev = dt_find_compatible_node(dt_root, NULL, "ibm,opal-in-memory-counters");