Check TARGET_MODE on target sensors
Move the TARGET_MODE config entry to be done on target specific sensors.
Tested:
Target sensors are still created for the mode given in TARGET_MODE
Change-Id: I7731b73e14495360ccb5b8fb8ada59176e9125d3
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/mainloop.cpp b/mainloop.cpp
index d3987cc..29ce2b3 100644
--- a/mainloop.cpp
+++ b/mainloop.cpp
@@ -285,32 +285,6 @@
*/
void MainLoop::getObject(SensorSet::container_t::const_reference sensor)
{
- //If this device supports target speeds,
- //check which type to use.
- targetType fanTargetType = targetType::DEFAULT;
- auto targetMode = getenv("TARGET_MODE");
- if (targetMode)
- {
- std::string type{targetMode};
- std::transform(type.begin(), type.end(), type.begin(), toupper);
-
- if (type == RPM_TARGET)
- {
- fanTargetType = targetType::RPM;
- }
- else if (type == PWM_TARGET)
- {
- fanTargetType = targetType::PWM;
- }
- else
- {
- log<level::ERR>(
- "Invalid TARGET_MODE env var found",
- entry("TARGET_MODE=%s", targetMode),
- entry("DEVPATH=%s", _devPath.c_str()));
- }
- }
-
// Get list of return codes for removing sensors on device
std::string deviceRmRCs;
auto devRmRCs = getenv("REMOVERCS");
@@ -422,23 +396,13 @@
addThreshold<WarningObject>(sensor.first.first, id, sensorValue, info);
addThreshold<CriticalObject>(sensor.first.first, id, sensorValue, info);
- if ((fanTargetType == targetType::RPM) ||
- (fanTargetType == targetType::DEFAULT))
+ auto target = addTarget<hwmon::FanSpeed>(
+ sensor.first, ioAccess, _devPath, info);
+ if (target)
{
- auto target = addTarget<hwmon::FanSpeed>(
- sensor.first, ioAccess, _devPath, info);
-
- if (target)
- {
- target->enable();
- }
+ target->enable();
}
-
- if ((fanTargetType == targetType::PWM) ||
- (fanTargetType == targetType::DEFAULT))
- {
- addTarget<hwmon::FanPwm>(sensor.first, ioAccess, _devPath, info);
- }
+ addTarget<hwmon::FanPwm>(sensor.first, ioAccess, _devPath, info);
// All the interfaces have been created. Go ahead
// and emit InterfacesAdded.