diff options
author | Norman James <njames@us.ibm.com> | 2014-09-23 14:47:34 -0500 |
---|---|---|
committer | Andrew J. Geissler <andrewg@us.ibm.com> | 2014-12-18 09:13:52 -0600 |
commit | 492738975921b5eeab19573cc47a5536e867cb02 (patch) | |
tree | 5dbaa546c5f6b23231c75c377d99e02814ac01bb /src/usr/errl/plugins | |
parent | 9e91fa4f9e2ce76c458f8839e2f573c3cbc90797 (diff) | |
download | blackbird-hostboot-492738975921b5eeab19573cc47a5536e867cb02.tar.gz blackbird-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.H | 60 |
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)) |