tree 48a578c36b81e6236a961d5746b138cb4b3e2616
parent ae56dbca7a01e4da52093c2b0231620e41e88927
author Ramesh Iyyar <rameshi1@in.ibm.com> 1623994735 -0500
committer Patrick Williams <patrick@stwcx.xyz> 1627423256 +0000

HardwareIsolation: Added the "CreateWithErrorLog" method

In an OpenPOWER based system, an application can isolate hardware
in the error path if the hardware is faulty, and the respective
isolated hardware part will be ignored to init during the
next boot of the host.

This interface will be used to isolate hardware by using
the respective hardware path along with error log which is caused
the hardware isolation.

This method is not going to create an error log and the consumer
of this method need to pass the bmc error log which caused
the isolation.

The added method will throw below exceptions.
- xyz.openbmc_project.Common.Error.InvalidArgument
  - If the given parameters are invalid.
  - If the given hardware is not found to isolate.
- xyz.openbmc_project.Common.Error.TooManyResources
  - If the platforms are not allowed to isolate hardware
    when the isolated hardware count is reached to the maximum
    allowed size.
- xyz.openbmc_project.HardwareIsolation.Error.IsolatedAlready
  - If the isolating hardware is already isolated.
- xyz.openbmc_project.Common.Error.NotAllowed
  - If the given hardware cannot be isolated permanently.
- xyz.openbmc_project.Common.Error.Unavailable
  - If the given hardware cannot be isolated temporarily.

Please refer https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/27804
to get more details of hardware isolation.

Signed-off-by: Ramesh Iyyar <rameshi1@in.ibm.com>
Change-Id: I10218466fd2e1bf956b6cbb97da2c91480d70642
