diff options
author | Matt Spinler <spinler@us.ibm.com> | 2017-04-27 14:08:45 -0500 |
---|---|---|
committer | Matt Spinler <spinler@us.ibm.com> | 2017-05-11 13:52:50 -0500 |
commit | abf8da369cb1e7094cc00295131502c73ed5cbc1 (patch) | |
tree | 3e2d684c16cd62b457f31da1eab61b69acf698f2 /monitor/tach_sensor.cpp | |
parent | 35b156b79c1314de79e4728ef313f5164ae2ec32 (diff) | |
download | phosphor-fan-presence-abf8da369cb1e7094cc00295131502c73ed5cbc1.tar.gz phosphor-fan-presence-abf8da369cb1e7094cc00295131502c73ed5cbc1.zip |
Fan and TachSensor class introduction
A Fan object has one or more TachSensor objects.
The TachSensor class is used to keep track of the
the actual and expected speeds. It only tracks
expected speeds if the _hasTarget attribute is true.
Future commits will add more functionality.
Change-Id: I9bb5fac39f25c5c31c18457ebedf82838fcf6641
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Diffstat (limited to 'monitor/tach_sensor.cpp')
-rw-r--r-- | monitor/tach_sensor.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/monitor/tach_sensor.cpp b/monitor/tach_sensor.cpp new file mode 100644 index 0000000..3264ddf --- /dev/null +++ b/monitor/tach_sensor.cpp @@ -0,0 +1,49 @@ +/** + * Copyright © 2017 IBM Corporation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include <phosphor-logging/log.hpp> +#include "fan.hpp" +#include "tach_sensor.hpp" +#include "../utility.hpp" + +namespace phosphor +{ +namespace fan +{ +namespace monitor +{ + +constexpr auto FAN_SENSOR_PATH = "/xyz/openbmc_project/sensors/fan_tach/"; + + +TachSensor::TachSensor(sdbusplus::bus::bus& bus, + Fan& fan, + const std::string& id, + bool hasTarget, + size_t timeout) : + + _bus(bus), + _fan(fan), + _name(FAN_SENSOR_PATH + id), + _hasTarget(hasTarget), + _timeout(timeout) +{ + //TODO +} + + +} +} +} |