vpd-tool force reset command implementation

This commit implements force reset command option in vpd-tool
application.

The commit implements clearing of Phosphor Inventory Manager’s (PIM)
persisted data, restarts the PIM and VPD manager services. In turn VPD
manager triggers the VPD collection for the FRUs listed in the system
config JSON.

Output:
```
Create mismatch value, by updating keyword value only on DBus.
busctl  call xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory xyz.openbmc_project.Inventory.Manager Notify a{oa{sa{sv}}} 1 "/system/chassis/motherboard" 1 "com.ibm.ipzvpd.VSYS" 1 "BR" ay 2 0x32 0x33

Data On Hardware:
root@rainvpdteam:/tmp# vpd-tool -O /sys/bus/i2c/drivers/at24/8-0050/eeprom -R VSYS -K BR -r -H
{
    "/sys/bus/i2c/drivers/at24/8-0050/eeprom": {
        "BR": "S0"
    }
}

Data on DBus:
root@rainvpdteam:/tmp# vpd-tool -O /system/chassis/motherboard -R VSYS -K BR -r
{
    "/system/chassis/motherboard": {
        "BR": "23"
    }
}

On force reset command:
root@rainvpdteam:/tmp# ./vpd-tool -f
Stopping vpd-manager service.
Restarting xyz.openbmc_project.Inventory.Manager service.
Starting vpd-manager service.

After force reset command, DBus got updated with hardware data:
root@rainvpdteam:/tmp# vpd-tool -O /system/chassis/motherboard -R VSYS -K BR -r
{
    "/system/chassis/motherboard": {
        "BR": "S0"
    }
}

root@rainvpdteam:/tmp# vpd-tool -O /sys/bus/i2c/drivers/at24/8-0050/eeprom -R VSYS -K BR -r -H
{
    "/sys/bus/i2c/drivers/at24/8-0050/eeprom": {
        "BR": "S0"
    }
}
```

Change-Id: Ic236265817d793892902f63835667167365b8cdc
Signed-off-by: Anupama B R <anupama.b.r1@ibm.com>
diff --git a/vpd-tool/include/tool_constants.hpp b/vpd-tool/include/tool_constants.hpp
index 00c64b8..7fe0190 100644
--- a/vpd-tool/include/tool_constants.hpp
+++ b/vpd-tool/include/tool_constants.hpp
@@ -18,6 +18,7 @@
 constexpr auto inventoryManagerService =
     "xyz.openbmc_project.Inventory.Manager";
 constexpr auto baseInventoryPath = "/xyz/openbmc_project/inventory";
+constexpr auto pimPersistPath = "/var/lib/phosphor-inventory-manager";
 constexpr auto ipzVpdInfPrefix = "com.ibm.ipzvpd.";
 
 constexpr auto vpdManagerService = "com.ibm.VPD.Manager";
@@ -44,5 +45,6 @@
 constexpr auto slotNumInf = "xyz.openbmc_project.Inventory.Decorator.Slot";
 constexpr auto i2cDeviceInf =
     "xyz.openbmc_project.Inventory.Decorator.I2CDevice";
+constexpr auto vpdManagerProcessName = "vpd-manager";
 } // namespace constants
 } // namespace vpd