summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/plugins
diff options
context:
space:
mode:
authorNorman James <njames@us.ibm.com>2014-09-23 14:47:34 -0500
committerAndrew J. Geissler <andrewg@us.ibm.com>2014-12-18 09:13:52 -0600
commit492738975921b5eeab19573cc47a5536e867cb02 (patch)
tree5dbaa546c5f6b23231c75c377d99e02814ac01bb /src/usr/errl/plugins
parent9e91fa4f9e2ce76c458f8839e2f573c3cbc90797 (diff)
downloadtalos-hostboot-492738975921b5eeab19573cc47a5536e867cb02.tar.gz
talos-hostboot-492738975921b5eeab19573cc47a5536e867cb02.zip
Added callout interface for parts such as PNOR and SBE
Parts supported for callout are PNOR, SBE, VRM, GPIO, etc Change-Id: I6734d58e8e44a7bfd71e87cc4f910bce9473f86d RTC: 109945 CMVC-Coreq: 945677 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13547 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: STEPHEN M. CPREK <smcprek@us.ibm.com> Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com>
Diffstat (limited to 'src/usr/errl/plugins')
-rw-r--r--src/usr/errl/plugins/errludcallout.H60
1 files changed, 59 insertions, 1 deletions
diff --git a/src/usr/errl/plugins/errludcallout.H b/src/usr/errl/plugins/errludcallout.H
index 9b58e5b66..fad693e2d 100644
--- a/src/usr/errl/plugins/errludcallout.H
+++ b/src/usr/errl/plugins/errludcallout.H
@@ -5,7 +5,9 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012,2014 */
+/* Contributors Listed Below - COPYRIGHT 2013,2014 */
+/* [+] 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. */
@@ -126,6 +128,62 @@ case HWAS::_type: i_parser.PrintString( "GARD Error Type", #_type); break;
break; // CLOCK_CALLOUT
}
+ case HWAS::PART_CALLOUT:
+ {
+ switch (ntohl(pData->partType))
+ {
+#define case_PART_TYPE(_type) \
+case HWAS::_type: i_parser.PrintString( "Part Type", #_type); break;
+ case_PART_TYPE(FLASH_CONTROLLER_PART_TYPE)
+ case_PART_TYPE(PNOR_PART_TYPE)
+ case_PART_TYPE(SBE_SEEPROM_PART_TYPE)
+ case_PART_TYPE(BOARD_VPD_PART_TYPE)
+ case_PART_TYPE(LPC_SLAVE_PART_TYPE)
+ case_PART_TYPE(CENTAUR_GPIO_EXPANDER_PART_TYPE)
+ case_PART_TYPE(VOLTAGE_REGULATOR_PART_TYPE)
+ default:
+ i_parser.PrintNumber( "Part Type", "UNKNOWN: 0x%X",
+ ntohl(pData->partType) );
+ } // switch partType
+#undef case_PART_TYPE
+ switch (ntohl(pData->partDeconfigState))
+ {
+#define case_DECONFIG_STATE(_type) \
+case HWAS::_type: i_parser.PrintString( "Deconfig State", #_type); break;
+ case_DECONFIG_STATE(NO_DECONFIG)
+ case_DECONFIG_STATE(DECONFIG)
+ case_DECONFIG_STATE(DELAYED_DECONFIG)
+ default:
+ i_parser.PrintNumber( "Deconfig State", "UNKNOWN: 0x%X",
+ ntohl(pData->partDeconfigState) );
+ break;
+ } // switch partDeconfigState
+#undef case_DECONFIG_STATE
+ switch (ntohl(pData->partGardErrorType))
+ {
+#define case_GARD_ERROR_TYPE(_type) \
+case HWAS::_type: i_parser.PrintString( "GARD Error Type", #_type); break;
+ case_GARD_ERROR_TYPE(GARD_NULL)
+ case_GARD_ERROR_TYPE(GARD_User_Manual)
+ case_GARD_ERROR_TYPE(GARD_Unrecoverable)
+ case_GARD_ERROR_TYPE(GARD_Fatal)
+ case_GARD_ERROR_TYPE(GARD_Predictive)
+ case_GARD_ERROR_TYPE(GARD_Power)
+ case_GARD_ERROR_TYPE(GARD_PHYP)
+ case_GARD_ERROR_TYPE(GARD_Void)
+ default:
+ i_parser.PrintNumber( "Deconfig State", "UNKNOWN: 0x%X",
+ ntohl(pData->partGardErrorType) );
+ break;
+ } // switch partGardErrorType
+#undef case_GARD_ERROR_TYPE
+ // what follows the pData structure is one entity path
+ // print it out
+ uint8_t *l_ptr = reinterpret_cast<uint8_t *>(pData+1);
+ printEntityPath(l_ptr, i_parser, "Target");
+
+ break; // PART_CALLOUT
+ }
case HWAS::BUS_CALLOUT:
{
switch (ntohl(pData->busType))
OpenPOWER on IntegriCloud