IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_CONTROL IOCTL (ucmtcpciportcontrollerrequests.h)

Obtient les valeurs de tous les registres de contrôle définis conformément à la spécification de l’interface du contrôleur de port Type-C du bus série universel.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d'entrée

Pointeur vers une structure de UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_IN_PARAMS qui contient toutes les valeurs du registre de contrôle. Pour obtenir la structure, appelez WdfRequestRetrieveInputBuffer en passant l’objet de demande d’infrastructure reçu.

Longueur de la mémoire tampon d’entrée

Taille de la structure UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_IN_PARAMS .

Mémoire tampon de sortie

Pointeur vers la structure UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS . Pour obtenir la structure, appelez WdfRequestRetrieveOutputBuffer en passant l’objet de demande d’infrastructure reçu.

Longueur de la mémoire tampon de sortie

Taille de la structure UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS .

Bloc d’état

Irp->IoStatus.Status est défini sur STATUS_SUCCESS si la demande réussit. Sinon, état à la condition d’erreur appropriée en tant que code NTSTATUS .

Remarques

L’extension de classe UcmTcpciCx envoie cette requête IOCTL pour récupérer les valeurs des registres de contrôle. Le pilote client doit communiquer avec le contrôleur de port pour récupérer les valeurs POWER_CONTROL, ROLE_CONTROL, TCPC_CONTROL et FAULT_CONTROL Register et remplir la structure UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS reçue avec ces valeurs. Pour terminer la demande, le pilote doit définir la structure renseignée sur l’objet de demande d’infrastructure en appelant WdfRequestSetInformation , puis en appelant WdfRequestComplete pour terminer la demande.

Configuration requise

Condition requise Valeur
En-tête ucmtcpciportcontrollerrequests.h

Voir aussi

Création de requêtes IOCTL dans les pilotes

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously