Add Softshutdown and Hardshutdown threshold interface
Added threshold interfaces like Softshutdown and Hardshutdown
interfaces in dbus-sensors. This is similiar to warning and
critical threshold interfaces.
To enable this Softshutdown and Hardshutdown interfaces, need to
set the Severity level in EM config. Severity value as 2 for
Softshutdown and Severity value as 3 for Hardshutdown.
TESTED: Tested on Facebook YosemiteV2 hardware. Verified the
Hardshutdown and Softshutdown interfaces are created
and displaying in dbus objects.
Signed-off-by: Jayashree Dhanapal <jayashree-d@hcl.com>
Change-Id: Ic9a6e719a8343321f894bc031688a17a3ed7fd67
diff --git a/include/sensor.hpp b/include/sensor.hpp
index 9d01482..7021430 100644
--- a/include/sensor.hpp
+++ b/include/sensor.hpp
@@ -104,7 +104,7 @@
const char* dirOrder;
};
- constexpr static std::array<ThresholdProperty, 4> thresProp = {
+ constexpr static std::array<ThresholdProperty, 8> thresProp = {
{{thresholds::Level::WARNING, thresholds::Direction::HIGH, 0,
"WarningHigh", "WarningAlarmHigh", "greater than"},
{thresholds::Level::WARNING, thresholds::Direction::LOW, 0,
@@ -112,9 +112,17 @@
{thresholds::Level::CRITICAL, thresholds::Direction::HIGH, 1,
"CriticalHigh", "CriticalAlarmHigh", "greater than"},
{thresholds::Level::CRITICAL, thresholds::Direction::LOW, 1,
- "CriticalLow", "CriticalAlarmLow", "less than"}}};
+ "CriticalLow", "CriticalAlarmLow", "less than"},
+ {thresholds::Level::SOFTSHUTDOWN, thresholds::Direction::HIGH, 2,
+ "SoftShutdownHigh", "SoftShutdownAlarmHigh", "greater than"},
+ {thresholds::Level::SOFTSHUTDOWN, thresholds::Direction::LOW, 2,
+ "SoftShutdownLow", "SoftShutdownAlarmLow", "less than"},
+ {thresholds::Level::HARDSHUTDOWN, thresholds::Direction::HIGH, 3,
+ "HardShutdownHigh", "HardShutdownAlarmHigh", "greater than"},
+ {thresholds::Level::HARDSHUTDOWN, thresholds::Direction::LOW, 3,
+ "HardShutdownLow", "HardShutdownAlarmLow", "less than"}}};
- std::array<std::shared_ptr<sdbusplus::asio::dbus_interface>, 2>
+ std::array<std::shared_ptr<sdbusplus::asio::dbus_interface>, 4>
thresholdInterfaces;
std::shared_ptr<sdbusplus::asio::dbus_interface>