Control.FanPwm: use PDI constants
Use PDI constants instead of local definitions.
Tested: Unit Tests Pass
Change-Id: Iac724d87ddac326d825b843675f314decd6e0de4
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
diff --git a/dbus/dbusconfiguration.cpp b/dbus/dbusconfiguration.cpp
index 8ba2a1b..a624cee 100644
--- a/dbus/dbusconfiguration.cpp
+++ b/dbus/dbusconfiguration.cpp
@@ -32,6 +32,7 @@
#include <sdbusplus/exception.hpp>
#include <sdbusplus/message.hpp>
#include <sdbusplus/message/native_types.hpp>
+#include <xyz/openbmc_project/Control/FanPwm/client.hpp>
#include <xyz/openbmc_project/ObjectMapper/common.hpp>
#include <xyz/openbmc_project/Sensor/Value/client.hpp>
@@ -54,6 +55,7 @@
using ObjectMapper = sdbusplus::common::xyz::openbmc_project::ObjectMapper;
using SensorValue = sdbusplus::common::xyz::openbmc_project::sensor::Value;
+using ControlFanPwm = sdbusplus::common::xyz::openbmc_project::control::FanPwm;
namespace pid_control
{
@@ -68,8 +70,6 @@
"xyz.openbmc_project.Configuration.Stepwise";
constexpr const char* thermalControlIface =
"xyz.openbmc_project.Control.ThermalMode";
-constexpr const char* defaultPwmInterface =
- "xyz.openbmc_project.Control.FanPwm";
using Association = std::tuple<std::string, std::string, std::string>;
using Associations = std::vector<Association>;
@@ -459,7 +459,7 @@
std::array<const char*, 6>{
objectManagerInterface, pidConfigurationInterface,
pidZoneConfigurationInterface, stepwiseConfigurationInterface,
- SensorValue::interface, defaultPwmInterface});
+ SensorValue::interface, ControlFanPwm::interface});
std::unordered_map<
std::string, std::unordered_map<std::string, std::vector<std::string>>>
respData;
@@ -501,7 +501,7 @@
owner.first = true;
}
if (interface == SensorValue::interface ||
- interface == defaultPwmInterface)
+ interface == ControlFanPwm::interface)
{
// we're not interested in pwm sensors, just pwm control
if (interface == SensorValue::interface &&
@@ -927,11 +927,12 @@
pwmInterface =
outputSensorInterfaces.at(idx).second;
}
- if (defaultPwmInterface != pwmInterface)
+ if (ControlFanPwm::interface != pwmInterface)
{
throw std::runtime_error(std::format(
"fan pwm control at dbus path [{}] has an interface [{}] that does not match the expected interface of {}",
- pwmPath, pwmInterface, defaultPwmInterface));
+ pwmPath, pwmInterface,
+ ControlFanPwm::interface));
}
const std::string& fanPath =
inputSensorInterfaces.at(idx).first;
diff --git a/dbus/dbuswrite.cpp b/dbus/dbuswrite.cpp
index efb7dee..8a87116 100644
--- a/dbus/dbuswrite.cpp
+++ b/dbus/dbuswrite.cpp
@@ -22,6 +22,7 @@
#include <phosphor-logging/log.hpp>
#include <sdbusplus/bus.hpp>
#include <sdbusplus/exception.hpp>
+#include <xyz/openbmc_project/Control/FanPwm/client.hpp>
#include <cstdint>
#include <exception>
@@ -29,11 +30,11 @@
#include <string>
#include <variant>
+using ControlFanPwm = sdbusplus::common::xyz::openbmc_project::control::FanPwm;
+
namespace pid_control
{
-constexpr const char* pwmInterface = "xyz.openbmc_project.Control.FanPwm";
-
using namespace phosphor::logging;
std::unique_ptr<WriteInterface> DbusWritePercent::createDbusWrite(
@@ -44,7 +45,7 @@
try
{
- connectionName = helper->getService(pwmInterface, path);
+ connectionName = helper->getService(ControlFanPwm::interface, path);
}
catch (const std::exception& e)
{
@@ -83,7 +84,7 @@
auto mesg =
writeBus.new_method_call(connectionName.c_str(), path.c_str(),
"org.freedesktop.DBus.Properties", "Set");
- mesg.append(pwmInterface, "Target",
+ mesg.append(ControlFanPwm::interface, ControlFanPwm::property_names::target,
std::variant<uint64_t>(static_cast<uint64_t>(ovalue)));
try
@@ -113,7 +114,7 @@
try
{
- connectionName = helper->getService(pwmInterface, path);
+ connectionName = helper->getService(ControlFanPwm::interface, path);
}
catch (const std::exception& e)
{
@@ -145,7 +146,7 @@
auto mesg =
writeBus.new_method_call(connectionName.c_str(), path.c_str(),
"org.freedesktop.DBus.Properties", "Set");
- mesg.append(pwmInterface, "Target",
+ mesg.append(ControlFanPwm::interface, ControlFanPwm::property_names::target,
std::variant<uint64_t>(static_cast<uint64_t>(value)));
try