summaryrefslogtreecommitdiffstats
path: root/src/usr/htmgt/occError.H
diff options
context:
space:
mode:
authorChris Cain <cjcain@us.ibm.com>2015-02-24 16:13:42 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2015-02-28 05:53:20 -0600
commitf3d348bde5bd0fbd9a707fd1635bcb3a90d9210d (patch)
tree52961091c8a645eb99e3adc1d88d59d6687dc162 /src/usr/htmgt/occError.H
parent29581aca6a1ed02d3374e5688e5f32fcb6f104bc (diff)
downloadtalos-hostboot-f3d348bde5bd0fbd9a707fd1635bcb3a90d9210d.tar.gz
talos-hostboot-f3d348bde5bd0fbd9a707fd1635bcb3a90d9210d.zip
Support for OCC error reporting
Change-Id: If8cce2f960b28cda2f039f68e9527df92f9233f2 RTC: 121729 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/15971 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/htmgt/occError.H')
-rw-r--r--src/usr/htmgt/occError.H70
1 files changed, 33 insertions, 37 deletions
diff --git a/src/usr/htmgt/occError.H b/src/usr/htmgt/occError.H
index 095d37d57..e4ab7f906 100644
--- a/src/usr/htmgt/occError.H
+++ b/src/usr/htmgt/occError.H
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/htmgt/htmgt_error.H $ */
+/* $Source: src/usr/htmgt/occError.H $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2014 */
+/* Contributors Listed Below - COPYRIGHT 2014,2015 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -41,9 +41,6 @@ namespace HTMGT
// Error Actions
enum tmgtErrlActionsType
{
- TMGT_ERRL_ACTIONS_CONSOLIDATE_ERRORS = 0x01,
- TMGT_ERRL_ACTIONS_MANUFACTURING_ERROR = 0x08,
- TMGT_ERRL_ACTIONS_UNRECOVERABLE_CPM_ERROR = 0x10,
TMGT_ERRL_ACTIONS_SAFE_MODE_REQUIRED = 0x40,
TMGT_ERRL_ACTIONS_RESET_REQUIRED = 0x80,
};
@@ -51,7 +48,7 @@ namespace HTMGT
// Type of Callout
enum occCalloutType
{
- OCC_CALLOUT_TYPE_HUID = 0x01,
+ OCC_CALLOUT_TYPE_SENSOR = 0x01,
OCC_CALLOUT_TYPE_COMPONENT_ID = 0x02,
};
@@ -80,24 +77,22 @@ namespace HTMGT
TMGT_COMP_DATA_END_OF_TABLE = 0xFF
};
-#if 0
- // TODO: RTC 109224
+ // Callout Priority Translation
struct occSrciPriorityXlate
{
uint8_t occPriority;
- srciPriority errlPriority;
+ HWAS::callOutPriority errlPriority;
} __attribute__ ((__packed__));
typedef struct occSrciPriorityXlate occSrciPriorityXlate_t;
const occSrciPriorityXlate_t occPriorityXlateTbl[] =
{
- {0x01, SRCI_PRIORITY_LOW},
- {0x02, SRCI_PRIORITY_MED},
- {0x03, SRCI_PRIORITY_HIGH},
+ {0x01, HWAS::SRCI_PRIORITY_LOW},
+ {0x02, HWAS::SRCI_PRIORITY_MED},
+ {0x03, HWAS::SRCI_PRIORITY_HIGH},
};
const uint8_t OCC_SRCI_PRIORITY_XLATE_SIZE =
- (sizeof(occPriorityXlateTbl) /sizeof(occSrciPriorityXlate_t));
-#endif
+ (sizeof(occPriorityXlateTbl) / sizeof(occSrciPriorityXlate_t));
// OCC Usr Dtls Structure
struct occErrlUsrDtls
@@ -119,16 +114,6 @@ namespace HTMGT
} __attribute__ ((__packed__));
typedef struct occErrlUsrDtls occErrlUsrDtls_t;
- // OCC Callout Structure
- struct occErrlCallout
- {
- uint8_t type;
- uint64_t calloutValue;
- uint8_t priority;
- uint16_t reserved1;
- } __attribute__ ((__packed__));
- typedef struct occErrlCallout occErrlCallout_t;
-
// User Detail Entry Structure
struct occUserDetailsEntry
{
@@ -157,34 +142,35 @@ namespace HTMGT
// Actions to process the errors
uint8_t actions;
// Reserved
- uint32_t userData4;
+ uint32_t reserved;
// Log Callout Number
- uint8_t numCallouts;
+ uint8_t maxCallouts;
+ // Callouts
+ occErrlCallout callout[ERRL_MAX_CALLOUTS];
} __attribute__ ((__packed__));
typedef struct occErrlEntry occErrlEntry_t;
-#if 0
- // TODO: RTC 109224
// OCC Severity and Action
struct occSeverityActionXlate
{
- occSeverityType occSeverity;
- errlSeverity occErrlSeverity;
- errlActions occErrlAction;
+ occSeverityType occSeverity;
+ ERRORLOG::errlSeverity_t occErrlSeverity;
};
typedef struct occSeverityActionXlate occSeverityActionXlate_t;
- // Translate Severity and Actios
+ // Translate Severity and Actions
const occSeverityActionXlate_t occSeverityErrorActionXlate[] =
{
- {OCC_SEV_INFORMATIONAL, ERRL_SEV_INFORMATIONAL, ERRL_ACTION_HIDDEN},
- {OCC_SEV_RECOVERABLE, ERRL_SEV_PREDICTIVE, ERRL_ACTION_REPORT},
- {OCC_SEV_UNRECOVERABLE, ERRL_SEV_UNRECOVERABLE, ERRL_ACTION_REPORT},
+ {OCC_SEV_INFORMATIONAL, ERRORLOG::ERRL_SEV_INFORMATIONAL},
+ {OCC_SEV_RECOVERABLE, ERRORLOG::ERRL_SEV_PREDICTIVE},
+ {OCC_SEV_UNRECOVERABLE, ERRORLOG::ERRL_SEV_UNRECOVERABLE},
};
const uint8_t OCC_SEV_ACTION_XLATE_SIZE =
(sizeof(occSeverityErrorActionXlate)/sizeof(occSeverityActionXlate_t));
-#endif
+
+
+
struct tmgtCompXlate
{
@@ -201,7 +187,7 @@ namespace HTMGT
const tmgtCompXlate_t tmgt_compXlateTable[TMGT_MAX_COMP_IDS] =
{
- { 0x01, TMGT_COMP_DATA_PROCEDURE, ERRORLOG::EPUB_FIRMWARE_SP}, // FW
+ { 0x01, TMGT_COMP_DATA_PROCEDURE, HWAS::EPUB_PRC_HB_CODE}, // FW
{ 0x04, TMGT_COMP_DATA_SYMBOLIC_FRU, OVERTMP}, // over temperature
{ 0x05, TMGT_COMP_DATA_SYMBOLIC_FRU, TPMD_OV}, // oversub throttling
{ 0xFF, TMGT_COMP_DATA_END_OF_TABLE, 0}, // none
@@ -223,5 +209,15 @@ namespace HTMGT
const uint16_t i_length);
+
+
+ struct tmgtSafeModeReasonCode_t
+ {
+ uint32_t returnCode;
+ uint32_t huid;
+ bool infoOnly;
+ };
+
+
} // end namespace
#endif
OpenPOWER on IntegriCloud