Поделиться через


Функция AtaPortInitializeEx (irb.h)

Подпрограмма библиотеки драйверов портов ATA AtaPortInitializeEx инициализирует драйверы портов и мини-портов.

Примечание В будущем модели драйвера портов ATA и драйвера мини-порта ATA могут быть изменены или недоступны. Вместо этого рекомендуется использовать модели драйверов Storport и драйверов для мини-портов Storport .
 

Синтаксис

ULONG AtaPortInitializeEx(
  [in] PVOID                     DriverObject,
  [in] PVOID                     RegistryPath,
  [in] PIDE_CONTROLLER_INTERFACE ControllerInterface
);

Параметры

[in] DriverObject

Указатель на объект драйвера мини-порта.

[in] RegistryPath

Содержит строку Юникода, указывающую расположение в реестре, где хранятся сведения о конфигурации драйвера мини-порта.

[in] ControllerInterface

Содержит точки входа для подпрограмм AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabled и AtaControllerTransferModeSelect .

Возвращаемое значение

AtaPortInitializeEx возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае возвращается код ошибки.

Комментарии

Подпрограмма AtaPortInitializeEx инициализирует ключевые структуры данных, используемые драйверами портов и мини-портов. Он также запускает инициализацию каналов контроллера. Следующая последовательность описывает основные действия, выполняемые этой подпрограммой:

  1. В своей подпрограмме DriverEntry драйвер минипорта вызывает подпрограмму библиотеки AtaPortInitializeEx драйвера порта и передает ему следующие ключевые параметры:
    • ControllerInterface: содержит точки входа для подпрограмм AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabled и AtaControllerTransferModeSelect .
  2. Подпрограмма AtaPortInitializeEx инициализирует ключевые структуры данных, используемые драйверами портов и мини-портов, и выполняет следующие действия:
    1. Инициализирует таблицы диспетчеризации драйвера мини-порта.
    2. Выделяет расширение для объекта драйвера.
    3. Копирует ControllerInterface в расширение драйвера.
    4. После завершения инициализации драйвера порта AtaPortInitializeEx возвращается в подпрограмму DriverEntry драйвера мини-порта.
  3. При запуске устройства адаптера подпрограмма драйвера мини-порта AtaAdapterControl будет вызываться драйвером порта с действием управления IdeStart.
  4. Когда драйвер порта ATA обрабатывает запрос на запуск устройства канала, для каждого канала на контроллере вызывается подпрограмма драйвера мини-порта AtaControllerChannelEnabled , чтобы определить, включена ли она.
  5. После того как подпрограмма AtaControllerChannelEnabled определяет, какие каналы включены, драйвер порта ATA вызывает AtaChannelInitRoutine для этого канала.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть irb.h (включая Ata.h, Irb.h)
Библиотека Pciidex.lib

См. также раздел

AtaChannelInitRoutine

AtaControllerChannelEnabled

DriverEntry

IDE_CONTROLLER_CONFIGURATION