Функция SpbDeviceInitialize (spbcx.h)
Метод SpbDeviceInitialize завершает инициализацию драйвера контроллера SPB после того, как этот драйвер создаст связанный объект устройства.
Синтаксис
NTSTATUS SpbDeviceInitialize(
[in] WDFDEVICE FxDevice,
[in] PSPB_CONTROLLER_CONFIG Config
);
Параметры
[in] FxDevice
Дескриптор WDFDEVICE для объекта устройства, представляющего контроллер SPB.
[in] Config
Указатель на структуру SPB_CONTROLLER_CONFIG , содержащую сведения о конфигурации устройства для драйвера контроллера SPB. Эта структура должна быть инициализирована функцией SPB_CONTROLLER_CONFIG_INIT .
Возвращаемое значение
SpbDeviceInitialize возвращает STATUS_SUCCESS в случае успешного выполнения. В противном случае возвращается соответствующий код ошибки NTSTATUS.
Комментарии
Драйвер контроллера SPB вызывает этот метод, чтобы зарегистрировать функции обратного вызова событий в расширении платформы SPB (SpbCx) и указать режим передачи, используемый для очереди ввода-вывода контроллера. SpbDeviceInitialize создает все внутренние структуры данных контроллера, включая очередь ввода-вывода.
Драйвер контроллера SPB должен вызвать этот метод перед фиксацией объекта устройства, то есть перед тем, как он возвращается из обратного вызова EvtDriverDeviceAdd или добавляет PDO в дочерний список контроллера. Дочерний список представляет устройства, подключенные к шине. Дополнительные сведения см. в разделе Перечисление устройств в шине.
После возврата SpbDeviceInitialize контроллер готов к обработке запросов ввода-вывода, но драйвер контроллера SPB может при необходимости продолжить настройку параметров контроллера перед фиксацией объекта устройства.
Если структура, на которую указывает Config , заполнена неправильно, средство проверки драйверов вызовет ошибку. Дополнительные сведения о требованиях к параметру Config см. в разделе SPB_CONTROLLER_CONFIG.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows 8. |
Целевая платформа | Универсальное |
Верхняя часть | spbcx.h |
Библиотека | Spbcxstubs.lib |
IRQL | PASSIVE_LEVEL |