zx_system_powerctl

摘要

TODO(https://fxbug.dev/42108078)

宣告

#include <zircon/syscalls.h>

zx_status_t zx_system_powerctl(zx_handle_t resource, uint32_t cmd);

說明

zx_system_powerctl 會根據 cmd 的值變更系統的電源狀態。Zircon 可能無法將系統置於特定電源狀態,具體取決於其對所用架構的支援程度。

指令

ZX_SYSTEM_POWERCTL_REBOOT

重新啟動系統,控制權應會通過任何相關韌體和開機載入器。

ZX_SYSTEM_POWERCTL_REBOOT_BOOTLOADER

重新啟動系統,但停在系統啟動載入程式,不要載入作業系統。

ZX_SYSTEM_POWERCTL_REBOOT_RECOVERY

重新啟動系統,但載入復原作業系統,而非主要 OS。

ZX_SYSTEM_POWERCTL_SHUTDOWN

關閉系統。

ZX_SYSTEM_POWERCTL_ACK_KERNEL_INITIATED_REBOOT

當核心先前發出信號,表示核心想要重新啟動系統,使用者空間準備好重新啟動時,就會使用這個信號。

如果核心先前未發出重新啟動的信號,則傳回 ZX_ERR_BAD_STATE。

權限

資源必須具有資源種類 ZX_RSRC_KIND_SYSTEM,且基礎為 ZX_RSRC_SYSTEM_POWER_BASE。

傳回值

ZX_OK

錯誤

如果提供無法辨識的 cmd 值,則傳回 ZX_ERR_INVALID_ARGS。

另請參閱

TODO(https://fxbug.dev/42108078)