1description: Implement to provide the chassis power management
2
3properties:
4    - name: RequestedPowerTransition
5      type: enum[self.Transition]
6      default: "Off"
7      description: >
8          The desired power transition to start on this chassis.
9          This will be preserved across AC power cycles of the BMC.
10
11    - name: CurrentPowerState
12      type: enum[self.PowerState]
13      description: >
14          A read-only property describing the current chassis power state.
15          A user can determine if a chassis is in transition by comparing
16          the CurrentPowerState and RequestedPowerTransition properties.
17
18    - name: CurrentPowerStatus
19      type: enum[self.PowerStatus]
20      description: >
21          A read-only property describing the current chassis power status.
22          This property aggregates all available information about the status
23          of the power coming into the chassis. Note that this is different
24          then the CurrentPowerState in that it provides status of the power
25          coming into the chassis, not the actual state of the chassis power.
26
27    - name: LastStateChangeTime
28      type: uint64
29      description: >
30          The last time at which the chassis power changed state, as
31          tracked by the CurrentPowerState property, in epoch time,
32          in milliseconds.  This can be used to tell when the chassis
33          was last powered on or off.
34
35enumerations:
36    - name: Transition
37      description: >
38          The desired power transition for the chassis
39      values:
40          - name: "Off"
41            description: >
42                Chassis power should be off
43          - name: "On"
44            description: >
45                Chassis power should be on
46          - name: "PowerCycle"
47            description: >
48                Chassis power should be cycled from off to on. There will be a 5
49                second delay between the off and the on.
50
51    - name: PowerState
52      description: >
53          The current state of the chassis power
54      values:
55          - name: "Off"
56            description: >
57                Chassis power is off
58          - name: "TransitioningToOff"
59            description: >
60                Firmware is transitioning the chassis to an Off state
61          - name: "On"
62            description: >
63                Chassis power is on
64          - name: "TransitioningToOn"
65            description: >
66                Firmware is transitioning the chassis to an On state
67
68    - name: PowerStatus
69      description: >
70          The current status of the chassis power
71      values:
72          - name: "Undefined"
73            description: >
74                Chassis power status is unknown
75          - name: "BrownOut"
76            description: >
77                Chassis power status is in a brownout condition.
78          - name: "UninterruptiblePowerSupply"
79            description: >
80                Chassis power is being provided via an uninterruptible power
81                supply. Note that some systems may choose to continue to use this
82                status, even once power has returned to the system, to indicate the
83                uninterruptible power supply is charging or is below a certain
84                threshold of charged. This provides system owners the flexibility on
85                whether their system requires a certain level of charged
86                uninterruptible power supply to be in a 'Good' state or not.
87          - name: "Good"
88            description: >
89                Chassis power status is in a good condition
90