Функция UcmUcsiPpmCreate (Ucmucsippm.h)
Создает объект Диспетчера политик платформы (PPM).
Синтаксис
NTSTATUS UcmUcsiPpmCreate(
[in] WDFDEVICE WdfDevice,
[in] PUCMUCSI_PPM_CONFIG Config,
[in] PWDF_OBJECT_ATTRIBUTES Attributes,
[out] UCMUCSIPPM *PPMObject
);
Параметры
[in] WdfDevice
Дескриптор объекта устройства платформы, который драйвер клиента получил в предыдущем вызове WdfDeviceCreate.
[in] Config
Указатель на структуру, предоставляемую вызывающим UCMUCSI_PPM_CONFIG, которая инициализирована путем вызова UCMUCSI_PPM_CONFIG_INIT. Элемент ConnectorCollectionHandle должен быть задан для дескриптора, полученного в предыдущем вызове UcmUcsiConnectorCollectionCreate.
[in] Attributes
Указатель на структуру, предоставляемую вызывающим WDF_OBJECT_ATTRIBUTES, которая содержит атрибуты для нового объекта коллекции соединителей. Этот параметр является необязательным и может быть WDF_NO_OBJECT_ATTRIBUTES.
[out] PPMObject
Указатель на расположение, которое получает дескриптор новому объекту PPM.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае этот метод может вернуть соответствующее значение NTSTATUS.
Замечания
Ожидается, что драйвер клиента вызовет UcmUcsiPpmCreate из функции обратного вызова EVT_WDF_DEVICE_PREPARE_HARDWARE.
Структура, передаваемая в конфигураци и, содержит сведения о соединителях Type-C, необходимые для создания соединителей с расширением класса соединителя USB Type-C (UcmCx) с помощью UcmConnectorCreate и недоступны для получения из PPM с помощью команд UCSI, таких как GetCapability или GetConnectorCapability.
Структура конфигурации также содержит идентификаторы соединителей, необходимые для сопоставления между соединителями USB-Type-C и USB-портами.
Объект PPM также является WDFOBJECT и создает связь один к одному с дескриптором WDFDEVICE, предоставляемым драйвером клиента.
Объект PPM является родительским для WDFOBJECT даже при вызове UcmUcsiPpmCreate путем передачи WDF_NO_ATTRIBUTES. Время существования объекта управляется платформой.
Требования
Требование | Ценность |
---|---|
минимальная версия KMDF | 1.27 |
минимальная версия UMDF | N/A |
заголовка | Ucmucsippm.h (включая UcmUcsiCx.h) |
библиотеки | UcmUcsiCxStub.lib |
IRQL | PASSIVE_LEVEL |