summaryrefslogtreecommitdiffstats
path: root/src/usr/errl
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2019-06-13 14:39:55 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-06-25 16:47:49 -0500
commit79a312ed32a9c19a3420a6d603e76b7a849aec42 (patch)
tree04e052069b1cb906e4779f4f29e1869fd707aa53 /src/usr/errl
parentbd0eb8fcc8d4fe9bf7330484094d556a848a2210 (diff)
downloadtalos-hostboot-79a312ed32a9c19a3420a6d603e76b7a849aec42.tar.gz
talos-hostboot-79a312ed32a9c19a3420a6d603e76b7a849aec42.zip
Clean up the attribute error user details
Moved the structural parts of the errludattribute code into source files, instead of being generated. Now we only pull in the generated code where it is actually useful. This makes updates simpler and faster to compile. Added a couple more attributes to the supported list of displayable values. Improved an error path to get more useful information from unsupported attributes. Change-Id: Ie339e4a1b0a6c8a1d33def92a76e36ba81bab011 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79062 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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/errl')
-rw-r--r--src/usr/errl/errl.mk3
-rw-r--r--src/usr/errl/errludattribute.C83
2 files changed, 85 insertions, 1 deletions
diff --git a/src/usr/errl/errl.mk b/src/usr/errl/errl.mk
index 8cab37324..8caf92216 100644
--- a/src/usr/errl/errl.mk
+++ b/src/usr/errl/errl.mk
@@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
-# Contributors Listed Below - COPYRIGHT 2015,2018
+# Contributors Listed Below - COPYRIGHT 2015,2019
# [+] International Business Machines Corp.
#
#
@@ -41,3 +41,4 @@ OBJS += errludsensor.o
OBJS += errludstate.o
OBJS += errlmanager_common.o
OBJS += errli2c.o
+OBJS += errludattribute.o
diff --git a/src/usr/errl/errludattribute.C b/src/usr/errl/errludattribute.C
new file mode 100644
index 000000000..4f2b322f7
--- /dev/null
+++ b/src/usr/errl/errludattribute.C
@@ -0,0 +1,83 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/errl/errludattribute.C $ */
+/* */
+/* OpenPOWER HostBoot Project */
+/* */
+/* Contributors Listed Below - COPYRIGHT 2019 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* Licensed under the Apache License, Version 2.0 (the "License"); */
+/* you may not use this file except in compliance with the License. */
+/* You may obtain a copy of the License at */
+/* */
+/* http://www.apache.org/licenses/LICENSE-2.0 */
+/* */
+/* Unless required by applicable law or agreed to in writing, software */
+/* distributed under the License is distributed on an "AS IS" BASIS, */
+/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */
+/* implied. See the License for the specific language governing */
+/* permissions and limitations under the License. */
+/* */
+/* IBM_PROLOG_END_TAG */
+#include <stdint.h>
+#include <stdio.h>
+#include <string.h>
+#include <errl/errludattribute.H>
+#include <errl/errlreasoncodes.H>
+#include <targeting/common/targetservice.H>
+#include <targeting/common/trace.H>
+
+namespace ERRORLOG
+{
+using namespace TARGETING;
+extern TARG_TD_t g_trac_errl;
+
+
+//------------------------------------------------------------------------------
+ErrlUserDetailsAttribute::ErrlUserDetailsAttribute(
+ const Target * i_pTarget, uint32_t i_attr)
+ : iv_pTarget(i_pTarget), iv_dataSize(0)
+{
+ // Set up ErrlUserDetails instance variables
+ iv_CompId = ERRL_COMP_ID;
+ iv_Version = 1;
+ iv_SubSection = ERRL_UDT_ATTRIBUTE;
+ // override the default of false
+ iv_merge = true;
+
+ // first, write out the HUID
+ addData(ATTR_HUID);
+ if (i_attr != ATTR_HUID) {
+ addData(i_attr);
+ }
+}
+
+//------------------------------------------------------------------------------
+ErrlUserDetailsAttribute::ErrlUserDetailsAttribute(
+ const Target * i_pTarget)
+ : iv_pTarget(i_pTarget), iv_dataSize(0)
+{
+ // Set up ErrlUserDetails instance variables
+ iv_CompId = ERRL_COMP_ID;
+ iv_Version = 1;
+ iv_SubSection = ERRL_UDT_ATTRIBUTE;
+ // override the default of false
+ iv_merge = true;
+
+ // first, write out the HUID
+ addData(ATTR_HUID);
+}
+
+//------------------------------------------------------------------------------
+ErrlUserDetailsAttribute::~ErrlUserDetailsAttribute()
+{ }
+} // namespace
+
+// Pull in the auto-generated portion
+// ::addData
+// ::dumpAll
+#include <errludattribute_gen.C>
+
OpenPOWER on IntegriCloud