blob: bd7348201317251b9c9ddfa9bb869d513d10ff75 [file] [log] [blame]
Andrew Geissler2477d9a2016-11-22 12:09:21 -06001description: >
2 Implement to provide host state management
3
4properties:
5 - name: RequestedHostTransition
6 type: enum[self.Transition]
Patrick Williams8da396c2022-03-14 14:21:02 -05007 default: "Off"
Andrew Geissler2477d9a2016-11-22 12:09:21 -06008 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -06009 The desired host transition. This will be preserved across AC power
10 cycles of the BMC.
Andrew Geisslerabb61a02023-05-25 12:47:56 -050011 errors:
12 - xyz.openbmc_project.State.Host.Error.BMCNotReady
Andrew Geissler637ea062024-01-18 14:08:52 -060013 - xyz.openbmc_project.Common.Error.NotAllowed
Thang Tran57db6a12024-10-11 11:25:40 +070014 - xyz.openbmc_project.Common.Error.Unavailable
Andrew Geissler637ea062024-01-18 14:08:52 -060015
16 - name: AllowedHostTransitions
Patrick Williamsc6883fc2024-02-27 16:19:04 -060017 type: set[enum[self.Transition]]
Andrew Geissler637ea062024-01-18 14:08:52 -060018 flags:
19 - const
20 description: >
21 A const property describing the allowed host transitions. Some systems
22 may not support all transitions so this property can be filled in with
23 only the supported transitions. If this property is empty then all are
24 supported. This list is valid from any CurrentHostState.
Andrew Geissler2477d9a2016-11-22 12:09:21 -060025
26 - name: CurrentHostState
27 type: enum[self.HostState]
28 description: >
29 A read-only property describing the current state of the host
30 firmware. A user can determine if a system is in transition by
31 comparing the CurrentHostState and the RequestedHostTransition
32 properties.
33
Vijay Khemka6bcf4ff2020-03-03 15:20:08 -080034 - name: RestartCause
35 type: enum[self.RestartCause]
Patrick Williams8da396c2022-03-14 14:21:02 -050036 default: "Unknown"
Vijay Khemka6bcf4ff2020-03-03 15:20:08 -080037 description: >
38 A property to define restart cause of a host.
39
Andrew Geissler2477d9a2016-11-22 12:09:21 -060040enumerations:
41 - name: Transition
42 description: >
Patrick Williams8da396c2022-03-14 14:21:02 -050043 The desired transition for host firmware
Andrew Geissler2477d9a2016-11-22 12:09:21 -060044 values:
Patrick Williams8da396c2022-03-14 14:21:02 -050045 - name: "Off"
46 description: >
47 Host firmware should be off
48 - name: "On"
49 description: >
50 Host firmware should be on
51 - name: "Reboot"
52 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060053 Host firmware should be rebooted. Chassis power will be cycled
54 from off to on during this reboot
Patrick Williams8da396c2022-03-14 14:21:02 -050055 - name: "GracefulWarmReboot"
56 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060057 Host firmware be will notified to shutdown and once complete,
58 the host firmware will be rebooted. Chassis power will remain on
Patrick Williams8da396c2022-03-14 14:21:02 -050059 throughout the reboot
60 - name: "ForceWarmReboot"
61 description: >
62 Host firmware will be rebooted without notification and chassis
63 power will remain on throughout the reboot
Andrew Geissler2477d9a2016-11-22 12:09:21 -060064
65 - name: HostState
66 description: >
Patrick Williams8da396c2022-03-14 14:21:02 -050067 The current state of the host firmware
Andrew Geissler2477d9a2016-11-22 12:09:21 -060068 values:
Patrick Williams8da396c2022-03-14 14:21:02 -050069 - name: "Off"
70 description: >
71 Host firmware is not running
72 - name: "TransitioningToOff"
73 description: >
74 Host firmware is transitioning to an Off state
75 - name: "Standby"
76 description: >
77 Host firmware is in a standby state. It is awaiting a Transition
78 request to On to move to Running. This is an intermediate state
79 that some implementations of this object may move to between Off
80 and Running.
81 - name: "Running"
82 description: >
83 Host firmware is running
84 - name: "TransitioningToRunning"
85 description: >
86 Host firmware is transitioning to a Running state
87 - name: "Quiesced"
88 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060089 Host firmware is quiesced. The host firmware is enabled but
90 either unresponsive or only processing a restricted set of
91 commands. This state can be a result of the host entering an
92 error state or booting into a BIOS setup environment. The
93 BootProgress property will provide details on which it is.
Patrick Williams8da396c2022-03-14 14:21:02 -050094 - name: "DiagnosticMode"
95 description: >
96 Host firmware is capturing debug information. Powering off your
Patrick Williamsa1347412022-12-06 10:56:22 -060097 system while the host is in this state will prevent the debug
98 data from being properly collected. The host will move to one of
99 the other states once complete.
Vijay Khemka6bcf4ff2020-03-03 15:20:08 -0800100
101 - name: RestartCause
102 description: >
Patrick Williams8da396c2022-03-14 14:21:02 -0500103 The reason for host restart.
Vijay Khemka6bcf4ff2020-03-03 15:20:08 -0800104 values:
Patrick Williams8da396c2022-03-14 14:21:02 -0500105 - name: "Unknown"
106 description: >
107 Reason Unknown
108 - name: "RemoteCommand"
109 description: >
110 Remote command issued
111 - name: "ResetButton"
112 description: >
113 Reset button pressed
114 - name: "PowerButton"
115 description: >
116 Power button pressed
117 - name: "WatchdogTimer"
118 description: >
119 Watchdog Timer expired
120 - name: "PowerPolicyAlwaysOn"
121 description: >
122 Power Policy Host Always on
123 - name: "PowerPolicyPreviousState"
124 description: >
125 Power Policy Previous State of Host
126 - name: "SoftReset"
127 description: >
128 Soft reset of Host
129 - name: "ScheduledPowerOn"
130 description: >
131 The restart was scheduled via the
132 xyz.openbmc_project.State.ScheduledHostTransition interface
133 - name: "HostCrash"
134 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -0600135 The host firmware crashed and the BMC has automatically
136 initiated a restart of the host firmware
Patrick Williams855b46f2024-01-15 16:21:40 -0600137
138paths:
139 - namespace: /xyz/openbmc_project/state
140 segments:
141 - name: Host
142 value: host