From 492738975921b5eeab19573cc47a5536e867cb02 Mon Sep 17 00:00:00 2001 From: Norman James Date: Tue, 23 Sep 2014 14:47:34 -0500 Subject: 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 Reviewed-by: A. Patrick Williams III Reviewed-by: STEPHEN M. CPREK Reviewed-by: Andrew J. Geissler --- src/include/usr/errl/errlentry.H | 32 ++++++++++++++++++++++++++++++++ src/include/usr/errl/errludcallout.H | 26 +++++++++++++++++++++++++- 2 files changed, 57 insertions(+), 1 deletion(-) (limited to 'src/include/usr/errl') diff --git a/src/include/usr/errl/errlentry.H b/src/include/usr/errl/errlentry.H index 1081f365d..4f164d523 100644 --- a/src/include/usr/errl/errlentry.H +++ b/src/include/usr/errl/errlentry.H @@ -506,6 +506,28 @@ public: i_deconfigState = HWAS::NO_DECONFIG, const HWAS::GARD_ErrorType i_gardErrorType = HWAS::GARD_NULL); + /** + * @brief Add a part callout. + * The i_target is used to identify the associated target. This target + * may not be a FRU + * + * @param[in] i_target The hardware target that owns this part + * @param[in] i_partType The hardware part type + * @param[in] i_priority Priority of the callout + * @param[in] i_deconfigState Enum indicating whether the failing part + * should be deconfigured. + * @param[in] i_gardErrorType To indicate what type of failure occured + * + * @return void + */ + void addPartCallout(const TARGETING::Target *i_target, + const HWAS::partTypeEnum i_partType, + const HWAS::callOutPriority i_priority, + const HWAS::DeconfigEnum + i_deconfigState = HWAS::NO_DECONFIG, + const HWAS::GARD_ErrorType + i_gardErrorType = HWAS::GARD_NULL); + /** * @brief Add a bus callout @@ -605,6 +627,16 @@ private: */ epubSubSystem_t getSubSystem( HWAS::clockTypeEnum i_clockType ) const; + /** + * @brief maps a part type to a subsystem ID + * + * @param[in] i_partType Bus Type. + * + * @return subsystem ID + */ + epubSubSystem_t getSubSystem( HWAS::partTypeEnum i_partType ) const; + + /** * @brief The ErrlManager will call here to ask the * ErrlEntry to assign the time of commit, and to assign diff --git a/src/include/usr/errl/errludcallout.H b/src/include/usr/errl/errludcallout.H index fcbbb6e4f..597a23088 100644 --- a/src/include/usr/errl/errludcallout.H +++ b/src/include/usr/errl/errludcallout.H @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2012,2014 */ +/* Contributors Listed Below - COPYRIGHT 2012,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. */ @@ -82,6 +84,28 @@ private: const HWAS::callOutPriority i_priority, const HWAS::DeconfigEnum i_deconfigState, const HWAS::GARD_ErrorType i_gardErrorType); + /** + * @brief Construct a part callout user detail + * + * @param[in] i_pTargetData The hardware target data + * @param[in] i_targetDataLength length of i_pTargetData + * @param[in] i_partType part type Enum + * @param[in] i_priority Priority of the callout + * @param[in] i_deconfigState Enum indicating whether the failing part + * should be deconfigured. + * @param[in] i_gardErrorType To indicate what type of failure occured + * + * @return void + */ + ErrlUserDetailsCallout( + const void *i_pTargetData, + uint32_t i_targetDataLength, + const HWAS::partTypeEnum i_partType, + const HWAS::callOutPriority i_priority, + const HWAS::DeconfigEnum i_deconfigState, + const HWAS::GARD_ErrorType i_gardErrorType); + + /** * @brief Construct a bus callout user detail * -- cgit v1.2.1