Compartir a través de


Reglas para controladores de audio

Las reglas de cumplimiento de DDI para los controladores de minipuerto de audio (PortCls) comprueban la interfaz DDI entre PortCls.sys y sus controladores de minipuerto.

En esta sección

Tema Descripción

PcAddAdapterDevice

La regla PcAddAdapterDevice especifica que un controlador de miniporte PortCls usa correctamente la función PcAddAdapterDevice , específicamente que DeviceExtensionSize debe ser cero (0) o no menor que PORT_CLASS_DEVICE_EXTENSION_SIZE.

PcAllocateAndMapPages

La regla PcAllocateAndMapPages especifica que un controlador de minipuerto PortCls llama a las interfaces siguientes mediante los parámetros correctos:

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

PcAllocatedPages

La regla PcAllocatedPages especifica que un controlador de miniporte portCls libera páginas asignadas anteriores llamando a los métodos AllocatePagesForMdl o AllocateContiguousPagesForMdl.

PcIrqlDDIs

La regla PcIrqlDDIs especifica que un controlador de minipuerto PortCls debe llamar a DDIs portCls en el nivel IRQL correcto.

PcIrqlIport

La regla PcIrqlIport especifica que un controlador de miniport portCls debe llamar a las interfaces IPort de PortCls en el nivel IRQL correcto.

PcPoRequestPowerIrp

Esta regla comprueba que un controlador de miniporte portCls no debe llamar a PoRequestPowerIrp con IRP_MN_SET_POWER.

PcPropertyRequest

La regla PcPropertyRequest especifica que un controlador de miniport portCls nunca debe llamar al pcCompletePendingPropertyRequest con un valor NtStatus de STATUS_PENDING.

PcRegisterAdapterPower

La regla PcRegisterAdapterPower especifica que un controlador de miniporte PortCls no debe:

PcTimedWaveRtStreamSetState

La regla PcTimedWaveRtStreamSetState especifica que un controlador de miniporte de ProtCls realiza transiciones de estado a través de IMiniportWaveRTStream::SetState dentro del tiempo necesario.

PcUnmapAllocatedPages

La regla PcUnmapAllocatedPages especifica que:

  • Un controlador de minipuerto de PortCls no asigna un MDL que está asignado actualmente sin desasignar primero.
  • Un controlador de miniporte PortCls desasignación de la memoria antes de liberarla mediante la interfaz IMiniportWaveRTStream .