summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorNick Bofferding <bofferdn@us.ibm.com>2018-07-09 17:56:05 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2018-07-17 17:18:04 -0400
commit928ef690c0862878a457a965984ab90efaba3a00 (patch)
tree55592d36bebe2dfccb88d96fa505bf52704ddabe /src/include
parent38834a9cad0bb0929dab348745c296956c71b511 (diff)
downloadtalos-hostboot-928ef690c0862878a457a965984ab90efaba3a00.tar.gz
talos-hostboot-928ef690c0862878a457a965984ab90efaba3a00.zip
Send errors from previous boots as callhome type eSELs
During early boot, Hostboot attempts to resend unacknowledged error logs from prior boots as eSELS, without correponding SELs. BMCs typically require both in order to expose a given error log to a customer. This change morphs errors from prior boots into callhome type logs, so that a simple eSEL will be enough to get the error propagated. Change-Id: If499defe8a39b9254f08392b264d72047b7e5f7c CQ: SW426731 RTC: 193265 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/62079 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/usr/ipmi/ipmisel.H24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/include/usr/ipmi/ipmisel.H b/src/include/usr/ipmi/ipmisel.H
index 7bade7150..8b23259ff 100644
--- a/src/include/usr/ipmi/ipmisel.H
+++ b/src/include/usr/ipmi/ipmisel.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2014,2017 */
+/* Contributors Listed Below - COPYRIGHT 2014,2018 */
/* [+] Google Inc. */
/* [+] International Business Machines Corp. */
/* */
@@ -51,6 +51,18 @@ namespace IPMISEL
MSG_LAST_TYPE = MSG_STATE_SHUTDOWN_SEL,
};
+ /**
+ * @brief data[0/1] format for the MSG_SEND_ESEL message
+ */
+ struct send_esel_data_t
+ {
+ uint8_t callhome; // Whether the ESEL is of callhome type or not
+ uint8_t reserved1[3];
+ uint32_t eid; // Error ID of the error being described
+ uint64_t reserved2;
+
+ } PACKED;
+
typedef struct sel_info
{
uint8_t eventDirType;
@@ -309,12 +321,12 @@ namespace IPMISEL
};
/**
- * @brief parse the msg and call send_esel to send the esel (handles if
- * the SEL reservation is lost)
- * @param[in] i_msg
- * @param[in] i_infoCallHome - informational call-home log
+ * @brief Parse the message and call send_esel to send the eSEL (handles
+ * if the SEL reservation is lost).
+ *
+ * @param[in] i_msg Pointer to message to send. Asserts if nullptr.
*/
- void process_esel(msg_t *i_msg, bool i_infoCallHome);
+ void process_esel(msg_t *i_msg);
/**
* @brief do the actual ipmi calls to send the esel data to the bmc
OpenPOWER on IntegriCloud