Add ISL69269 Voltage Regulator support

The configuration of the voltage regulator relies on the EM-Schema[1]

1: https://gerrit.openbmc.org/c/openbmc/entity-manager/+/79823

Tested:
```
<7> Requesting Image update with 10
<7> started asynchronous update with fd 10
<7> starting async update with FD: 11

<7> Harme_MB_VR_CPU0_VCORE0_5813: created dbus interfaces on path /xyz/openbmc_project/software/Harme_MB_VR_CPU0_VCORE0_5813
<7> starting the async update with memfd 11
<7> open fd 11
<7> file size: 7646
<7> parsing package header
<7> parsing package, pkg header size: 152
<7> Harme_MB_VR_CPU0_VCORE0_5813: set version 99A5A351
<7> device id from configuration: 0x49d29b00
<7> device revision from config: 0x7000000
<7> Production hex file format recognized
<7> Config ID: 0
<7> Config Production CRC: 0x99a5a351
<7> Device revision read from device: 0x6000100
<7> Production mode revision checks out
<6> Successfully updated VR Harme_MB_VR_CPU0_VCORE0
<7> Default implementation for device reset
<7> Harme_MB_VR_CPU0_VCORE0_5813: setting association definitions
<7> inventory item at path /xyz/openbmc_project/inventory/system/board/BMC_Storage_Module
<7> inventory item at path /xyz/openbmc_project/inventory/system/board/CB
<7> inventory item at path /xyz/openbmc_project/inventory/system/board/Harma_Fan_Board_0
<7> inventory item at path /xyz/openbmc_project/inventory/system/board/Harma_Fan_Board_1
<7> inventory item at path /xyz/openbmc_project/inventory/system/board/Harma_MB
<7> found associated inventory item for Harme_MB_VR_CPU0_VCORE0: /xyz/openbmc_project/inventory/system/board/Harma_MB
<7> Harme_MB_VR_CPU0_VCORE0_5813: creating 'running' association to /xyz/openbmc_project/inventory/system/board/Harma_MB
<7> [Software] enabling update of /xyz/openbmc_project/software/Harme_MB_VR_CPU0_VCORE0_5813 (adding the update interface)
<7> Successfully updated to software version Harme_MB_VR_CPU0_VCORE0_5813
```

Change-Id: Ia7d7b19066cd2a55748eeffacc18e7d6c78ca797
Signed-off-by: Christopher Meis <christopher.meis@9elements.com>
diff --git a/i2c-vr/vr.cpp b/i2c-vr/vr.cpp
index f7c7c0f..7280f91 100644
--- a/i2c-vr/vr.cpp
+++ b/i2c-vr/vr.cpp
@@ -1,5 +1,6 @@
 #include "vr.hpp"
 
+#include "isl69269/isl69269.hpp"
 #include "xdpe1x2xx/xdpe1x2xx.hpp"
 
 #include <map>
@@ -17,6 +18,9 @@
         case VRType::XDPE1X2XX:
             ret = std::make_unique<XDPE1X2XX>(ctx, bus, address);
             break;
+        case VRType::ISL69269:
+            ret = std::make_unique<ISL69269>(ctx, bus, address);
+            break;
         default:
             return NULL;
     }
@@ -27,6 +31,7 @@
 {
     std::map<std::string, enum VRType> VRTypeToString{
         {"XDPE1X2XXFirmware", VRType::XDPE1X2XX},
+        {"ISL69269Firmware", VRType::ISL69269},
     };
 
     if (VRTypeToString.contains(vrStr))