aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/cpu.c4
-rw-r--r--doc/opal-api/opal-reinit-cpus-70.txt2
-rw-r--r--doc/opal-api/power9-changes.txt5
3 files changed, 10 insertions, 1 deletions
diff --git a/core/cpu.c b/core/cpu.c
index 2084150..f33ac48 100644
--- a/core/cpu.c
+++ b/core/cpu.c
@@ -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
----