Carregamento de bateria no ambiente de inicialização para Windows 10 Mobile

Para dispositivos que executam Windows 10 Mobile, o BSP que os OEMs recebem do fornecedor do SoC inclui um driver de carregamento de bateria UEFI projetado especificamente para o hardware do fornecedor do SoC. Os OEMs normalmente modificam esse driver para personalizá-lo para seu hardware.

Se esse driver for projetado para funcionar com o driver de carregamento de bateria UEFI fornecido pela Microsoft, o driver implementará o protocolo de carregamento de bateria UEFI e o aplicativo de carregamento de bateria UEFI da Microsoft se comunicará com o driver usando esse protocolo.

Como alternativa, os OEMs podem, opcionalmente, implementar seu próprio aplicativo de carregamento de bateria UEFI que é usado em vez do aplicativo da Microsoft. Nesse cenário, o driver de carregamento de bateria UEFI não deve implementar o protocolo de carregamento de bateria UEFI. O Gerenciador de Inicialização do Windows carregará o aplicativo de carregamento de bateria UEFI da Microsoft se o driver implementar esse protocolo.

A maioria das informações neste artigo se aplica a dispositivos que usam o aplicativo de carregamento de bateria UEFI fornecido pela Microsoft. O termo aplicativo de carregamento de bateria UEFI neste artigo refere-se à biblioteca de carregamento de bateria UEFI carregada por mobilestartup.efi. Para obter mais informações sobre mobilestartup.efi, consulte Inicialização e UEFI.

Noções básicas sobre o processo de carregamento da bateria de inicialização fornecido pela Microsoft

As etapas a seguir descrevem o processo de carregamento durante o fluxo de inicialização para dispositivos que usam o aplicativo de carregamento de bateria UEFI fornecido pela Microsoft:

  1. O dispositivo é ativado por estar conectado a uma fonte de energia ou por um usuário pressionando o botão de energia.

  2. O carregador de inicialização de firmware específico do SoC é executado e executa uma das seguintes ações:

    • Se o carregador de inicialização detectar uma fonte de alimentação conectada e uma bateria estiver no dispositivo, o dispositivo começará a carregar a bateria e continuará sendo inicializado no ambiente UEFI para o Gerenciador de Inicialização.

    • Se o carregador de inicialização não detectar uma fonte de energia e a bateria estiver muito baixa para ser inicializada no ambiente UEFI, o dispositivo será desligado.

    • Se o carregador de inicialização detectar uma fonte de alimentação conectada, mas não houver bateria no dispositivo, o dispositivo continuará inicializando no ambiente UEFI para o aplicativo de carregamento de bateria UEFI. Quando o aplicativo tenta carregar a bateria, o driver de carregamento da bateria UEFI retorna um erro para o aplicativo para indicar que a bateria não foi detectada. O aplicativo lida com esse erro exibindo uma interface do usuário de erro e desligando o dispositivo. Para obter mais informações, consulte Arquitetura do aplicativo de carregamento de bateria UEFI fornecido pela Microsoft.

  3. O Gerenciador de Inicialização executa o aplicativo de carregamento de bateria.

    • Se o dispositivo detectar uma fonte de alimentação conectada, o dispositivo entrará no modo de carregamento da bateria. O aplicativo de carregamento de bateria interfaces com o driver de carregamento de bateria UEFI e o driver UEFI USBFn para carregar a bateria. Para obter mais informações, consulte Protocolo de carregamento de bateria UEFI.

    • Se o dispositivo não detectar uma fonte de alimentação conectada e a bateria estiver muito baixa para ser inicializada no sistema operacional principal, o dispositivo será desligado.

  4. Dependendo do valor de um valor de registro personalizável por OEM, o aplicativo de carregamento de bateria continua o processo de inicialização depois que o dispositivo atinge um limite ou aguarda o usuário segurar o botão de energia antes de fazer isso.

O diagrama a seguir ilustra os componentes envolvidos com o processo de carregamento da bateria de inicialização. Este diagrama omite intencionalmente muitos componentes UEFI para se concentrar no processo de carregamento da bateria; para obter uma exibição mais abrangente do processo de inicialização uefi, consulte Inicialização e UEFI.

fluxo de carregamento de bateria pré-inicialização.

Estados de carregamento compatíveis com o aplicativo de carregamento de bateria fornecido pela Microsoft

Quando o processo de carregamento da bateria de inicialização atinge o aplicativo de carregamento de bateria UEFI, o dispositivo pode entrar em vários estados diferentes, dependendo de como ele está configurado. Esses estados são chamados de carregamento de limite e carregamento de energia.

Carregamento de limite

O diagrama a seguir mostra o processo de carregamento de bateria de inicialização padrão. Nesse processo, o dispositivo é inicializado no sistema operacional principal assim que a bateria atinge um determinado limite, chamado de limite inicialização para o sistema operacional principal. Para obter mais informações sobre esse e outros limites definidos como parte do processo de carregamento da bateria, consulte Limites de carregamento da bateria.

