функция обратного вызова PGET_DMA_ADAPTER_INFO (wdm.h)

Подпрограмма GetDmaAdapterInfo извлекает сведения об аппаратных возможностях системного канала DMA.

Синтаксис

PGET_DMA_ADAPTER_INFO PgetDmaAdapterInfo;

NTSTATUS PgetDmaAdapterInfo(
  [in]      PDMA_ADAPTER DmaAdapter,
  [in, out] PDMA_ADAPTER_INFO AdapterInfo
)
{...}

Параметры

[in] DmaAdapter

Указатель на структуру DMA_ADAPTER . Эта структура является объектом адаптера, который представляет системный канал DMA драйвера. Вызывающий объект получил этот указатель из предыдущего вызова процедуры IoGetDmaAdapter .

[in, out] AdapterInfo

Указатель на структуру, выделенную вызывающим объектом DMA_ADAPTER_INFO . Подпрограмма записывает сведения о системе контроллера DMA в эту структуру. Перед вызовом GetDmaAdapterInfo вызывающий объект должен задать для элемента Version этой структуры значение DMA_ADAPTER_INFO_VERSION1.

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

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

Код возврата Описание
STATUS_NOT_SUPPORTED
Подпрограмма не поддерживает указанную версию структуры DMA_ADAPTER_INFO_XXX .

Комментарии

GetDmaAdapterInfo не является системной подпрограммой, которую можно вызывать напрямую по имени. Эта подпрограмма может вызываться только указателем из адреса, возвращаемого в структуре DMA_OPERATIONS . Драйверы получают адрес этой подпрограммы, вызывая IoGetDmaAdapter с элементом Version параметра DeviceDescription , равным DEVICE_DESCRIPTION_VERSION3. Если IoGetDmaAdapter возвращает значение NULL, подпрограмма недоступна на вашей платформе.

GetDmaAdapterInfo извлекает следующие сведения:

  • Максимальное количество элементов в точечных и собираемых списках, которое контроллер DMA может обработать в рамках одной операции DMA.
  • Ширина адреса DMA в битах.
Сведения об адаптере DMA, предоставляемые версией 1 структуры DMA_ADAPTER_INFO_XXX, см. в разделе DMA_ADAPTER_INFO_V1.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 8.
Целевая платформа Персональный компьютер
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
IRQL <= DISPATCH_LEVEL

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

DMA_ADAPTER

DMA_ADAPTER_INFO

DMA_OPERATIONS

IoGetDmaAdapter