EVT_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND función de devolución de llamada (wdfdevice.h)
[Se aplica a KMDF y UMDF]
La función de devolución de llamada de evento EvtDeviceSelfManagedIoSuspend de un controlador suspende las operaciones de E/S autoadministradas de un dispositivo.
Sintaxis
EVT_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND EvtWdfDeviceSelfManagedIoSuspend;
NTSTATUS EvtWdfDeviceSelfManagedIoSuspend(
[in] WDFDEVICE Device
)
{...}
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
Valor devuelto
Si la operación se realiza correctamente, la función de devolución de llamada EvtDeviceSelfManagedIoSuspend debe devolver STATUS_SUCCESS u otro valor de estado para el que NT_SUCCESS(status) sea true. De lo contrario, debe devolver un valor de estado para el que NT_SUCCESS(status) es igual a FALSE. Si NT_SUCCESS(status) es igual a FALSE, el marco detiene el dispositivo y quita sus objetos de dispositivo.
Si NT_SUCCESS(status) es igual a FALSE, el marco llama a las funciones de devolución de llamada EvtDeviceSelfManagedIoFlush y EvtDeviceSelfManagedIoCleanup del controlador.
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.
Comentarios
Para registrar una función de devolución de llamada EvtDeviceSelfManagedIoSuspend , un controlador debe llamar a WdfDeviceInitSetPnpPowerEventCallbacks.
Si el controlador ha registrado una función de devolución de llamada EvtDeviceSelfManagedIoSuspend , el marco lo llama por uno de los siguientes motivos:
- El dispositivo está a punto de entrar en un estado de bajo consumo.
- El dispositivo se está quitando o se ha quitado por sorpresa.
- El administrador de Plug and Play está a punto de redistribuir los recursos de hardware del sistema entre los dispositivos conectados del sistema.
Si el dispositivo está a punto de entrar en un estado de baja potencia, el marco llama a la función de devolución de llamada EvtDeviceSelfManagedIoSuspend del controlador antes de llamar a la función de devolución de llamada EvtDeviceD0Exit del controlador.
Si la función de devolución de llamada devuelve un valor de estado para el que NT_SUCCESS(status) es igual a FALSE y, si el marco intenta reducir la potencia del dispositivo, el marco detiene el dispositivo y quita sus objetos de dispositivo.
La función de devolución de llamada EvtDeviceSelfManagedIoSuspend debe hacer lo que sea necesario para detener las operaciones de E/S autoadministradas del dispositivo.
Para obtener más información sobre cuándo el marco llama a esta función de devolución de llamada, 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 Uso de Self-Managed E/S.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfdevice.h (incluir Wdf.h) |
IRQL | PASSIVE_LEVEL |