Compartir a través de


OID_PNP_CAPABILITIES

El OID_PNP_CAPABILITIES OID solicita a un controlador de miniportar que devuelva las funcionalidades de reactivación de su adaptador de red o solicite a un controlador intermedio que devuelva las funcionalidades de reactivación del controlador intermedio. Las funcionalidades de reactivación tienen el formato de estructura NDIS_PNP_CAPABILITIES, que se define de la siguiente manera:

    typedef struct _NDIS_PNP_CAPABILITIES {
         ULONG Flags;
         NDIS_PM_WAKE_UP_CAPABILITIES WakeUpCapabilities;
    } NDIS_PNP_CAPABILITIES, *PNDIS_PNP_CAPABILITIES;  

Los miembros de esta estructura contienen la siguiente información:

marcas de
NDIS_DEVICE_WAKE_UP_ENABLE

NDIS establece esta marca si el controlador de miniport subyacente admite una o varias funcionalidades de reactivación. Los controladores de protocolo pueden probar esta marca para determinar si un controlador de miniport subyacente tiene funcionalidades de reactivación. Los controladores de miniportar no deben tener acceso a esta marca.

WakeUpCapabilities
Estructura NDIS_PM_WAKE_UP_CAPABILITIES que especifica las funcionalidades de reactivación del adaptador de red del controlador de miniport. La estructura NDIS_PM_WAKE_UP_CAPABILITIES se define de la siguiente manera:

typedef struct _NDIS_PM_WAKE_UP_CAPABILITIES {
         NDIS_DEVICE_POWER_STATE MinMagicPacketWakeUp;
         NDIS_DEVICE_POWER_STATE MinPatternWakeUp;
         NDIS_DEVICE_POWER_STATE MinLinkChangeWakeUp;
       } NDIS_PM_WAKE_UP_CAPABILITIES, *PNDIS_PM_WAKE_UP_CAPABILITIES;

Los miembros de esta estructura contienen la siguiente información:

MinMagicPacketWakeUp
Especifica el estado de energía del dispositivo más bajo desde el que el adaptador de red del controlador de miniporte puede indicar una reactivación al recibir un paquete mágico. (Un paquete mágico es un paquete que contiene 16 copias contiguas de la dirección Ethernet del adaptador de red receptor). El estado de energía del dispositivo se especifica como uno de los siguientes valores de NDIS_DEVICE_POWER_STATE:

NdisDeviceStateUnspecified
El adaptador de red no admite reactivaciones mágicas de paquetes.

NdisDeviceStateD0
El adaptador de red puede indicar una reactivación mágica de paquetes desde el estado de alimentación del dispositivo D0. Dado que D0 es el estado totalmente alimentado, esto no provoca una reactivación, pero se puede usar como evento en tiempo de ejecución.

NdisDeviceStateD1
El adaptador de red puede indicar una reactivación mágica de paquetes desde los estados de alimentación del dispositivo D1 y D0.

NdisDeviceStateD2
El adaptador de red puede indicar una reactivación mágica de paquetes desde estados de dispositivo D2, D1 y D0.

NdisDeviceStateD3
El adaptador de red puede indicar una reactivación mágica de paquetes desde los estados de energía del dispositivo D3, D2, D1 y D0.

MinPatternWakeUp
Especifica el estado de alimentación del dispositivo más bajo del que el adaptador de red del controlador de miniporte puede indicar un evento de reactivación al recibir un marco de red que contiene un patrón especificado por el controlador de protocolo. El estado de energía se especifica como uno de los siguientes valores de NDIS_DEVICE_POWER_STATE:

NdisDeviceStateUnspecified
El adaptador de red no admite reactivaciones de coincidencia de patrones.

NdisDeviceStateD0
El adaptador de red puede indicar una reactivación de coincidencia de patrones desde el estado de alimentación del dispositivo D0. Dado que D0 es el estado totalmente alimentado, esto no provoca una reactivación, pero se puede usar como evento en tiempo de ejecución.

NdisDeviceStateD1
El adaptador de red puede indicar una reactivación de coincidencia de patrones desde los estados de alimentación del dispositivo D1 y D0.

NdisDeviceStateD2
El adaptador de red puede indicar una reactivación de coincidencia de patrones desde los estados de alimentación del dispositivo D2, D1 y D0.

