摘要
为内核提供端口句柄,以便调度程序请求该端口 给定控制接口的单个电源域的功率电平转换。
这意味着,对于指定接口,将提供所提供的控件参数 以便处理程序根据功率等级信息执行转换。 提供给内核
声明
#include <zircon/syscalls-next.h>
zx_status_t zx_system_create_processor_power_level_transition_handler(
zx_handle_t resource,
uint32_t options,
zx_processor_power_control_t control,
zx_handle_t* out_port);
说明
通过为内核提供机制来实现能源感知调度
用于请求 OPP 过渡。当端口已连接且
启动后,内核会将 ZX_PKT_TYPE_OPP_TRANSITION
个单独的电源线排入队列
域转换。在任何时候,队列中的转换都不超过一个
用于能量域。
此操作的另一半需要确认此操作已发生
到zx_system_set_performance_info
(主题为ZX_POWER_DOMAIN_OPP_TRANSITION
),
如需了解详情,请参阅 zx_system_set_performance_info
文档。
如果创建的端口句柄 out_port
已关闭,则内核会在没有
转交 OPP 的能力,也就是说,关闭手柄相当于“拆卸”
端口。
“resource
”必须为 ZX_RSRC_KIND_SYSTEM
种类且
ZX_RSRC_SYSTEM_CPU_BASE
进制。
options
必须为 0。
control
用于指定此处理程序服务的功率等级控制接口。
必须为 PROCESSOR_POWER_CONTROL_CPU_DRIVER
。
out_port
必须包含有效的指针。成功后
权限
resource
的标识名必须至少具有以下权限:
ZX_RIGHT_WRITE
返回值
成功后,系统将返回 ZX_OK
,并且 out_port
将指向带有
以下权利:
ZX_RIGHT_TRANSFER
ZX_RIGHT_READ
ZX_RIGHT_WAIT
错误
如果 resource
不是有效的句柄,则为 ZX_ERR_BAD_HANDLE
。
如果 resource
未处理到资源对象,则为 ZX_ERR_WRONG_TYPE
。
如果resource
没有最低权限,则为 ZX_ERR_ACCESS_DENIED
。
如果 options
不为零、out_port
不是有效的指针,则为 ZX_ERR_INVALID_ARGS
;或者
resource
不是适当的种类或基数。
如果操作因缺少系统内存而失败,则为 ZX_ERR_NO_MEMORY
。