summaryrefslogtreecommitdiffstats
path: root/monitor/tach_sensor.cpp
diff options
context:
space:
mode:
authorMatthew Barth <msbarth@us.ibm.com>2018-01-15 16:22:04 -0600
committerMatthew Barth <msbarth@us.ibm.com>2018-01-18 11:16:23 -0600
commitf552ea5ce23889905ce15c0ffcfc73fa1245a423 (patch)
treed3621f920bebf9fd9744aeb61d2a5fb54a2f419e /monitor/tach_sensor.cpp
parente4338cdb856db2b71f8adf42c50603d816980f8a (diff)
downloadphosphor-fan-presence-f552ea5ce23889905ce15c0ffcfc73fa1245a423.tar.gz
phosphor-fan-presence-f552ea5ce23889905ce15c0ffcfc73fa1245a423.zip
All sensors should return a target speed value
All tach sensors associated with a fan should return a target speed sensor from its getTarget function. In the case where a target speed sensor does not exist for the tach sensor, it retrieves and returns the target speed value from the fan where the fan finds the target speed value from a tach sensor the fan contains that provides it. Resolves openbmc/openbmc#2784 Change-Id: Iea5561b0aad6942be52af262c7255c60e5e75c7a Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
Diffstat (limited to 'monitor/tach_sensor.cpp')
-rw-r--r--monitor/tach_sensor.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/monitor/tach_sensor.cpp b/monitor/tach_sensor.cpp
index 8ae8583..1069313 100644
--- a/monitor/tach_sensor.cpp
+++ b/monitor/tach_sensor.cpp
@@ -126,13 +126,21 @@ TachSensor::TachSensor(sdbusplus::bus::bus& bus,
}
-
std::string TachSensor::getMatchString(const std::string& interface)
{
return sdbusplus::bus::match::rules::propertiesChanged(
_name, interface);
}
+uint64_t TachSensor::getTarget() const
+{
+ if (!_hasTarget)
+ {
+ return _fan.findTargetSpeed();
+ }
+ return _tachTarget;
+}
+
void TachSensor::setFunctional(bool functional)
{
_functional = functional;
OpenPOWER on IntegriCloud