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