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


Правила для звуковых драйверов

Правила соответствия DDI для аудио драйверов минипорта (PortCls) проверяют интерфейс DDI между PortCls.sys и его драйверами минипорта.

В этом разделе

Тема Описание

PcAddAdapterDevice

Правило PcAddAdapterDevice указывает, что драйвер мини-порта PortCls правильно использует функцию PcAddAdapterDevice , в частности, что DeviceExtensionSize должно быть либо нулевым (0), либо не меньше PORT_CLASS_DEVICE_EXTENSION_SIZE.

PcAllocateAndMapPages

Правило PcAllocateAndMapPages указывает, что драйвер мини-порта PortCls вызывает следующие интерфейсы, используя правильные параметры:

  • IPortWaveRTStream::AllocatePagesForMdl
  • IPortWaveRTStream::AllocateContiguousPagesForMdl
  • IPortWaveRTStream::MapAllocatedPages

PcAllocatedPages

Правило PcAllocatedPages указывает, что драйвер мини-порта PortCls освобождает предыдущие выделенные страницы путем вызова методов AllocatePagesForMdl или AllocateContiguousPagesForMdl.

PcIrqlDDIs

Правило PcIrqlDDIs указывает, что драйвер минипорта PortCls должен вызывать DDIs PortCls на правильном уровне IRQL.

PcIrqlIport

Правило PcIrqlIport указывает, что драйвер минипорта PortCls должен вызывать интерфейсы IPort PortCls на правильном уровне IRQL.

PcPoRequestPowerIrp

Это правило проверяет, что драйвер минипорта PortCls не должен вызывать PoRequestPowerIrp с IRP_MN_SET_POWER.

PcPropertyRequest

Правило PcPropertyRequest указывает, что драйвер мини-порта PortCls никогда не должен вызывать pcCompletePendingPropertyRequest со значением NtStatus STATUS_PENDING.

PcRegisterAdapterPower

Правило PcRegisterAdapterPower указывает, что драйвер минипорта PortCls не должен:

PcTimedWaveRtStreamSetState

Правило PcTimedWaveRtStreamSetState указывает, что минипорт-драйвер ProtCls выполняет переходы состояния через IMiniportWaveRTStream::SetState в течение требуемого времени.

PcUnmapAllocatedPages

Правило PcUnmapAllocatedPages указывает следующее:

  • Драйвер минипорта PortCls не сопоставляет MDL, который уже сопоставлен, без предварительного разсопоставления.
  • Драйвер минипорта PortCls размечает память перед её освобождением, используя интерфейс IMiniportWaveRTStream.