thresholds: Add threshold alarm signals
Define signals on every sensor threshold interface that can be sent when
a threshold alarm value changes. The signal contains the sensor value
that caused the alarm change.
<Threshold Name>HighAlarmAsserted:
* Sent when the Warning/Critical/etc AlarmHigh property is asserted
<Threshold Name>HighAlarmDeasserted:
* Sent when the Warning/Critical/etc AlarmHigh property is deasserted
<Threshold Name>LowAlarmAsserted:
* Sent when the Warning/Critical/etc AlarmLow property is asserted
<Threshold Name>LowAlarmDeasserted:
* Sent when the Warning/Critical/etc AlarmLow property is deasserted
The threshold name, like 'Critical', is in the property name so that the
generated C++ names are unique and a class can implement multiple
thresholds at once.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: Ib58fccc5fcb71a55a79ac74c0113326bd8e40219
diff --git a/xyz/openbmc_project/Sensor/Threshold/Critical.interface.yaml b/xyz/openbmc_project/Sensor/Threshold/Critical.interface.yaml
index 9dea127..1c8b4bc 100644
--- a/xyz/openbmc_project/Sensor/Threshold/Critical.interface.yaml
+++ b/xyz/openbmc_project/Sensor/Threshold/Critical.interface.yaml
@@ -42,3 +42,36 @@
CriticalAlarmLow may be set to False to clear an alarm condition.
The behavior of setting CriticalAlarmLow to True is undefined.
+signals:
+ - name: CriticalHighAlarmAsserted
+ description: >
+ The high threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: CriticalHighAlarmDeasserted
+ description: >
+ The high threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: CriticalLowAlarmAsserted
+ description: >
+ The low threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: CriticalLowAlarmDeasserted
+ description: >
+ The low threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
diff --git a/xyz/openbmc_project/Sensor/Threshold/HardShutdown.interface.yaml b/xyz/openbmc_project/Sensor/Threshold/HardShutdown.interface.yaml
index bf6c4fd..4987414 100644
--- a/xyz/openbmc_project/Sensor/Threshold/HardShutdown.interface.yaml
+++ b/xyz/openbmc_project/Sensor/Threshold/HardShutdown.interface.yaml
@@ -45,3 +45,37 @@
HardShutdownAlarmLow may be set to False to clear an alarm condition.
The behavior of setting HardShutdownAlarmLow to True is undefined.
+
+signals:
+ - name: HardShutdownHighAlarmAsserted
+ description: >
+ The high threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: HardShutdownHighAlarmDeasserted
+ description: >
+ The high threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: HardShutdownLowAlarmAsserted
+ description: >
+ The low threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: HardShutdownLowAlarmDeasserted
+ description: >
+ The low threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
diff --git a/xyz/openbmc_project/Sensor/Threshold/PerformanceLoss.interface.yaml b/xyz/openbmc_project/Sensor/Threshold/PerformanceLoss.interface.yaml
index 343f648..0c6c9e9 100644
--- a/xyz/openbmc_project/Sensor/Threshold/PerformanceLoss.interface.yaml
+++ b/xyz/openbmc_project/Sensor/Threshold/PerformanceLoss.interface.yaml
@@ -44,3 +44,36 @@
PerformanceLossAlarmLow may be set to False to clear an alarm condition.
The behavior of setting PerformanceLossAlarmLow to True is undefined.
+signals:
+ - name: PerformanceLossHighAlarmAsserted
+ description: >
+ The high threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: PerformanceLossHighAlarmDeasserted
+ description: >
+ The high threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: PerformanceLossLowAlarmAsserted
+ description: >
+ The low threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: PerformanceLossLowAlarmDeasserted
+ description: >
+ The low threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
diff --git a/xyz/openbmc_project/Sensor/Threshold/SoftShutdown.interface.yaml b/xyz/openbmc_project/Sensor/Threshold/SoftShutdown.interface.yaml
index 24a4d60..52b0f54 100644
--- a/xyz/openbmc_project/Sensor/Threshold/SoftShutdown.interface.yaml
+++ b/xyz/openbmc_project/Sensor/Threshold/SoftShutdown.interface.yaml
@@ -44,3 +44,37 @@
SoftShutdownAlarmLow may be set to False to clear an alarm condition.
The behavior of setting SoftShutdownAlarmLow to True is undefined.
+
+signals:
+ - name: SoftShutdownHighAlarmAsserted
+ description: >
+ The high threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: SoftShutdownHighAlarmDeasserted
+ description: >
+ The high threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: SoftShutdownLowAlarmAsserted
+ description: >
+ The low threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: SoftShutdownLowAlarmDeasserted
+ description: >
+ The low threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
diff --git a/xyz/openbmc_project/Sensor/Threshold/Warning.interface.yaml b/xyz/openbmc_project/Sensor/Threshold/Warning.interface.yaml
index e4d23ea..4182eca 100644
--- a/xyz/openbmc_project/Sensor/Threshold/Warning.interface.yaml
+++ b/xyz/openbmc_project/Sensor/Threshold/Warning.interface.yaml
@@ -43,3 +43,37 @@
WarningAlarmLow may be set to False to clear an alarm condition.
The behavior of setting WarningAlarmLow to True is undefined.
+
+signals:
+ - name: WarningHighAlarmAsserted
+ description: >
+ The high threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: WarningHighAlarmDeasserted
+ description: >
+ The high threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: WarningLowAlarmAsserted
+ description: >
+ The low threshold alarm asserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.
+ - name: WarningLowAlarmDeasserted
+ description: >
+ The low threshold alarm deasserted.
+ properties:
+ - name: SensorValue
+ type: double
+ description: >
+ The sensor value that triggered the alarm change.