次の方法で共有


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
[in] EFIへのポインター_バッテリ_充電中_プロトコルのインスタンス。

MaximumCurrent
[in] オプション。 メインバッテリの充電に使用できるmAの最大電流。 NULL値は、このプロトコルを実装するドライバーに対して、このような詳細を独自に処理するように要求します。

TargetStateOfCharge
[in] CompletionToken がNULLの場合に関数が返されるメインバッテリの充電状態 (SOC) のターゲット。 SOCはパーセンテージで表され、100%は完全な充電を示します。

CompletionToken
[in] 要求されたチャージ操作に関連付けられた EFI_BATTERY_CHARGING_COMPLETION_TOKEN へのポインタ。

戻り値

次のステータスコードのいずれかを返します。

状態コード 説明
EFI_SUCCESS 関数が正常に返されました。
EFI_INVALID_PARAMETER パラメーターが正しくありませんでした。
EFI_DEVICE_ERROR 物理デバイスでエラーが報告されました。
EFI_NOT_READY 物理デバイスがビジー状態か、この要求を処理する準備ができていません。

解説

この非ブロッキング関数は、最大充電電流で指定されたターゲットレベルにメインバッテリを充電します。

エラーを検出するには CompletionToken に含まれるイベントの種類を CreateEventEx を使用して作成されたEVT_NOTIFY_SIGNALにする必要があります。また NotifyFunctionNotifyContextとして CompletionToken に関連付ける必要があります。 状態エラーコードは CompletionTokenStatus メンバーを介して使用できます。

要件

ヘッダー: ユーザーが生成しました

EFI_BATTERY_CHARGING_PROTOCOL

EFI_BATTERY_CHARGING_COMPLETION_TOKEN