EFI_BATTERY_CHARGING_PROTOCOL.ChargeBattery

使用最大收费为指定目标级别的主电池充电。

语法

typedef EFI_STATUS (EFIAPI * EFI_BATTERY_CHARGING_CHARGE_BATTERY) (
    IN EFI_BATTERY_CHARGING_PROTOCOL *This,
    IN UINT32 MaximumCurrent, 
    IN UINT32 TargetStateOfCharge,
    IN EFI_BATTERY_CHARGING_COMPLETION_TOKEN *CompletionToken );

参数

This
中指向 EFI_BATTERY_CHARGING_PROTOCOL 实例的指针。

MaximumCurrent
[in] 可选。 可用于对主电池进行计费的最大电流。 如果为 NULL 值,则会提示实现此协议的驱动程序自行处理此类详细信息。

TargetStateOfCharge
中目标状态 (SOC) ,如果 CompletionToken 为 NULL,则该函数将返回主电池。 SOC 以百分比表示,100% 表示完全充电。

CompletionToken
中指向与请求的费用操作关联的 EFI_BATTERY_CHARGING_COMPLETION_TOKEN 的指针。

返回值

返回以下状态代码之一。

状态代码 说明
EFI_SUCCESS 函数已成功返回。
EFI_INVALID_PARAMETER 参数不正确。
EFI_DEVICE_ERROR 物理设备报告了一个错误。
EFI_NOT_READY 物理设备处于繁忙状态或尚未准备好处理此请求。

注解

此非阻塞函数使用最大收费为指定目标级别的主电池充电。

若要检测错误, CompletionToken 中包含的事件类型必须 EVT_NOTIFY_SIGNAL,使用 CreateEventEx 创建,并且必须将 NotifyFunctionCompletionToken 关联为 NotifyContext。 状态错误代码将通过CompletionTokenstatus成员提供。

要求

标头: 用户生成

EFI_BATTERY_CHARGING_PROTOCOL

EFI_BATTERY_CHARGING_COMPLETION_TOKEN