fluxo de bateria de pré-inicialização para carregamento de limite.

As etapas a seguir ilustram o fluxo de interface do usuário correspondente para esse processo de carregamento:

  1. Se a bateria não tiver carga suficiente para atender ao limite de inicialização para o sistema operacional principal , o dispositivo alterna entre as seguintes telas de interface do usuário de bateria baixa por 10 segundos. Se o usuário pressionar o botão Ligar/Desligar dentro desse intervalo de 10 segundos, o dispositivo continuará alternando entre as seguintes telas de interface do usuário de bateria baixa por mais 10 segundos.

    Captura de tela que mostra uma bateria fraca.Captura de tela que mostra uma bateria fraca com um plugue de energia.

  2. Se o dispositivo ficar ocioso por 10 segundos, o dispositivo desativa a tela.

    Captura de tela que mostra uma tela preta.

  3. Depois que o dispositivo atinge o limite inicialização para o sistema operacional principal , o dispositivo exibe o logotipo de inicialização OEM e é inicializado no sistema operacional principal. A captura de tela a seguir demonstra um exemplo de logotipo de inicialização OEM.

    Captura de tela que mostra um logotipo O E M com pouca bateria.

Carregamento de desligar

Windows 10 dá suporte à capacidade de carregar a bateria enquanto o dispositivo parece estar desativado da perspectiva do usuário. Esse recurso é chamado de carregamento de desligar. Informações sobre como habilitar esse recurso serão fornecidas em uma versão futura desta documentação.

Importante

O carregamento de desligar só pode ser configurado quando a imagem do dispositivo é gerada. O sistema operacional Windows 10 não fornece uma maneira para os usuários habilitarem ou desabilitarem o carregamento de energia.

Se o carregamento de desligar estiver habilitado, o dispositivo permanecerá sob o controle do aplicativo de carregamento de bateria mesmo depois que o limite de inicialização para o sistema operacional principal for atingido. O dispositivo permanece nesse estado até que o usuário mantenha o botão de energia por 2 segundos ou mais para inicializar o dispositivo no sistema operacional principal.

Mesmo quando o carregamento de desligar está habilitado, os usuários nem sempre passam pelo caminho de carregamento de desligar. Se o dispositivo for reinicializado (por exemplo, devido a uma atualização ou porque as configurações de idioma do sistema foram alteradas) enquanto ele estiver ligado e conectado a uma fonte de alimentação, o dispositivo ignorará o modo de carregamento de desligar e será inicializado diretamente para o sistema operacional principal depois que o limite de carregamento de pré-inicialização for atingido. O modo de carregamento de desligar também será ignorado se o usuário mantiver pressionado o botão de energia para reinicializar o dispositivo enquanto ele estiver ligado e conectado a uma fonte de energia.

O diagrama a seguir mostra o processo de carregamento da bateria de inicialização quando o carregamento de energia está habilitado.

fluxo de bateria de pré-inicialização para carregamento de energia.

As etapas a seguir ilustram o fluxo de interface do usuário correspondente enquanto o carregamento de desligar está habilitado:

  1. Se a bateria não tiver carga suficiente para atender ao limite de inicialização para o sistema operacional principal , o dispositivo alterna entre as seguintes telas de interface do usuário de bateria baixa vermelha por 10 segundos. Se o usuário pressionar o botão Ligar/Desligar dentro desse intervalo de 10 segundos, o dispositivo continuará alternando entre as seguintes telas de interface do usuário de bateria baixa por mais 10 segundos.

    Captura de tela que mostra uma bateria baixa branca e vermelha.Captura de tela que mostra uma bateria baixa branca e vermelha com um plugue de energia.

  2. Se o dispositivo ficar ocioso por 10 segundos, o dispositivo desativa a tela.

    tela com pouca bateria preta.

  3. Depois que o dispositivo atinge o limite inicialização para o sistema operacional principal , o dispositivo alterna entre as telas de interface do usuário de bateria baixa branca a seguir por 10 segundos em vez de inicializar diretamente para o sistema operacional principal. Se o usuário pressionar o botão Ligar/Desligar por uma curta duração (menos de 2 segundos) dentro desse intervalo de 10 segundos, o dispositivo continuará alternando entre as seguintes telas de interface do usuário de bateria baixa por mais 10 segundos.

    Captura de tela que mostra uma interface do usuário de bateria baixa branca e preta.Captura de tela que mostra uma bateria baixa branca e preta com uma interface do usuário do plugue de energia.

  4. Se o dispositivo ficar ocioso por 10 segundos, o dispositivo desativa a tela.

    tela com pouca bateria preta.

  5. Se o usuário pressionar o botão Ligar/Desligar por 2 segundos ou mais, o dispositivo exibirá o logotipo de inicialização OEM e será inicializado no sistema operacional principal. A captura de tela a seguir demonstra um exemplo de logotipo de inicialização OEM.

    logotipo de oem de tela de bateria baixa.

