Compartilhar via


Requisitos de UEFI para suporte a flash USB

A Microsoft fornece várias soluções flash baseadas em USB para uso em ambientes de engenharia e fabricação. Para que um dispositivo seja usado com essas ferramentas, o ambiente UEFI no dispositivo deve atender aos requisitos listados neste tópico.

Esses requisitos relacionados ao flashing expandem os requisitos uefi listados nos requisitos uefi que se aplicam a todas as edições do Windows e aos requisitos de UEFI para Windows 10 Mobile.

Protocolos UEFI necessários

Protocolo Detalhes do requisito
Protocolo de função USB Para o flash USB no USB 3.0, o firmware deve implementar a revisão do protocolo de função USB UEFI 0x00010002 ou superior, incluindo suporte para o EFI_USBFN_IO_PROTOCOL. Configurar a funçãoEnableEndpointsEx . Para obter mais informações, consulte Protocolo de função USB UEFI.
BlockIO As soluções de flash USB fornecidas pela Microsoft selecionam o primeiro ponteiro retornado para um dispositivo de armazenamento de E/S de bloco diferente de zero para piscar. O dispositivo pode ser um armazenamento não removível ou removível.

Evento de dessenc da UEFI (opcional)

Os componentes UEFI que tentam ler ou gravar em disco durante o flash devem implementar suporte para o evento dessincronização UEFI (EFI_EVENT_GROUP_FIRMWARE_DESYNC), conforme descrito na tabela a seguir.

Requisito Descrição
Suporte aos serviços de inicialização uefi O firmware UEFI deve dar suporte aos Serviços de Evento, Temporizador e Prioridade de Tarefa, conforme definido na seção 6.1 da Especificação UEFI 2.3.1.
GUID do grupo de eventos A Microsoft define o EFI_EVENT_GROUP_FIRMWARE_DESYNC com o seguinte GUID: {24FA5E72-1A82-49A2-970B-3230372662A5}
Eventos de firmware UEFI Identifique todos os componentes de firmware uefi que exigem atualizar ou sincronizar seu estado de volta ao armazenamento regularmente. Em cada um desses componentes, crie um evento associado ao EFI_EVENT_GROUP_FIRMWARE_DESYNC e um NotifyFunction() que faz com que o componente pare de atualizar/sincronizar de volta ao armazenamento. NotifyFunction() do evento deve executar todas as operações de limpeza necessárias para que o componente faça a transição para o modo dessincronizado. Após essa limpeza, o componente não deve atualizar nem sincronizar seu armazenamento novamente com flash até a próxima reinicialização do dispositivo. Se NotifyFunction do evento falhar(), notifyFunction() não deverá retornar EFI_SUCCESS.

O exemplo de código a seguir demonstra como o firmware pode criar o evento GUID do grupo de eventos:

gBS->CreateEventEx (
    EVT_NOTIFY_SIGNAL,
    TPL_CALLBACK,
    FIRMWARE_NOTIFICATION_FUNCTION,          // To be defined by SoC Vendor
    &FIRMWARE_NOTIFICATION_FUNCTION_CONTEXT, // To be defined by SoC Vendor
    &EFI_EVENT_GROUP_FIRMWARE_DESYNC,
    &Event                                   // Event returned by CreateEventEx
);

Requisitos mínimos de UEFI para Windows em plataformas SoC

Requisitos de UEFI que se aplicam a todas as edições do Windows

Requisitos de UEFI para Windows 10 Mobile