blob: 03186c5fe93719827a13695af6dddccfb3f05ef7 [file] [log] [blame]
Josh Kingd7d237b2016-11-24 14:54:35 -06001description: >
Patrick Williams8da396c2022-03-14 14:21:02 -05002 Implementation of BMC state management. When rebooting we are in
3 transition. When Ready all services required are running
4 successfully. When we are Not Ready this implies not all services
5 have started that are required to be.
Josh Kingd7d237b2016-11-24 14:54:35 -06006
7properties:
Patrick Williams8da396c2022-03-14 14:21:02 -05008 - name: RequestedBMCTransition
9 type: enum[self.Transition]
10 default: "None"
11 description: >
12 The desired BMC transition
Josh Kingd7d237b2016-11-24 14:54:35 -060013
Patrick Williams8da396c2022-03-14 14:21:02 -050014 - name: CurrentBMCState
15 type: enum[self.BMCState]
16 description: >
17 The current state of the BMC and is a read-only property.
Josh Kingd7d237b2016-11-24 14:54:35 -060018
Patrick Williams8da396c2022-03-14 14:21:02 -050019 - name: LastRebootTime
20 type: uint64
21 description: >
22 The last time at which the BMC came out of a reboot as
23 determined by its uptime, in epoch time, in milliseconds.
Matt Spinler7b1c2212018-07-11 10:27:47 -050024
Patrick Williams8da396c2022-03-14 14:21:02 -050025 - name: LastRebootCause
26 type: enum[self.RebootCause]
27 default: "Unknown"
28 description: >
29 The last BMC reboot cause
Tim Lee2a4da802021-08-04 09:52:47 +080030
Josh Kingd7d237b2016-11-24 14:54:35 -060031enumerations:
Patrick Williams8da396c2022-03-14 14:21:02 -050032 - name: Transition
33 description: >
34 The desired transition for the BMC firmware
35 values:
36 - name: "Reboot"
37 description: >
38 BMC system should be rebooted
39 - name: "HardReboot"
40 description: >
41 BMC system should be non-gracefully rebooted.
42 - name: "None"
43 description: >
44 No transition is in progress
Josh Kingd7d237b2016-11-24 14:54:35 -060045
Patrick Williams8da396c2022-03-14 14:21:02 -050046 - name: BMCState
47 description: >
48 The current state of the BMC firmware
49 values:
50 - name: "Ready"
51 description: >
52 Ready implies all services started and are running successfully
53 - name: "NotReady"
54 description: >
55 Not ready implies not all services have started or are not running successfully
56 - name: "UpdateInProgress"
57 description: >
58 UpdateInProgress implies BMC is in firmware update mode. CurrentBMCState
59 will be set to "UpdateInProgress" while starting image download and
60 reset to Ready, once activation is done or error case during update process.
61 - name: "Quiesced"
62 description: >
63 BMC firmware is quiesced. The BMC firmware is enabled but either
64 unresponsive or only processing a restricted set of commands. This
65 state may be the result of a service within the BMC going into a
66 failed state.
Tim Lee2a4da802021-08-04 09:52:47 +080067
Patrick Williams8da396c2022-03-14 14:21:02 -050068 - name: RebootCause
69 description: >
70 The recorded reboot cause of the BMC
71 values:
72 - name: "POR"
73 description: >
74 Last reboot is caused by Power-On-Reset
75 - name: "PinholeReset"
76 description: >
77 Last reboot is caused by pinhole reset
78 - name: "Watchdog"
79 description: >
80 Last reboot is caused by Watchdog
81 - name: "Unknown"
82 description: >
83 Last reboot is caused by Unknown