UsbPm_AssignConnectorPowerLevel fonction (usbpmapi.h)
Tente une renégociation de contrat PD avec la valeur tension/courant/puissance spécifiée.
Syntaxe
NTSTATUS UsbPm_AssignConnectorPowerLevel(
[In] USBPM_CLIENT ClientHandle,
[In] USBPM_CONNECTOR ConnectorHandle,
[In] PUSBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS Params
);
Paramètres
[In] ClientHandle
Handle que le pilote client a reçu lors d’un appel précédent à UsbPm_Register.
[In] ConnectorHandle
Handle de connecteur fourni par Policy Manager lorsqu’il appelle l’implémentation du pilote de EVT_USBPM_EVENT_CALLBACK. Le handle est défini dans le membre EventData.ConnectorStateChange.ConnectorHandle de la valeur Params .
[In] Params
Pointeur vers une structure de USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS fournie par le pilote qui contient la valeur tension/courant/puissance à négocier. Initialisez la structure en appelant USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS_INIT.
La spécification de 0 comme valeur de tension/courant/puissance pour un connecteur dans le rôle récepteur d’alimentation entraîne l’arrêt de la charge du connecteur.
Valeur retournée
Retourne STATUS_SUCCESS si l’opération réussit. Sinon, retourne une valeur NTSTATUS appropriée.
Remarques
Les paramètres négociés sont persistants uniquement tant que le partenaire de port est attaché et sont ignorés lorsque le partenaire de port est détaché. Le pilote client est requis pour appeler cette fonction en fonction de l’état actuel du connecteur, sans supposer le paramètre précédent.
Si cet appel réussit, la demande a été acceptée, mais la renégociation du contrat PD peut ne pas être terminée. Le résultat de la renégociation du contrat PD peut être un succès ou un échec.
Suite à la renégociation réussie du contrat PD, EVT_USBPM_EVENT_CALLBACK est appelé avec un événement de changement d’état du connecteur. Si la demande de renégociation du contrat PD échoue, la fonction de rappel n’est pas appelée. Par exemple, la demande est rejetée par le partenaire ou n’est plus valide, car l’état du connecteur a changé.
Dans Windows 10, version 1809, le pilote peut uniquement appeler cette fonction avec le rôle d’alimentation d’UsbCPowerRoleSink et lorsqu’un partenaire est attaché au connecteur.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10, version 1809 |
Version KMDF minimale | 1,27 % |
Version UMDF minimale | 2,27 |
En-tête | usbpmapi.h |
Bibliothèque | UsbPmApi.lib |
IRQL | PASSIVE_LEVEL |