Partager via


Exigences UEFI pour la prise en charge du flash usb

Microsoft fournit plusieurs solutions de flashage USB à utiliser dans les environnements d’ingénierie et de fabrication. Pour qu’un appareil soit utilisé avec ces outils, l’environnement UEFI sur l’appareil doit répondre aux exigences répertoriées dans cette rubrique.

Ces exigences liées au flashing s’étendent aux exigences UEFI répertoriées dans Exigences UEFI qui s’appliquent à toutes les éditions de Windows et exigences UEFI pour les Windows 10 Mobile.

Protocoles UEFI requis

Protocol Détails des conditions
Protocole de fonction USB Pour un flash USB sur USB 3.0, le microprogramme doit implémenter la révision du protocole de fonction USB UEFI 0x00010002 ou une version ultérieure, y compris la prise en charge de la EFI_USBFN_IO_PROTOCOL. ConfigureEnableEndpointsEx , fonction. Pour plus d’informations, consultez Protocole de fonction USB UEFI.
BlockIO Les solutions de flashage USB fournies par Microsoft sélectionnent le premier pointeur retourné vers un périphérique de stockage d’E/S de bloc de taille non nulle pour le clignotement. L’appareil peut être un stockage non amovible ou amovible.

Événement desync UEFI (facultatif)

Les composants UEFI qui tentent de lire ou d’écrire sur le disque pendant le flashing doivent implémenter la prise en charge de l’événement de synchronisation UEFI (EFI_EVENT_GROUP_FIRMWARE_DESYNC) comme décrit dans le tableau suivant.

Condition requise Description
Prise en charge des services de démarrage UEFI Le microprogramme UEFI doit prendre en charge les services d’événement, de minuteur et de priorité des tâches tels que définis dans la section 6.1 de la spécification UEFI 2.3.1.
GUID du groupe d’événements Microsoft définit le EFI_EVENT_GROUP_FIRMWARE_DESYNC avec le GUID suivant : {24FA5E72-1A82-49A2-970B-3230372662A5}
Événements de microprogramme UEFI Identifiez régulièrement tous les composants du microprogramme UEFI qui nécessitent une actualisation ou une synchronisation de leur état dans le stockage. Dans chacun de ces composants, créez un événement associé à l’EFI_EVENT_GROUP_FIRMWARE_DESYNC et un NotifyFunction() qui entraîne l’arrêt de l’actualisation/synchronisation du composant dans le stockage. NotifyFunction() de l’événement doit effectuer toutes les opérations de nettoyage nécessaires pour que le composant passe au mode désynchronisé. Après ce nettoyage, le composant ne doit pas actualiser ou synchroniser son stockage avec flash jusqu’au prochain redémarrage de l’appareil. Si la fonction NotifyFunction de l’événement échoue(), la fonction NotifyFunction() ne doit pas retourner EFI_SUCCESS.

L’exemple de code suivant montre comment le microprogramme peut créer l’événement GUID du groupe d’événements :

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

Exigences UEFI minimales pour Windows sur les plateformes SoC

Exigences UEFI qui s’appliquent à toutes les éditions de Windows

Exigences UEFI pour Windows 10 Mobile