Read default power mode & IPS parameters from DBus
If the power mode or idle power saver parameters have never been set,
they will be read from a set of default parameters that are on DBus.
This allows individual systems to have different default settings.
Mode/IPS parameters moved from Settings to OCC.Control
Code verified on Everest hardware with multiple scenarios including
host reboots, BMC reboots, OCC resets.
Change-Id: Id02613455db7f382791ff37c7dc420dbea1e0906
Signed-off-by: Chris Cain <cjcain@us.ibm.com>
diff --git a/occ_manager.cpp b/occ_manager.cpp
index ee8575d..3160131 100644
--- a/occ_manager.cpp
+++ b/occ_manager.cpp
@@ -136,7 +136,9 @@
#ifdef POWER10
if (!pmode)
{
- pmode = std::make_unique<open_power::occ::powermode::PowerMode>(*this);
+ // Create the power mode object
+ pmode = std::make_unique<open_power::occ::powermode::PowerMode>(
+ *this, powermode::PMODE_PATH, powermode::PIPS_PATH);
}
#endif
@@ -166,7 +168,7 @@
if (!pcap)
{
pcap = std::make_unique<open_power::occ::powercap::PowerCap>(
- *statusObjects.front());
+ *statusObjects.back());
}
#ifdef POWER10
@@ -292,7 +294,9 @@
pcap = std::make_unique<open_power::occ::powercap::PowerCap>(
*statusObjects.front(), occMasterName);
#ifdef POWER10
- pmode = std::make_unique<open_power::occ::powermode::PowerMode>(*this);
+ pmode = std::make_unique<open_power::occ::powermode::PowerMode>(
+ *this, open_power::occ::powermode::PMODE_PATH,
+ open_power::occ::powermode::PIPS_PATH);
// Set the master OCC on the PowerMode object
pmode->setMasterOcc(path);
#endif