summaryrefslogtreecommitdiffstats
path: root/include/opal-api.h
diff options
context:
space:
mode:
authorVipin K Parashar <vipin@linux.vnet.ibm.com>2015-07-29 23:28:43 +0530
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-07-31 15:32:43 +1000
commit36c213d95f971804388c336213d636277b0f40f5 (patch)
treed325c6ebec923a8941315a0c2122fa4e0715de16 /include/opal-api.h
parentc37f122d3ca2e7964f971a98c5acbec9435c5616 (diff)
downloadblackbird-skiboot-36c213d95f971804388c336213d636277b0f40f5.tar.gz
blackbird-skiboot-36c213d95f971804388c336213d636277b0f40f5.zip
opal-api: Add OPAL call to handle abnormal reboots.
This patch adds a new OPAL call OPAL_CEC_REBOOT2 which will be used to handle abnormal reboot/termination by kernel host. This call will allow host kernel to pass reboot type and additional debug data which needs to be captured/saved somewhere (for later analysis) before going down. Currently it will support two reboot types (0). normal reboot, that will behave similar to that of opal_cec_reboot() call, and (1). platform error reboot, that will trigger a system checkstop using xscom address and FIR bit information obtained via device-tree property 'ibm,sw-checkstop-fir'. For unsupported reboot type, this call will do nothing and return with OPAL_UNSUPPORTED. In future, we can overload this call to support additional reboot types. Signed-off-by: Vipin K Parashar <vipin@linux.vnet.ibm.com> Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> Reviewed-by: Samuel Mendoza-Jonas <sam.mj@au1.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include/opal-api.h')
-rw-r--r--include/opal-api.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/opal-api.h b/include/opal-api.h
index bfad5896..e22370f7 100644
--- a/include/opal-api.h
+++ b/include/opal-api.h
@@ -161,7 +161,8 @@
#define OPAL_PRD_MSG 113
#define OPAL_LEDS_GET_INDICATOR 114
#define OPAL_LEDS_SET_INDICATOR 115
-#define OPAL_LAST 115
+#define OPAL_CEC_REBOOT2 116
+#define OPAL_LAST 116
/* Device tree flags */
@@ -972,6 +973,12 @@ struct opal_i2c_request {
__be64 buffer_ra; /* Buffer real address */
};
+/* Argument to OPAL_CEC_REBOOT2() */
+enum {
+ OPAL_REBOOT_NORMAL = 0,
+ OPAL_REBOOT_PLATFORM_ERROR,
+};
+
#endif /* __ASSEMBLY__ */
#endif /* __OPAL_API_H */
OpenPOWER on IntegriCloud