aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>2015-03-05 10:34:34 +0530
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-03-17 14:54:32 +1100
commita953795d2b4ed8accdb87c6535228946b66b7f1f (patch)
treea88cab19ee6dfbd1a07eed17a3ef38bbd9108b4b /core
parent7a94ba23741fd02ef4ee2a29cfce124db2bbc617 (diff)
downloadskiboot-a953795d2b4ed8accdb87c6535228946b66b7f1f.zip
skiboot-a953795d2b4ed8accdb87c6535228946b66b7f1f.tar.gz
skiboot-a953795d2b4ed8accdb87c6535228946b66b7f1f.tar.bz2
opal: Enhance HMI event structure to accommodate checkstop info.
Enhance the HMI event structure to accommodate CORE/NX check stop error information and bump up the HMI event version to V2. /* version 2 and later */ union { /* * checkstop info (Core/NX). * Valid for OpalHMI_ERROR_MALFUNC_ALERT. */ struct { uint8_t xstop_type; /* enum OpalHMI_XstopType */ uint8_t reserved_1[3]; __be32 xstop_reason; union { __be32 pir; /* for CHECKSTOP_TYPE_CORE */ __be32 chip_id; /* for CHECKSTOP_TYPE_NX */ } u; } xstop_error; } u; This patch just adds new fields to HMI event structure. The subsequent patches will implement the logic to identify reason for CORE/NX checkstop. Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core')
-rw-r--r--core/hmi.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/core/hmi.c b/core/hmi.c
index 96f1cbe..200a890 100644
--- a/core/hmi.c
+++ b/core/hmi.c
@@ -338,6 +338,12 @@ static int64_t opal_handle_hmi(void)
int rc = OPAL_SUCCESS;
struct OpalHMIEvent hmi_evt;
+ /*
+ * Compiled time check to see size of OpalHMIEvent do not exceed
+ * that of struct opal_msg.
+ */
+ BUILD_ASSERT(sizeof(struct opal_msg) >= sizeof(struct OpalHMIEvent));
+
memset(&hmi_evt, 0, sizeof(struct OpalHMIEvent));
hmi_evt.version = OpalHMIEvt_V1;