Функция AtaPortInitializeEx (irb.h)
Подпрограмма библиотеки драйверов портов ATA AtaPortInitializeEx инициализирует драйверы портов и мини-портов.
Синтаксис
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 инициализирует ключевые структуры данных, используемые драйверами портов и мини-портов. Он также запускает инициализацию каналов контроллера. Следующая последовательность описывает основные действия, выполняемые этой подпрограммой:
- В своей подпрограмме DriverEntry драйвер минипорта вызывает подпрограмму библиотеки AtaPortInitializeEx драйвера порта и передает ему следующие ключевые параметры:
- ControllerInterface: содержит точки входа для подпрограмм AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabled и AtaControllerTransferModeSelect .
- Подпрограмма AtaPortInitializeEx инициализирует ключевые структуры данных, используемые драйверами портов и мини-портов, и выполняет следующие действия:
- Инициализирует таблицы диспетчеризации драйвера мини-порта.
- Выделяет расширение для объекта драйвера.
- Копирует ControllerInterface в расширение драйвера.
- После завершения инициализации драйвера порта AtaPortInitializeEx возвращается в подпрограмму DriverEntry драйвера мини-порта.
- При запуске устройства адаптера подпрограмма драйвера мини-порта AtaAdapterControl будет вызываться драйвером порта с действием управления IdeStart.
- Когда драйвер порта ATA обрабатывает запрос на запуск устройства канала, для каждого канала на контроллере вызывается подпрограмма драйвера мини-порта AtaControllerChannelEnabled , чтобы определить, включена ли она.
- После того как подпрограмма AtaControllerChannelEnabled определяет, какие каналы включены, драйвер порта ATA вызывает AtaChannelInitRoutine для этого канала.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | irb.h (включая Ata.h, Irb.h) |
Библиотека | Pciidex.lib |