PEL: Add ambient temp PEL registry entries
Add 3 new PEL message registry entries:
* temp crossed EPOW3 threshold
* temp crossed EPOW4 threshold
* temp under EPOW3 threshold
These error logs will come from the sensor-monitor application that
monitors the HardShutdown (EPOW4) and SoftShutdown (EPOW3) D-Bus
threshod interfaces. These interfaces will only ever be used on the
ambient virtual sensor in the systems that use PELs.
There is no entry for going below the EPOW4 threshold because, while
ther sensor-monitor code would create an error for that, the interface
will have the hysteresis set so that it will never happen.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: Ieed5364654a80697e189cf2e7614b0aead1fb218
diff --git a/extensions/openpower-pels/pel_values.cpp b/extensions/openpower-pels/pel_values.cpp
index 2ef8c24..dfad44d 100644
--- a/extensions/openpower-pels/pel_values.cpp
+++ b/extensions/openpower-pels/pel_values.cpp
@@ -176,7 +176,8 @@
{0x00, "na", "Not Applicable"},
{0x01, "misc_information_only", "Miscellaneous, Informational Only"},
{0x02, "tracing_event", "Tracing Event"},
- {0x08, "dump_notification", "Dump Notification"}};
+ {0x08, "dump_notification", "Dump Notification"},
+ {0x30, "env_normal", "Customer environmental problem back to normal"}};
/**
* The possible values for the Event Scope field in the User Header.
@@ -223,10 +224,10 @@
* actual names.
*/
const std::map<std::string, std::string> symbolicFRUs = {
- {"service_docs", "SVCDOCS"}, {"pwrsply", "PWRSPLY"},
- {"air_mover", "AIRMOVR"}, {"pgood_part", "PGDPART"},
- {"usb_pgood", "USBPGD"},
-};
+ {"service_docs", "SVCDOCS"}, {"pwrsply", "PWRSPLY"},
+ {"air_mover", "AIRMOVR"}, {"pgood_part", "PGDPART"},
+ {"usb_pgood", "USBPGD"}, {"ambient_temp", "AMBTEMP"},
+ {"ambient_temp_back", "AMBBACK"}, {"ambient_perf_loss", "AMBPERF"}};
PELValues::const_iterator findByValue(uint32_t value, const PELValues& fields)
{
diff --git a/extensions/openpower-pels/registry/message_registry.json b/extensions/openpower-pels/registry/message_registry.json
index 932c6d1..0629f01 100644
--- a/extensions/openpower-pels/registry/message_registry.json
+++ b/extensions/openpower-pels/registry/message_registry.json
@@ -1546,6 +1546,102 @@
},
{
+ "Name": "xyz.openbmc_project.Sensor.Threshold.Error.SoftShutdownAlarmHigh",
+ "Subsystem": "power",
+ "ComponentID": "0x2800",
+ "Severity": "predictive",
+ "ActionFlags": ["service_action", "report"],
+
+ "SRC": {
+ "ReasonCode": "0x2807",
+ "Words6To9": {}
+ },
+
+ "Callouts": [
+ {
+ "CalloutList": [
+ {
+ "Priority": "high",
+ "SymbolicFRU": "ambient_temp"
+ }
+ ]
+ }
+ ],
+
+ "Documentation": {
+ "Description": "The ambient temperature passed the EPOW3 limit.",
+ "Message": "The ambient temperature passed the EPOW3 limit. The system will shut down if temp doesn't decrease.",
+ "Notes": [
+ "This error occurs when the ambient temperature surpassed",
+ "the EPOW3 shutdown limit."
+ ]
+ }
+ },
+
+ {
+ "Name": "xyz.openbmc_project.Sensor.Threshold.Error.SoftShutdownAlarmHighClear",
+ "Subsystem": "power",
+ "ComponentID": "0x2800",
+ "Severity": "non_error",
+ "ActionFlags": ["report"],
+ "EventType": "env_normal",
+
+ "SRC": {
+ "ReasonCode": "0x2808",
+ "Words6To9": {}
+ },
+
+ "Callouts": [
+ {
+ "CalloutList": [
+ {
+ "Priority": "high",
+ "SymbolicFRU": "ambient_temp_back"
+ }
+ ]
+ }
+ ],
+
+ "Documentation": {
+ "Description": "The ambient temperature is back under the EPOW3 limit.",
+ "Message": "The ambient temperature is back under the EPOW3 limit."
+ }
+ },
+
+ {
+ "Name": "xyz.openbmc_project.Sensor.Threshold.Error.HardShutdownAlarmHigh",
+ "Subsystem": "power",
+ "ComponentID": "0x2800",
+ "Severity": "unrecoverable",
+ "ActionFlags": ["service_action", "report"],
+
+ "SRC": {
+ "ReasonCode": "0x2809",
+ "Words6To9": {}
+ },
+
+ "Callouts": [
+ {
+ "CalloutList": [
+ {
+ "Priority": "high",
+ "SymbolicFRU": "ambient_temp"
+ }
+ ]
+ }
+ ],
+
+ "Documentation": {
+ "Description": "The ambient temperature passed the EPOW4 limit.",
+ "Message": "The ambient temperature passed the EPOW4 limit. The system will shut down",
+ "Notes": [
+ "This error occurs when the ambient temperature surpassed",
+ "the EPOW4 shutdown limit."
+ ]
+ }
+ },
+
+ {
"Name": "com.ibm.VPD.Error.InvalidEepromPath",
"Subsystem": "cec_vpd",
"ComponentID": "0x4000",
diff --git a/extensions/openpower-pels/registry/schema/schema.json b/extensions/openpower-pels/registry/schema/schema.json
index 89530b4..a98f01c 100644
--- a/extensions/openpower-pels/registry/schema/schema.json
+++ b/extensions/openpower-pels/registry/schema/schema.json
@@ -293,7 +293,7 @@
"description": "The event type PEL field. Optional and defaults to na",
"type": "string",
"enum": ["na", "misc_information_only", "tracing_event",
- "dump_notification"]
+ "dump_notification", "env_normal"]
},
"powerFault":
@@ -438,7 +438,7 @@
{
"description": "The symbolic FRU callout.",
"type": "string",
- "enum": ["service_docs", "pwrsply", "air_mover", "pgood_part", "usb_pgood"]
+ "enum": ["service_docs", "pwrsply", "air_mover", "pgood_part", "usb_pgood", "ambient_temp", "ambient_temp_back", "ambient_perf_loss"]
},
"symbolicFRUTrusted":