dbus-sdr: Make VoltageRegulatorMode exposed to sensorTree.
getSensorSubtree() now search for
xyz.openbmc_project.Control.VoltageRegulatorMode
under the path /xyz/openbmc_project/vr.
Only the failure of searching sensor path is considered as an error.
Tested: ipmiStorageGetSDR()
This requires all the changes in
https://gerrit.openbmc-project.xyz/q/hashtag:%22dbus-sdr-vr-sensors%22+(status:open%20OR%20status:merged)
```
ipmitool sdr list event -v
Running Get PICMG Properties my_addr 0x20, transit 0, target 0
Error response 0xc1 from Get PICMG Properities
Running Get VSO Capabilities my_addr 0x20, transit 0, target 0
Invalid completion code received: Invalid command
Discovered IPMB address 0x0
Sensor ID : vr_sensor_0_fprof (0xb4)
Entity ID : 11.5 (Add-in Card)
Sensor Type : Module / Board (0x15)
Sensor ID : vr_sensor_1_fprof (0xb5)
Entity ID : 11.6 (Add-in Card)
Sensor Type : Module / Board (0x15)
...
```
Signed-off-by: Hao Jiang <jianghao@google.com>
Change-Id: I76d3fedb1cc0a2bc865c2a9c83c0418eb0ee99be
Signed-off-by: Willy Tu <wltu@google.com>
diff --git a/include/dbus-sdr/sdrutils.hpp b/include/dbus-sdr/sdrutils.hpp
index 8a3858c..753c0dd 100644
--- a/include/dbus-sdr/sdrutils.hpp
+++ b/include/dbus-sdr/sdrutils.hpp
@@ -213,6 +213,17 @@
// sensors. These objects are global singletons, used from a variety of places.
inline IPMIStatsTable sdrStatsTable;
+/**
+ * Search ObjectMapper for sensors and update them to subtree.
+ *
+ * The function will search for sensors under either
+ * /xyz/openbmc_project/sensors or /xyz/openbmc_project/extsensors. It will
+ * optionally search VR typed sensors under /xyz/openbmc_project/vr
+ *
+ * @return the updated amount of times any of "sensors" or "extsensors" sensor
+ * paths updated successfully, previous amount if all failed. The "vr"
+ * sensor path is optional, and does not participate in the return value.
+ */
uint16_t getSensorSubtree(std::shared_ptr<SensorSubTree>& subtree);
bool getSensorNumMap(std::shared_ptr<SensorNumMap>& sensorNumMap);