Share via


EVT_ACX_FACTORY_CIRCUIT_POWER_DOWN función de devolución de llamada (acxcircuit.h)

El controlador usa la EVT_ACX_FACTORY_CIRCUIT_POWER_DOWN devolución de llamada para agregar funcionalidad en la ruta de acceso de encendido de un objeto ACXFACTORYCIRCUIT.

Sintaxis

EVT_ACX_FACTORY_CIRCUIT_POWER_DOWN EvtAcxFactoryCircuitPowerDown;

NTSTATUS EvtAcxFactoryCircuitPowerDown(
  WDFDEVICE Device,
  ACXFACTORYCIRCUIT Factory,
  WDF_POWER_DEVICE_STATE TargetState
)
{...}

Parámetros

Device

Objeto WDFDEVICE (descrito en Resumen de objetos de marco) asociado al circuito ACX.

Factory

Objeto ACXFACTORYCIRCUIT de fábrica de circuitos existente. Para obtener más información sobre los objetos ACX, vea Resumen de objetos ACX.

TargetState

Enumeración WDF_POWER_DEVICE_STATE que identifica el estado de energía del dispositivo de destino.

Valor devuelto

Devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado. Para obtener más información, vea Uso de valores NTSTATUS.

Comentarios

Para registrar una función de devolución de llamada EvtAcxFactoryCircuitPrepareHardware, un controlador debe llamar a AcxFactoryCircuitInitSetAcxCircuitPnpPowerCallbacks.

Si el controlador ha registrado una función de devolución de llamada EvtCircuitPowerDown, el marco ACX llama a la función cada vez que uno de los dispositivos del controlador deja su estado de funcionamiento (D0). Un dispositivo deja el estado D0 cuando se produce una de las siguientes acciones:

  • El sistema y todos sus dispositivos están a punto de dejar sus estados de trabajo y entrar en un estado de bajo consumo.
  • El dispositivo está a punto de entrar en un estado de bajo consumo porque está inactivo, si el dispositivo admite inactividad de bajo consumo.
  • El administrador de Plug and Play está intentando redistribuir los recursos de hardware del sistema.
  • Un usuario ha indicado, normalmente por medio de la interfaz de usuario de una aplicación, que quiere quitar el dispositivo.
  • El marco también llama a la función de devolución de llamada EvtFactoryCircuitPowerDown después de que un dispositivo se haya quitado inesperadamente (se ha quitado sorpresa).

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.

A menos que el dispositivo se haya quitado sorpresa, el marco ACX llama a esta función de devolución de llamada inmediatamente después de deshabilitar las interrupciones del dispositivo, pero antes de que la alimentación del dispositivo se reduzca de D0 y antes de que WDF invoque la devolución de llamada EvtDeviceD0Exit del controlador en los dispositivos asociados. El parámetro TargetState identifica el estado de alimentación del dispositivo que el dispositivo está a punto de entrar.

La función de devolución de llamada EvtFactoryCircuitPowerDown debe realizar las operaciones necesarias antes de que el hardware de ACXFACTORYCIRCUT entre en el estado de baja potencia especificado, como guardar cualquier información que el controlador necesite más adelante para restaurar el hardware de ACXFACTORYCIRCUIT a su estado de alimentación D0.

Si TargetState es WdfPowerDeviceD3Final, debe suponer que el sistema se está desactivando, el dispositivo asociado está a punto de quitarse o está en curso un reequilibrio de recursos. Si el controlador debe guardar información, debe escribirla en el disco o en algún otro medio de almacenamiento permanente.

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 el controlador de funciones.

Requisitos de ACX

Versión mínima de ACX: 1.0

Para obtener más información sobre las versiones de ACX, consulte Introducción a la versión de ACX.

Requisitos

Requisito Valor
Header acxcircuit.h
IRQL PASSIVE_LEVEL

Consulte también