psusensor: add LM25066 support

This is a pmbus-attached power management IC supported by the Linux
hwmon subsystem and employed in various boards from vendors such as
ASRock Rack and Delta Power.

LM25066 sensors can be instantiated with an entity-manager config
fragment along the lines of:

        {
            "Address": "...",
            "Bus": ...,
            "Labels": [
                "iin",
                "vin",
                "vmon",
                "vout1",
                "pin",
                "temp1"
            ],
            "Name": "...",
            "Type": "pmbus"
        },

Tested: in combination with a matching entity-manager config, LM25066
voltage, current, power, and temperature sensors appear and produce
readings on dbus and via webui-vue.

Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Change-Id: If5cf41dcd3cde45d411d3c5a426855bc88339e24
diff --git a/src/PSUSensorMain.cpp b/src/PSUSensorMain.cpp
index f37a3dc..f7c6f10 100644
--- a/src/PSUSensorMain.cpp
+++ b/src/PSUSensorMain.cpp
@@ -40,7 +40,7 @@
 
 static constexpr bool debug = false;
 
-static constexpr std::array<const char*, 23> sensorTypes = {
+static constexpr std::array<const char*, 24> sensorTypes = {
     "xyz.openbmc_project.Configuration.ADM1272",
     "xyz.openbmc_project.Configuration.ADM1275",
     "xyz.openbmc_project.Configuration.ADM1278",
@@ -52,6 +52,7 @@
     "xyz.openbmc_project.Configuration.ISL68223",
     "xyz.openbmc_project.Configuration.ISL69243",
     "xyz.openbmc_project.Configuration.ISL69260",
+    "xyz.openbmc_project.Configuration.LM25066",
     "xyz.openbmc_project.Configuration.MAX16601",
     "xyz.openbmc_project.Configuration.MAX20710",
     "xyz.openbmc_project.Configuration.MAX20730",
@@ -66,10 +67,10 @@
     "xyz.openbmc_project.Configuration.TPS546D24"};
 
 static std::vector<std::string> pmbusNames = {
-    "adm1272",  "adm1275",   "adm1278",   "dps800",    "ina219",   "ina230",
-    "isl68137", "isl68220",  "isl68223",  "isl69243",  "isl69260", "max16601",
-    "max20710", "max20730",  "max20734",  "max20796",  "max34451", "pmbus",
-    "pxe1610",  "raa228000", "raa228228", "raa229004", "tps546d24"};
+    "adm1272",  "adm1275",  "adm1278",   "dps800",    "ina219",    "ina230",
+    "isl68137", "isl68220", "isl68223",  "isl69243",  "isl69260",  "lm25066",
+    "max16601", "max20710", "max20730",  "max20734",  "max20796",  "max34451",
+    "pmbus",    "pxe1610",  "raa228000", "raa228228", "raa229004", "tps546d24"};
 
 namespace fs = std::filesystem;
 
@@ -907,6 +908,7 @@
                   {"vout30", PSUProperty("Output Voltage", 255, 0, 3)},
                   {"vout31", PSUProperty("Output Voltage", 255, 0, 3)},
                   {"vout32", PSUProperty("Output Voltage", 255, 0, 3)},
+                  {"vmon", PSUProperty("Auxiliary Input Voltage", 255, 0, 3)},
                   {"in1", PSUProperty("Output Voltage", 255, 0, 3)},
                   {"iin", PSUProperty("Input Current", 20, 0, 3)},
                   {"iout1", PSUProperty("Output Current", 255, 0, 3)},