Share via


UcmUcsiPpmCreate, fonction (Ucmucsippm.h)

Crée un objet Platform Policy Manager (PPM).

Syntaxe

NTSTATUS UcmUcsiPpmCreate(
  [in]  WDFDEVICE              WdfDevice,
  [in]  PUCMUCSI_PPM_CONFIG    Config,
  [in]  PWDF_OBJECT_ATTRIBUTES Attributes,
  [out] UCMUCSIPPM             *PPMObject
);

Paramètres

[in] WdfDevice

Handle d’un objet d’appareil d’infrastructure que le pilote client a reçu lors de l’appel précédent à WdfDeviceCreate.

[in] Config

Pointeur vers une structure de UCMUCSI_PPM_CONFIG fournie par l’appelant qui est initialisée en appelant UCMUCSI_PPM_CONFIG_INIT. Le membre ConnectorCollectionHandle doit être défini sur le handle récupéré dans un appel précédent à UcmUcsiConnectorCollectionCreate.

[in] Attributes

Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES fournie par l’appelant qui contient des attributs pour le nouvel objet de collection de connecteurs. Ce paramètre est facultatif et peut être WDF_NO_OBJECT_ATTRIBUTES.

[out] PPMObject

Pointeur vers un emplacement qui reçoit un handle vers le nouvel objet PPM.

Valeur retournée

Retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette méthode peut retourner une valeur NTSTATUS appropriée.

Remarques

Le pilote client est censé appeler UcmUcsiPpmCreate à partir de la fonction de rappel EVT_WDF_DEVICE_PREPARE_HARDWARE .

La structure transmise dans Config contient les informations de connecteur Type-C nécessaires pour créer des connecteurs avec l’extension de classe de connecteur USB Type-C (UcmCx) à l’aide d’UcmConnectorCreate et ne sont pas accessibles à partir de PPM via des commandes UCSI telles que GetCapability ou GetConnectorCapability.

La structure Config contient également des ID de connecteur, qui sont requis pour le mappage un-à-un entre les connecteurs USB Type-C et les ports USB.

L’objet PPM est également un objet WDFOBJECT et crée une association un-à-un avec le handle WDFDEVICE fourni par le pilote client.

L’objet PPM est parenté avec le WDFOBJECT même lorsque UcmUcsiPpmCreate est appelé en passant WDF_NO_ATTRIBUTES. La durée de vie de l’objet est managée par le framework.

Configuration requise

Condition requise Valeur
Version KMDF minimale 1,27 %
Version UMDF minimale N/A
En-tête Ucmucsippm.h (include UcmUcsiCx.h)
Bibliothèque UcmUcsiCxStub.lib
IRQL PASSIVE_LEVEL