| <link rel="stylesheet" href="../style.css" /> |
| |
| [TOC] |
| # fuchsia.hardware.power.statecontrol |
| |
| <div class="fidl-version-div"><span class="fidl-attribute fidl-version">Added: 7</span></div> |
| |
| ## **PROTOCOLS** |
| |
| ## Admin {#Admin} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=43)* |
| <p>Provides methods to request that the system be transitioned into a supported power state.</p> |
| <p>Note (see fxbug.dev/58348): |
| These methods do not return until after the state transition has been completed. In most cases |
| (e.g. Reboot), a successful transition means that the caller does not actually observe the |
| completion because the system will be rebooted before the call is completed. The implication is |
| that using a synchronous FIDL client with these methods will result in a blocked thread for the |
| duration of the call, or even for the remainder of the component's life (in the case of Reboot). |
| Therefore, if a synchronous FIDL client is to be used with this protocol then care should be |
| taken to avoid handling any shutdown-induced callbacks on the same thread that was used to |
| initiate the transition. Example callbacks include <a class='link' href='../fuchsia.process.lifecycle/'>fuchsia.process.lifecycle</a>/<a class='link' href='../fuchsia.process.lifecycle/#Lifecycle.Stop'>Lifecycle.Stop</a> |
| and <a class='link' href='../fuchsia.hardware.power.statecontrol/'>fuchsia.hardware.power.statecontrol</a>/<a class='link' href='../fuchsia.hardware.power.statecontrol/#RebootMethodsWatcher.OnReboot'>RebootMethodsWatcher.OnReboot</a>. |
| Alternatively, the caller could choose to use an asynchronous FIDL client with this protocol to |
| avoid blocking their calling thread.</p> |
| |
| ### Mexec {#Admin.Mexec} |
| |
| <p>Performs a kernel mexec.</p> |
| <p>It is expected that the ZBI items specified by |
| <code>zx_system_mexec_payload_get()</code> have not yet been appended to the |
| provided data ZBI.</p> |
| |
| #### Request {#Admin.Mexec_Request} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>kernel_zbi</code></td> |
| <td> |
| <code>handle<vmo></code> |
| </td> |
| </tr> |
| <tr> |
| <td><code>data_zbi</code></td> |
| <td> |
| <code>handle<vmo></code> |
| </td> |
| </tr> |
| </table> |
| |
| |
| #### Response {#Admin.Mexec_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Mexec_Result'>Admin_Mexec_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### PowerFullyOn {#Admin.PowerFullyOn} |
| |
| <p>Asks the device to enter a fully on state.</p> |
| |
| #### Request {#Admin.PowerFullyOn_Request} |
| |
| <EMPTY> |
| |
| |
| #### Response {#Admin.PowerFullyOn_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_PowerFullyOn_Result'>Admin_PowerFullyOn_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### Poweroff {#Admin.Poweroff} |
| |
| <p>Asks all devices to enter a powered off state.</p> |
| |
| #### Request {#Admin.Poweroff_Request} |
| |
| <EMPTY> |
| |
| |
| #### Response {#Admin.Poweroff_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Poweroff_Result'>Admin_Poweroff_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### Reboot {#Admin.Reboot} |
| |
| <p>Asks the device to reboot.</p> |
| |
| #### Request {#Admin.Reboot_Request} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>reason</code></td> |
| <td> |
| <code><a class='link' href='#RebootReason'>RebootReason</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| |
| #### Response {#Admin.Reboot_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Reboot_Result'>Admin_Reboot_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### RebootToBootloader {#Admin.RebootToBootloader} |
| |
| <p>Asks the device to reboot into the bootloader.</p> |
| |
| #### Request {#Admin.RebootToBootloader_Request} |
| |
| <EMPTY> |
| |
| |
| #### Response {#Admin.RebootToBootloader_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_RebootToBootloader_Result'>Admin_RebootToBootloader_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### RebootToRecovery {#Admin.RebootToRecovery} |
| |
| <p>Asks the device to reboot into the recovery partition.</p> |
| |
| #### Request {#Admin.RebootToRecovery_Request} |
| |
| <EMPTY> |
| |
| |
| #### Response {#Admin.RebootToRecovery_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_RebootToRecovery_Result'>Admin_RebootToRecovery_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ### SuspendToRam {#Admin.SuspendToRam} |
| |
| |
| #### Request {#Admin.SuspendToRam_Request} |
| |
| <EMPTY> |
| |
| |
| #### Response {#Admin.SuspendToRam_Response} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>result</code></td> |
| <td> |
| <code><a class='link' href='#Admin_SuspendToRam_Result'>Admin_SuspendToRam_Result</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| ## RebootMethodsWatcher {#RebootMethodsWatcher} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=94)* |
| <p>Allows components to be notified when Reboot related methods are called. Watchers will be given |
| 'MAX_REBOOT_WATCHER_RESPONSE_TIME_SECONDS' to return before the system power state is changed. |
| The channel will be used once to send a notification to the watcher. Once the watcher responds |
| or the timeout expires, the channel will be closed by the client of RebootMethodsWatcher.</p> |
| |
| ### OnReboot {#RebootMethodsWatcher.OnReboot} |
| |
| |
| #### Request {#RebootMethodsWatcher.OnReboot_Request} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>reason</code></td> |
| <td> |
| <code><a class='link' href='#RebootReason'>RebootReason</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| |
| #### Response {#RebootMethodsWatcher.OnReboot_Response} |
| |
| <EMPTY> |
| |
| ## RebootMethodsWatcherRegister {#RebootMethodsWatcherRegister} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=79)* |
| <p>Allows components to register a callback that will be executed when a Reboot method is called. |
| The main purpose of this protocol is to be able to track reboot reasons. Consider relying on |
| Component Framework's orderly shutdown if you're looking at using this protocol.</p> |
| |
| ### Register {#RebootMethodsWatcherRegister.Register} |
| |
| <p>Register a watcher to be notified when a Reboot method is called. The Register channel |
| will be used at most once to notify the watcher of an impending reboot and allow it |
| the chance to respond.</p> |
| <p>Watchers can unregister by closing the underlying channel.</p> |
| |
| #### Request {#RebootMethodsWatcherRegister.Register_Request} |
| |
| <table> |
| <tr><th>Name</th><th>Type</th></tr> |
| <tr> |
| <td><code>watcher</code></td> |
| <td> |
| <code><a class='link' href='#RebootMethodsWatcher'>RebootMethodsWatcher</a></code> |
| </td> |
| </tr> |
| </table> |
| |
| |
| |
| ## **STRUCTS** |
| |
| ### Admin_Mexec_Response {#Admin_Mexec_Response data-text="Admin_Mexec_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=69)* |
| |
| <EMPTY> |
| |
| ### Admin_PowerFullyOn_Response {#Admin_PowerFullyOn_Response data-text="Admin_PowerFullyOn_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=45)* |
| |
| <EMPTY> |
| |
| ### Admin_Poweroff_Response {#Admin_Poweroff_Response data-text="Admin_Poweroff_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=59)* |
| |
| <EMPTY> |
| |
| ### Admin_RebootToBootloader_Response {#Admin_RebootToBootloader_Response data-text="Admin_RebootToBootloader_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=53)* |
| |
| <EMPTY> |
| |
| ### Admin_RebootToRecovery_Response {#Admin_RebootToRecovery_Response data-text="Admin_RebootToRecovery_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=56)* |
| |
| <EMPTY> |
| |
| ### Admin_Reboot_Response {#Admin_Reboot_Response data-text="Admin_Reboot_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=50)* |
| |
| <EMPTY> |
| |
| ### Admin_SuspendToRam_Response {#Admin_SuspendToRam_Response data-text="Admin_SuspendToRam_Response"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=71)* |
| |
| <EMPTY> |
| |
| |
| ## **ENUMS** |
| |
| ### RebootReason [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#RebootReason data-text="RebootReason"} |
| Type: <code>uint32</code> |
| |
| *Defined in [fuchsia.hardware.power.statecontrol/reboot_reason.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/reboot_reason.fidl;l=8)* |
| <p>Why the system reboots.</p> |
| |
| <table> |
| <tr><th>Name</th><th>Value</th><th>Description</th></tr> |
| <tr id="RebootReason.USER_REQUEST"> |
| <td><h3 id="RebootReason.USER_REQUEST" class="add-link hide-from-toc">USER_REQUEST</h3></td> |
| <td><code>1</code></td> |
| <td></td> |
| </tr> |
| <tr id="RebootReason.SYSTEM_UPDATE"> |
| <td><h3 id="RebootReason.SYSTEM_UPDATE" class="add-link hide-from-toc">SYSTEM_UPDATE</h3></td> |
| <td><code>2</code></td> |
| <td><p>A new system update has been downloaded.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.RETRY_SYSTEM_UPDATE"> |
| <td><h3 id="RebootReason.RETRY_SYSTEM_UPDATE" class="add-link hide-from-toc">RETRY_SYSTEM_UPDATE</h3></td> |
| <td><code>8</code></td> |
| <td><p>Applying the system update has failed.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.HIGH_TEMPERATURE"> |
| <td><h3 id="RebootReason.HIGH_TEMPERATURE" class="add-link hide-from-toc">HIGH_TEMPERATURE</h3></td> |
| <td><code>3</code></td> |
| <td></td> |
| </tr> |
| <tr id="RebootReason.FACTORY_DATA_RESET"> |
| <td><h3 id="RebootReason.FACTORY_DATA_RESET" class="add-link hide-from-toc">FACTORY_DATA_RESET</h3></td> |
| <td><code>6</code></td> |
| <td></td> |
| </tr> |
| <tr id="RebootReason.SESSION_FAILURE"> |
| <td><h3 id="RebootReason.SESSION_FAILURE" class="add-link hide-from-toc">SESSION_FAILURE</h3></td> |
| <td><code>4</code></td> |
| <td><p>Sessionmgr has failed.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.SYSMGR_FAILURE"> |
| <td><h3 id="RebootReason.SYSMGR_FAILURE" class="add-link hide-from-toc">SYSMGR_FAILURE</h3></td> |
| <td><code>5</code></td> |
| <td><p>sysmgr crashed.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.CRITICAL_COMPONENT_FAILURE"> |
| <td><h3 id="RebootReason.CRITICAL_COMPONENT_FAILURE" class="add-link hide-from-toc">CRITICAL_COMPONENT_FAILURE</h3></td> |
| <td><code>7</code></td> |
| <td><p>A critical system component has failed.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.ZBI_SWAP"> |
| <td><h3 id="RebootReason.ZBI_SWAP" class="add-link hide-from-toc">ZBI_SWAP</h3></td> |
| <td><code>9</code></td> |
| <td><p>A boot partition change was effected.</p> |
| </td> |
| </tr> |
| <tr id="RebootReason.OUT_OF_MEMORY"> |
| <td><h3 id="RebootReason.OUT_OF_MEMORY" class="add-link hide-from-toc">OUT_OF_MEMORY</h3></td> |
| <td><code>10</code></td> |
| <td><p>The system hit a critical low threshold of available memory.</p> |
| </td> |
| </tr> |
| </table> |
| |
| ### SystemPowerState [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#SystemPowerState data-text="SystemPowerState"} |
| Type: <code>uint8</code> |
| |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=11)* |
| |
| <table> |
| <tr><th>Name</th><th>Value</th><th>Description</th></tr> |
| <tr id="SystemPowerState.FULLY_ON"> |
| <td><h3 id="SystemPowerState.FULLY_ON" class="add-link hide-from-toc">FULLY_ON</h3></td> |
| <td><code>1</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.REBOOT"> |
| <td><h3 id="SystemPowerState.REBOOT" class="add-link hide-from-toc">REBOOT</h3></td> |
| <td><code>2</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.REBOOT_BOOTLOADER"> |
| <td><h3 id="SystemPowerState.REBOOT_BOOTLOADER" class="add-link hide-from-toc">REBOOT_BOOTLOADER</h3></td> |
| <td><code>3</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.REBOOT_RECOVERY"> |
| <td><h3 id="SystemPowerState.REBOOT_RECOVERY" class="add-link hide-from-toc">REBOOT_RECOVERY</h3></td> |
| <td><code>4</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.POWEROFF"> |
| <td><h3 id="SystemPowerState.POWEROFF" class="add-link hide-from-toc">POWEROFF</h3></td> |
| <td><code>5</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.MEXEC"> |
| <td><h3 id="SystemPowerState.MEXEC" class="add-link hide-from-toc">MEXEC</h3></td> |
| <td><code>6</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.SUSPEND_RAM"> |
| <td><h3 id="SystemPowerState.SUSPEND_RAM" class="add-link hide-from-toc">SUSPEND_RAM</h3></td> |
| <td><code>7</code></td> |
| <td></td> |
| </tr> |
| <tr id="SystemPowerState.REBOOT_KERNEL_INITIATED"> |
| <td><h3 id="SystemPowerState.REBOOT_KERNEL_INITIATED" class="add-link hide-from-toc">REBOOT_KERNEL_INITIATED</h3></td> |
| <td><code>8</code></td> |
| <td></td> |
| </tr> |
| </table> |
| |
| |
| |
| ## **UNIONS** |
| |
| ### Admin_Mexec_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_Mexec_Result data-text="Admin_Mexec_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=69)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_Mexec_Result.response"> |
| <td><h3 id="Admin_Mexec_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Mexec_Response'>Admin_Mexec_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_Mexec_Result.err"> |
| <td><h3 id="Admin_Mexec_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_PowerFullyOn_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_PowerFullyOn_Result data-text="Admin_PowerFullyOn_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=45)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_PowerFullyOn_Result.response"> |
| <td><h3 id="Admin_PowerFullyOn_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_PowerFullyOn_Response'>Admin_PowerFullyOn_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_PowerFullyOn_Result.err"> |
| <td><h3 id="Admin_PowerFullyOn_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_Poweroff_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_Poweroff_Result data-text="Admin_Poweroff_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=59)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_Poweroff_Result.response"> |
| <td><h3 id="Admin_Poweroff_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Poweroff_Response'>Admin_Poweroff_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_Poweroff_Result.err"> |
| <td><h3 id="Admin_Poweroff_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_RebootToBootloader_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_RebootToBootloader_Result data-text="Admin_RebootToBootloader_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=53)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_RebootToBootloader_Result.response"> |
| <td><h3 id="Admin_RebootToBootloader_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_RebootToBootloader_Response'>Admin_RebootToBootloader_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_RebootToBootloader_Result.err"> |
| <td><h3 id="Admin_RebootToBootloader_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_RebootToRecovery_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_RebootToRecovery_Result data-text="Admin_RebootToRecovery_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=56)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_RebootToRecovery_Result.response"> |
| <td><h3 id="Admin_RebootToRecovery_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_RebootToRecovery_Response'>Admin_RebootToRecovery_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_RebootToRecovery_Result.err"> |
| <td><h3 id="Admin_RebootToRecovery_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_Reboot_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_Reboot_Result data-text="Admin_Reboot_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=50)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_Reboot_Result.response"> |
| <td><h3 id="Admin_Reboot_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_Reboot_Response'>Admin_Reboot_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_Reboot_Result.err"> |
| <td><h3 id="Admin_Reboot_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| ### Admin_SuspendToRam_Result [strict](/fuchsia-src/reference/fidl/language/language.md#strict-vs-flexible){:.fidl-attribute} {#Admin_SuspendToRam_Result data-text="Admin_SuspendToRam_Result"} |
| *Defined in [fuchsia.hardware.power.statecontrol/admin.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=71)* |
| <table> |
| <tr><th>Ordinal</th><th>Variant</th><th>Type</th><th>Description</th></tr> |
| <tr id="Admin_SuspendToRam_Result.response"> |
| <td><h3 id="Admin_SuspendToRam_Result.response" class="add-link hide-from-toc">1</h3></td> |
| <td><code>response</code></td> |
| <td> |
| <code><a class='link' href='#Admin_SuspendToRam_Response'>Admin_SuspendToRam_Response</a></code> |
| </td> |
| <td></td> |
| </tr> |
| <tr id="Admin_SuspendToRam_Result.err"> |
| <td><h3 id="Admin_SuspendToRam_Result.err" class="add-link hide-from-toc">2</h3></td> |
| <td><code>err</code></td> |
| <td> |
| <code><a class='link' href='../zx/'>zx</a>/<a class='link' href='../zx/#status'>status</a></code> |
| </td> |
| <td></td> |
| </tr> |
| </table> |
| |
| |
| |
| ## **CONSTANTS** |
| |
| <table> |
| <tr><th>Name</th><th>Value</th><th>Type</th><th>Description</th></tr> |
| <tr id="MAX_REBOOT_WATCHER_RESPONSE_TIME_SECONDS"> |
| <td><a href="https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=26">MAX_REBOOT_WATCHER_RESPONSE_TIME_SECONDS</a></td> |
| <td> |
| <code>5</code> |
| </td> |
| <td><code>uint32</code></td> |
| <td><p>The maxium number of seconds the server will wait for responses from all RebootMethodsWatchers |
| before changing the system power state.</p> |
| </td> |
| </tr> |
| <tr id="MAX_SYSTEM_POWER_STATES"> |
| <td><a href="https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.hardware.power.statecontrol/admin.fidl;l=21">MAX_SYSTEM_POWER_STATES</a></td> |
| <td> |
| <code>8</code> |
| </td> |
| <td><code>uint32</code></td> |
| <td></td> |
| </tr> |
| </table> |