Add D-Bus interface for Cold Redundancy.
Add D-Bus interface for PowerSupply Cold Redundancy. Phosphor-settings will
provide these properties so that BMC reset will not change these properties.
Cold Redundancy service will check these properties and use it for rank order
rotation.
Signed-off-by: Cheng C Yang <cheng.c.yang@linux.intel.com>
Change-Id: I7fcb91936e0214305c23487e7f741a72889c2a84
diff --git a/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml b/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml
index bf36a77..e02e0aa 100644
--- a/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml
+++ b/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml
@@ -7,3 +7,61 @@
- const
description: >
When true, the power supplies are redundant.
+ - name: RotationEnabled
+ type: boolean
+ description: >
+ Cold redundancy rotation enabled or not.
+ - name: RotationAlgorithm
+ type: enum[self.Algo]
+ description: >
+ Rotation algorithm use for cold redundancy. 0 is BMC Specific, 1 is User
+ Specific.
+ - name: RotationRankOrder
+ type: array[byte]
+ description: >
+ The rank order for each PSU, 0 means will not go into cold standby
+ state.
+ - name: PeriodOfRotation
+ type: uint32
+ description: >
+ Rotation Period for cold redundancy. If rotation algorithm is BMC
+ Specific, and rotation is enabled, BMC will change PSU rank order after
+ this time. The unit of this PeriodOfRotation is in seconds.
+ - name: ColdRedundancyStatus
+ type: enum[self.Status]
+ description: >
+ Cold redundancy setting status, set in progress or set completed.
+ - name: PSUNumber
+ type: byte
+ description: >
+ Number of PSUs are currently on system.
+
+enumerations:
+ - name: Algo
+ description: >
+ Rotation algorithm use for cold redundancy.
+ values:
+ - name: bmcSpecific
+ description: >
+ With BMC Specific algorithm, when rotation happen, BMC will add 1 to
+ the rank order in each PSU and change the last rank order to the
+ first rank order.
+ - name: userSpecific
+ description: >
+ With User Specific algorithm, user need to set the RotationRankOrder
+ every time before rotation happen, then BMC will update the rank
+ order to PSU.
+ - name: Status
+ description: >
+ Cold redundancy setting status.
+ values:
+ - name: inProgress
+ description: >
+ This status is only use for multi-node system, after any of the
+ property setting on one node, before all the nodes sync to same
+ value, the status will show in progress.
+ - name: completed
+ description: >
+ For single ndoe system, the status always keep show completed. For
+ multi-node system, only after all the nodes sync to same value of
+ the properties, the status will be completed.