Limites de carregamento da bateria

A Microsoft definiu vários limites de carregamento de bateria para garantir a experiência correta do usuário de carregamento de bateria. Alguns desses limites devem ser implementados pelo OEM para garantir o comportamento correto de carregamento da bateria. O diagrama a seguir ilustra como cada um dos limites de carregamento se ajusta (este diagrama não é desenhado para dimensionar).

limites de carregamento de bateria de pré-inicialização.

O lado esquerdo do diagrama mostra todos os limites que afetam a experiência do usuário quando o dispositivo está sendo carregado e o lado direito do diagrama mostra todos os limites que afetam a experiência do usuário quando o dispositivo está sendo descarregado. A tabela a seguir descreve cada um dos limites.

Limite Descrição Diretrizes de configuração
Limite de carregamento de firmware Esse é o limite no qual o dispositivo é inicializado desde o carregamento baseado em hardware até o carregamento baseado em firmware. É necessário manter o dispositivo na fase de carregamento de hardware para carregar e proteger a bateria quando estiver muito baixo para inicializar no firmware. Os OEMs devem definir esse limite para ser menor que o limite de Inicialização para UEFI. Entre em contato com o fornecedor do SoC para obter detalhes sobre como modificar esse limite.
Inicialização para o limite uefi Esse é o limite no qual o dispositivo é inicializado do carregamento baseado em firmware para o carregamento baseado em UEFI (que é fornecido pela Microsoft). É necessário manter o dispositivo na fase de carregamento do firmware para carregar a bateria quando estiver muito baixo para inicializar no firmware. Os OEMs devem definir esse limite para ser maior que o limite de carregamento do Firmware, mas menor que o limite do sistema operacional inicial para o sistema operacional principal . Entre em contato com o fornecedor do SoC para obter detalhes sobre como modificar esse limite.
Inicializar para o limite principal do sistema operacional Esse é o limite no qual o dispositivo é inicializado do carregamento baseado em UEFI para o sistema operacional principal no modo de carregamento limite. É necessário manter o dispositivo na fase de carregamento uefi para carregar a bateria quando estiver muito baixo para inicializar no sistema operacional principal. Os OEMs devem definir esse limite para ser maior que o limite de Inicialização para UEFI e o limite de desligamento do sistema operacional principal. Esse limite é definido em percentual da capacidade total da bateria. Por padrão, esse valor é definido como 7%. Informações sobre como definir esse limite serão fornecidas em uma versão futura desta documentação.
Inicialização para atualizar o limite de redefinição do sistema operacional/dispositivo Esse é o limite no qual o dispositivo é inicializado do carregamento baseado em UEFI para o sistema operacional de atualização ou para o modo de redefinição do dispositivo. É necessário manter o dispositivo na fase de carregamento uefi para carregar a bateria quando ela estiver muito baixa para sustentar o processo de uma atualização ou redefinição de dispositivo. Esse limite é definido como o limite inicial para o sistema operacional principal + 8%.
Bateria cheia Esse é o limite no qual a bateria está em 100% de sua capacidade total. Nesse limite, o ícone de bateria na bandeja do sistema mostra um ícone de bateria completa. Os OEMs devem calibrar seu perfil de bateria de modo que o dispositivo sempre possa atingir a capacidade total da bateria.
Limite de economia de bateria Esse é o limite no qual a economia de bateria é habilitada automaticamente se o usuário tiver configurado a economia de bateria. Esse limite é definido como 20% da capacidade total da bateria e isso não pode ser alterado pelo OEM.
Limite de aviso do sistema operacional principal Esse é o limite no qual o dispositivo exibe uma notificação para o usuário de que a bateria está baixa. Esse limite é definido como 10% da capacidade total da bateria e isso não pode ser alterado pelo OEM.
Limite de desligamento do sistema operacional principal Esse é o limite no qual o software desliga com segurança o dispositivo. É necessário para evitar a corrupção da memória do sistema. O OEM deve definir esse limite para ser inferior ao limite inicial para o sistema operacional principal e inferior ao limite de aviso do sistema operacional principal. Além disso, esse limite deve ser maior ou igual a 2%. Esse limite é definido pelo membro DefaultAlert1 do struct BATTERY_INFORMATION . Entre em contato com o fornecedor do SoC para obter detalhes sobre como modificar esse limite.
Limite de desligamento de hardware Esse é o limite no qual o hardware força o dispositivo a desligar. É necessário proteger a bateria de ser descarregada muito baixa. Esse limite é definido pelo fornecedor do SoC e não deve ser alterado pelo OEM.

Arquitetura do aplicativo de carregamento de bateria UEFI fornecido pela Microsoft

Inicialização e UEFI