Partager via


énumération USBFN_EVENT (usbfnbase.h)

Définit les notifications envoyées aux pilotes de classe.

Syntax

typedef enum _USBFN_EVENT {
  UsbfnEventMinimum,
  UsbfnEventAttach,
  UsbfnEventReset,
  UsbfnEventDetach,
  UsbfnEventSuspend,
  UsbfnEventResume,
  UsbfnEventSetupPacket,
  UsbfnEventConfigured,
  UsbfnEventUnConfigured,
  UsbfnEventPortType,
  UsbfnEventBusTearDown,
  UsbfnEventSetInterface,
  UsbfnEventMaximum
} USBFN_EVENT, *PUSBFN_EVENT;

Constantes

 
UsbfnEventMinimum
Valeur minimale de cette énumération.
UsbfnEventAttach
VBUS est alimenté. Aucune action n'est requise.
UsbfnEventReset
USBFN a terminé une réinitialisation USB. S’ils sont configurés précédemment, les pilotes de classe doivent réinitialiser leur état. Les demandes de transfert seront annulées.
UsbfnEventDetach
VBUS n’est plus alimenté.
S’ils sont configurés précédemment, les pilotes de classe doivent
réinitialiser leur état. Les demandes de transfert seront annulées.
Le champ BusSpeed de la notification est défini de manière appropriée.
UsbfnEventSuspend
Il n’y a eu aucun paquet SOF sur le bus depuis 3 ms.
Si un pilote de classe souhaite émettre une mise en éveil à distance,
le pilote doit utiliser IOCTL_INTERNAL_USBFN_SIGNAL_REMOTE_WAKEUP ou IOCTL_INTERNAL_USBFN_TRANSFER_IN.
UsbfnEventResume
USBFN est passé de la suspension à l’état précédent.
UsbfnEventSetupPacket
USBFN a reçu un paquet d’installation avec
bmRequestType.Type défini sur BMREQUEST_CLASS et
bmRequestType.Recipient défini sur BMREQUEST_TO_INTERFACE.
USBFN a transféré le paquet d’installation au pilote de classe
spécifié dans wIndex.LowByte.

Le paquet d’installation est disponible dans le champ SetupPacket du
événement. Si le transfert de contrôle ne nécessite pas d’étape de données,
les pilotes de classe doivent répondre avec
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_OUT.
Si une étape de données est requise, les pilotes de classe doivent répondre avec
un ou plusieurs IOCTL_INTERNAL_USBFN_TRANSFER_IN ou IOCTL_INTERNAL_USBFN_TRANSFER_OUT, suivis de
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_IN ou IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_OUT à l’opposé
Direction.
UsbfnEventConfigured
USBFN a reçu un paquet d’installation SET_CONFIGURATION. Transférer
les requêtes des pilotes de classe sont désormais autorisées.
ConfigurationValue de la notification est défini sur wValue.W.
UsbfnEventUnConfigured
USBFN a reçu un paquet de configuration SET_CONFIGURATION avec
wValue.W défini sur 0. S’ils sont configurés précédemment, les pilotes de classe doivent
réinitialiser leur état. Les demandes de transfert seront annulées.
UsbfnEventPortType
Action déconseillée.
UsbfnEventBusTearDown
Action déconseillée.
UsbfnEventSetInterface
USBFN a reçu un paquet de configuration SET_INTERFACE. Lors de la réception de ce
notification que le pilote de classe doit interroger pour le nouvel ensemble de points de terminaison
pour l’interface.
UsbfnEventMaximum
Valeur minimale de cette énumération.

Configuration requise

Condition requise Valeur
En-tête usbfnbase.h