aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorVasant Hegde <hegdevasant@linux.vnet.ibm.com>2019-07-12 16:47:58 +0530
committerOliver O'Halloran <oohall@gmail.com>2019-08-15 17:54:15 +1000
commit19a8694fb204d7532f0d9de33fa6334535733bed (patch)
tree3911cc0afe0c503ab970cc809245f6c0e81b7264 /include
parent3d85abd9d3e15885ef4c2be08d2e89d4d4247d6d (diff)
downloadskiboot-19a8694fb204d7532f0d9de33fa6334535733bed.zip
skiboot-19a8694fb204d7532f0d9de33fa6334535733bed.tar.gz
skiboot-19a8694fb204d7532f0d9de33fa6334535733bed.tar.bz2
MPIPL: Add OPAL API to query saved tags
Pre-MPIPL kernel saves various information required to create vmcore in metadata area and passes metadata area pointer to OPAL. OPAL will preserve this pointer across MPIPL. Post MPIPL kernel will request for saved tags via this API. Kernel also needs below tags: - Saved CPU registers data to access CPU registers - OPAL metadata area to create opalcore Format: opal_mpipl_query_tag(enum opal_mpipl_tags tag, uint64_t *tag_val) tag : OPAL_MPIPL_TAG_CPU Pointer to CPU register data content metadata area OPAL_MPIPL_TAG_OPAL Pointer to OPAL metadata area OPAL_MPIPL_TAG_KERNEL During first boot, kernel will setup its metadata area and asks OPAL to preserve metadata area pointer across MPIPL. Post MPIPL kernel calls this API to get metadata pointer and it will use that pointer to retrieve metadata and create dump. OPAL_MPIPL_TAG_BOOT_MEM During MPIPL registration kernel will specify how much memory firmware can use for Post MPIPL load. Post MPIPL petitboot kernel will query for this tag to get boot memory size. Return values: OPAL_SUCCESS : Operation success OPAL_PARAMETER : Invalid parameter Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com> [oliver: rebased] Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/opal-api.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/opal-api.h b/include/opal-api.h
index 7d8e046..ee66bbb 100644
--- a/include/opal-api.h
+++ b/include/opal-api.h
@@ -221,7 +221,8 @@
#define OPAL_NPU_MEM_RELEASE 172
#define OPAL_MPIPL_UPDATE 173
#define OPAL_MPIPL_REGISTER_TAG 174
-#define OPAL_LAST 174
+#define OPAL_MPIPL_QUERY_TAG 175
+#define OPAL_LAST 175
#define QUIESCE_HOLD 1 /* Spin all calls at entry */
#define QUIESCE_REJECT 2 /* Fail all calls with OPAL_BUSY */