EVT_WDF_DEVICE_D0_ENTRY función de devolución de llamada (wdfdevice.h)
[Se aplica a KMDF y UMDF]
Las EvtDeviceD0Entry de un controlador función de devolución de llamada de eventos realizan operaciones necesarias cuando el dispositivo del controlador entra en el estado de energía D0.
Sintaxis
EVT_WDF_DEVICE_D0_ENTRY EvtWdfDeviceD0Entry;
NTSTATUS EvtWdfDeviceD0Entry(
[in] WDFDEVICE Device,
[in] WDF_POWER_DEVICE_STATE PreviousState
)
{...}
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
[in] PreviousState
Enumerador con tipo WDF_POWER_DEVICE_STATEque identifica el estado de energía del dispositivo anterior.
Valor devuelto
Si la función de devolución de llamada EvtDeviceD0Entry no encuentra ningún error, debe devolver STATUS_SUCCESS u otro valor de estado para el que NT_SUCCESS(estado) es igual a TRUE. De lo contrario, debe devolver un valor de estado para el que NT_SUCCESS(status) es igual a FALSE.
Para obtener más información sobre los valores devueltos de esta función de devolución de llamada, consulte Informes de errores de dispositivo.
El marco no llama a la función de devolución de llamada EvtDeviceD0Ex it del controlador después de la función de devolución de llamada EvtDeviceD0Entry devuelve un valor de estado para el que NT_SUCCESS(status) es igual a FALSE.
Observaciones
Para registrar una función de devolución de llamada EvtDeviceD0Entry para un dispositivo, un controlador debe llamar a WdfDeviceInitSetPnpPowerEventCallbacks.
Si el controlador ha registrado un EvtDeviceD0Entry función de devolución de llamada para un dispositivo, el marco llama a la función cada vez que el dispositivo entra en su estado de trabajo (D0). Un dispositivo entrará en el estado D0 cuando se produzca una de las siguientes acciones:
- Se enumera un dispositivo (porque el dispositivo se ha conectado o se ha reiniciado el sistema).
- El sistema y todos sus dispositivos vuelven a sus estados de trabajo desde un estado de baja potencia.
- El dispositivo vuelve a su estado de trabajo después de que entró en un estado de baja potencia porque estaba inactivo (si el dispositivo admite inactividad de bajo consumo).
- El administrador de Plug and Play ha redistribuido los recursos de hardware del sistema entre los dispositivos del sistema.
La función de devolución de llamada debe realizar las operaciones necesarias para que el dispositivo esté totalmente operativo, como cargar firmware o habilitar las funcionalidades del dispositivo que están deshabilitadas cuando el dispositivo está en estado de bajo consumo.
Si la función de devolución de llamada EvtDeviceD0Entry devuelve un valor de estado para el que NT_SUCCESS(estado) es igual a FALSE, el marco hace lo siguiente:
- Si el dispositivo se inicia por primera vez, el marco comienza una eliminación ordenada secuencia del dispositivo.
- Si el dispositivo vuelve de un estado de baja potencia a su estado de trabajo, el marco comienza una eliminación sorpresa secuencia del dispositivo.
Para obtener más información sobre cuándo el marco llama a la función de devolución de llamada EvtDeviceD0Entry, consulte escenarios de administración de energía y PnP.
Para obtener más información sobre los controladores que proporcionan esta función de devolución de llamada, consulte Compatibilidad con PnP y administración de energía en controladores de funciones.
La función de devolución de llamada EvtDeviceD0Entry se llama en IRQL = PASSIVE_LEVEL. No debe hacer que esta función de devolución de llamada paginable .
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Universal |
versión mínima de KMDF | 1.0 |
versión mínima de UMDF | 2.0 |
encabezado de | wdfdevice.h (incluya Wdf.h) |
irQL | PASSIVE_LEVEL (consulte la sección Comentarios) |