diff options
-rw-r--r-- | core/cpu.c | 4 | ||||
-rw-r--r-- | doc/opal-api/opal-reinit-cpus-70.txt | 2 | ||||
-rw-r--r-- | doc/opal-api/power9-changes.txt | 5 |
3 files changed, 10 insertions, 1 deletions
@@ -879,8 +879,10 @@ static int64_t opal_reinit_cpus(uint64_t flags) } /* Any flags left ? */ - if (flags != 0) + if (flags != 0 && proc_gen == proc_gen_p8) rc = slw_reinit(flags); + else if (flags != 0) + rc = OPAL_UNSUPPORTED; /* And undo the above */ lock(&reinit_lock); diff --git a/doc/opal-api/opal-reinit-cpus-70.txt b/doc/opal-api/opal-reinit-cpus-70.txt index 27f6f2e..bf9b238 100644 --- a/doc/opal-api/opal-reinit-cpus-70.txt +++ b/doc/opal-api/opal-reinit-cpus-70.txt @@ -22,6 +22,8 @@ flags will return OPAL_UNSUPPORTED. On POWER8 CPUs, only OPAL_REINIT_CPUS_HILE_BE and OPAL_REINIT_CPUS_HILE_LE are support and other bits *MUST NOT* be set. +On POWER9 CPUs, other flags may be supported in the future. + Returns: - OPAL_SUCCESS - OPAL_UNSUPPORTED diff --git a/doc/opal-api/power9-changes.txt b/doc/opal-api/power9-changes.txt index 1935e12..cf354d6 100644 --- a/doc/opal-api/power9-changes.txt +++ b/doc/opal-api/power9-changes.txt @@ -10,6 +10,11 @@ parts of the OPAL API. Eventually, when the kernel drops support for POWER8 and before, we can then remove the associated kernel code too. +OPAL_REINIT_CPUS +---------------- +Can now be extended beyond HILE BE/LE bits. If invalid flags are set on +POWER9, OPAL_UNSUPPORTED will be returned. + TODO ---- |