EFI_BATTERY_CHARGING_PROTOCOL. ChargeBattery

Carrega o main bateria para o nível de destino especificado com uma carga máxima atual.

Sintaxe

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 );

Parâmetros

Este
[in] Um ponteiro para a instância de EFI_BATTERY_CHARGING_PROTOCOL.

MaximumCurrent
[in] Opcional. A corrente máxima em mA que pode ser usada para carregar a bateria main. Um valor NULL solicita que o driver que implementa esse protocolo trate esses detalhes por conta própria.

TargetStateOfCharge
[in] SoC (estado de carga de destino) da bateria main após a qual a função retornaria se CompletionToken for NULL. SOC é representado em porcentagem, 100% indicando cobrança total.

CompletionToken
[in] Ponteiro para um EFI_BATTERY_CHARGING_COMPLETION_TOKEN associado à operação de cobrança solicitada.

Valor Retornado

Retorna um dos seguintes códigos de status.

Código de status Descrição
EFI_SUCCESS A função foi retornada com êxito.
EFI_INVALID_PARAMETER Um parâmetro estava incorreto.
EFI_DEVICE_ERROR O dispositivo físico relatou um erro.
EFI_NOT_READY O dispositivo físico está ocupado ou não está pronto para processar essa solicitação.

Comentários

Essa função de não bloqueio carrega a bateria main para o nível de destino especificado com uma carga máxima atual.

Para detectar erros, o tipo de evento contido em CompletionToken deve ser EVT_NOTIFY_SIGNAL, criado usando CreateEventEx e deve associar um NotifyFunction ao CompletionToken como NotifyContext. O código de erro status estará disponível por meio do membro Status do CompletionToken.

Requisitos

Cabeçalho: Usuário gerado

EFI_BATTERY_CHARGING_PROTOCOL

EFI_BATTERY_CHARGING_COMPLETION_TOKEN