fix for false PFR ProvisioningStatus in redfish

start the PFR manager service when PFR supported on the platform and
PFR-CPLD is available and PFR provisioned, Otherwilse, stop the PFR
manager service.

Tested:
1. When PFR Supported, PFR-CPLD is available and PFR provisioned.
Command: busctl tree xyz.openbmc_project.PFR.Manager
Response:
└─/xyz
  └─/xyz/openbmc_project
    ├─/xyz/openbmc_project/pfr
    └─/xyz/openbmc_project/software
      ├─/xyz/openbmc_project/software/bios_active
      ├─/xyz/openbmc_project/software/bios_recovery
      ├─/xyz/openbmc_project/software/bmc_active
      ├─/xyz/openbmc_project/software/bmc_recovery
      ├─/xyz/openbmc_project/software/cpld_active
      └─/xyz/openbmc_project/software/cpld_recovery

2. When PFR not supported or PFR-CPLD is not available and PFR not
   provisioned.
Command: busctl list
Response:
xyz.openbmc_project.ObjectMapper                   271 mapperx
xyz.openbmc_project.PCIe                           312 peci-pcie
xyz.openbmc_project.PMEM                           373 pmem_dbus_daemo
xyz.openbmc_project.PSURedundancy                  286 psuredundancy
xyz.openbmc_project.PSUSensor                      388 psusensor
xyz.openbmc_project.RestrictionMode.Manager        401 prov-mode-mgr

Command: busctl tree xyz.openbmc_project.PFR.Manager
Response:
Failed to introspect object / of service xyz.openbmc_project.PFR.Manager
: The name is not activatable
No objects discovered.

3. Tested on non-PFR platforms, no delay in BMC boot and
xyz.openbmc_project.PFR.Manager won't start.

Signed-off-by: Chalapathi <chalapathix.venkataramashetty@intel.com>
Change-Id: I08fd29f52dfe078b5b67f07a2ebb53efd38dea0c
3 files changed