摘要
在指定功率內通知處理器電源等級的核心 進行能源感知排程作業
宣告
#include <zircon/syscalls-next.h>
zx_status_t zx_system_set_processor_power_level_domain(
zx_handle_t resource,
uint64_t options,
const zx_cpu_set_t* cpus,
uint64_t power_domain_id,
const zx_processor_power_level_t* power_levels,
size_t num_power_levels,
const zx_processor_power_level_transition_t* transitions,
size_t num_transitions);
說明
為特定處理器電源網域啟用節能排程功能。
電源等級會以隱含形式列舉為 power_levels
的索引。
transformations
和電源沒有訂購限制
編碼對應於 power_levels
定義的等級一個
並假設各層級之間沒有轉換,
沒有因散發能量而造成的能量成本。
提供的 power_domain_id
會提供用於提出要求的專屬 ID
系統會針對屬於 cpus
遮罩的所有 CPU 執行作業。任何電量皆可
轉換處理常式必須瞭解關聯。
這則 Syscall 應有「set or update」同義詞,例如任何新資料
會取代現有內容這適用於 power_domain_id
和 cpus
。
權限
resource
必須是 ZX_RSRC_KIND_SYSTEM
種類,且
基礎為 ZX_RSRC_SYSTEM_CPU_BASE
。
傳回值
只有在處理器電力等級網域的情況下才會傳回 ZX_OK
已成功註冊。
錯誤
如果 resource
不是有效的帳號代碼,則為 ZX_ERR_ACCESS_DENIED
。
如果 resource
不是下列項目的有效資源控制代碼,則為 ZX_ERR_WRONG_TYPE
SYSTEM 種類與 CPU 基礎。
如果num_power_levels
超過 ZX_ERR_OUT_OF_RANGE
ZX_MAX_POWER_LEVELS
或num_transitions
超出
ZX_MAX_POWER_LEVEL_TRANSITIONS
。