1description: >
2    Implement to provide host state management
3
4properties:
5    - name: RequestedHostTransition
6      type: enum[self.Transition]
7      default: "Off"
8      description: >
9          The desired host transition.  This will be preserved across AC power
10          cycles of the BMC.
11      errors:
12          - xyz.openbmc_project.State.Host.Error.BMCNotReady
13
14    - name: CurrentHostState
15      type: enum[self.HostState]
16      description: >
17          A read-only property describing the current state of the host
18          firmware. A user can determine if a system is in transition by
19          comparing the CurrentHostState and the RequestedHostTransition
20          properties.
21
22    - name: RestartCause
23      type: enum[self.RestartCause]
24      default: "Unknown"
25      description: >
26          A property to define restart cause of a host.
27
28enumerations:
29    - name: Transition
30      description: >
31          The desired transition for host firmware
32      values:
33          - name: "Off"
34            description: >
35                Host firmware should be off
36          - name: "On"
37            description: >
38                Host firmware should be on
39          - name: "Reboot"
40            description: >
41                Host firmware should be rebooted. Chassis power will be cycled
42                from off to on during this reboot
43          - name: "GracefulWarmReboot"
44            description: >
45                Host firmware be will notified to shutdown and once complete,
46                the host firmware will be rebooted. Chassis power will remain on
47                throughout the reboot
48          - name: "ForceWarmReboot"
49            description: >
50                Host firmware will be rebooted without notification and chassis
51                power will remain on throughout the reboot
52
53    - name: HostState
54      description: >
55          The current state of the host firmware
56      values:
57          - name: "Off"
58            description: >
59                Host firmware is not running
60          - name: "TransitioningToOff"
61            description: >
62                Host firmware is transitioning to an Off state
63          - name: "Standby"
64            description: >
65                Host firmware is in a standby state. It is awaiting a Transition
66                request to On to move to Running. This is an intermediate state
67                that some implementations of this object may move to between Off
68                and Running.
69          - name: "Running"
70            description: >
71                Host firmware is running
72          - name: "TransitioningToRunning"
73            description: >
74                Host firmware is transitioning to a Running state
75          - name: "Quiesced"
76            description: >
77                Host firmware is quiesced. The host firmware is enabled but
78                either unresponsive or only processing a restricted set of
79                commands. This state can be a result of the host entering an
80                error state or booting into a BIOS setup environment. The
81                BootProgress property will provide details on which it is.
82          - name: "DiagnosticMode"
83            description: >
84                Host firmware is capturing debug information. Powering off your
85                system while the host is in this state will prevent the debug
86                data from being properly collected. The host will move to one of
87                the other states once complete.
88
89    - name: RestartCause
90      description: >
91          The reason for host restart.
92      values:
93          - name: "Unknown"
94            description: >
95                Reason Unknown
96          - name: "RemoteCommand"
97            description: >
98                Remote command issued
99          - name: "ResetButton"
100            description: >
101                Reset button pressed
102          - name: "PowerButton"
103            description: >
104                Power button pressed
105          - name: "WatchdogTimer"
106            description: >
107                Watchdog Timer expired
108          - name: "PowerPolicyAlwaysOn"
109            description: >
110                Power Policy Host Always on
111          - name: "PowerPolicyPreviousState"
112            description: >
113                Power Policy Previous State of Host
114          - name: "SoftReset"
115            description: >
116                Soft reset of Host
117          - name: "ScheduledPowerOn"
118            description: >
119                The restart was scheduled via the
120                xyz.openbmc_project.State.ScheduledHostTransition interface
121          - name: "HostCrash"
122            description: >
123                The host firmware crashed and the BMC has automatically
124                initiated a restart of the host firmware
125