NdisDeviceStateD3
El adaptador de red puede indicar una reactivación de coincidencia de patrones desde los estados de energía del dispositivo D3, D2, D1 y D0.

MinLinkChangeWakeUp
Reservado. NDIS omite este miembro.

para controladores de miniportar

Una vez que el controlador de miniporte complete la inicialización, tanto el controlador de protocolo como el NDIS pueden consultar el controlador de miniporte con este OID para determinar lo siguiente:

  • Si el controlador de miniporte es compatible con PM.

  • Las funcionalidades del adaptador de red para indicar eventos de reactivación de red.

Si el controlador de miniporte devuelve NDIS_STATUS_SUCCESS a una consulta de OID_PNP_CAPABILITIES, NDIS considera que el controlador de miniporte es compatible con pm. Si el controlador de miniporte devuelve NDIS_STATUS_NOT_SUPPORTED, NDIS considera que el controlador de miniporte es un controlador de miniporte heredado que no es compatible con PM.

Al llamar a NdisMSetAttributesEx, un controlador de miniporte que no admite funcionalidades de reactivación, pero que puede guardar y restaurar su estado de adaptador de red en una transición de estado de energía puede establecer la marca NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND. Establecer esta marca impide que NDIS llame a la función MiniportHalt del controlador antes de que el sistema pase a un estado de baja potencia (en suspensión). Sin embargo, si el controlador de miniporte devuelve NDIS_STATUS_NOT_SUPPORTED en respuesta a una consulta OID_PNP_CAPABILITIES, NDIS omite la marca NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND y detiene el adaptador de red si el sistema entra en un estado de baja potencia.

Un adaptador de red del controlador de miniporte puede admitir cualquier combinación de eventos de reactivación, incluidos eventos de reactivación. Un controlador de miniporte todavía puede admitir la administración de energía incluso si su adaptador de red no puede indicar eventos de reactivación. En este caso, los únicos OID de administración de energía que admite el controlador de miniporte además de OID_PNP_CAPABILITIES son OID_PNP_QUERY_POWER y OID_PNP_SET_POWER.

Si un adaptador de red del controlador de miniporte no admite un evento de reactivación determinado, el controlador de miniporte debe indicar un valor NDIS_DEVICE_POWER_STATE de NdisDeviceStateUnspecified para el evento de reactivación en la estructura de NDIS_PM_WAKE_UP_CAPABILITIES.

OID_PNP_CAPABILITIES solo indica las capacidades de reactivación de un adaptador de red del controlador de miniporte; no habilita estas funcionalidades. OID_PNP_ENABLE_WAKE_UP se usa para habilitar las funcionalidades de reactivación de un adaptador de red.

para controladores intermedios

Si el adaptador de red subyacente es compatible con PM, el controlador intermedio debe devolver NDIS_STATUS_SUCCESS a una consulta de OID_PNP_CAPABILITIES. En la estructura NDIS_PM_WAKE_UP_CAPABILITIES devuelta por este OID, el controlador intermedio debe especificar un estado de potencia del dispositivo de NdisDeviceStateUnspecified para cada funcionalidad de reactivación ( MinMagicPacketWakeUp o MinPatternWakeUp). Esta respuesta indica que el controlador intermedio es compatible con PM, pero no administra un dispositivo físico.

Si el adaptador de red subyacente no es compatible con PM, el controlador intermedio debe devolver NDIS_STATUS_NOT_SUPPORTED a una consulta de OID_PNP_CAPABILITIES.

Nota Para obtener información sobre cómo los controladores de miniporte NDIS 6.20 y versiones posteriores informan sobre las funcionalidades de administración de energía, consulte Reporting Power Management Capabilities.

Requisitos

Versión

Compatible con NDIS 6.0 y NDIS 6.1. Para NDIS 6.20 y versiones posteriores, use OID_PM_CURRENT_CAPABILITIES en su lugar.

Encabezado

Ntddndis.h (include Ndis.h)

Consulte también

NDIS_DEVICE_POWER_STATE

NdisMSetAttributesEx

OID_PM_CURRENT_CAPABILITIES

OID_PNP_ENABLE_WAKE_UP

OID_PNP_QUERY_POWER

OID_PNP_SET_POWER

Reporting Power Management Capabilities