Función UcmTcpciPortControllerStop (ucmtcpciportcontroller.h)
Indica a la extensión de clase UcmTcpciCx para dejar de enviar solicitudes de hardware al objeto de controlador de puerto.
Sintaxis
void UcmTcpciPortControllerStop(
UCMTCPCIPORTCONTROLLER PortControllerObject
);
Parámetros
PortControllerObject
Identificador del objeto de controlador de puerto que el controlador cliente recibió en la llamada anterior a UcmTcpciPortControllerCreate.
Valor devuelto
Ninguno
Observaciones
Después de llamar a UcmTcpciPortControllerStop, el controlador cliente deja de procesar todas las solicitudes en el objeto de controlador de puerto. Esta llamada es sincrónica, por lo que se garantiza que la extensión de clase no invocará funciones de devolución de llamada ni enviará solicitudes después de que se devuelva. El controlador no debe llamar a este método dentro de una devolución de llamada del controlador de puerto o mientras las solicitudes de hardware no cancelables estén pendientes.
Un controlador cliente llama a este método desde su implementación de devolución de llamada EVT_WDF_DEVICE_RELEASE_HARDWARE. Después de hacerlo, también debe llamar a WdfObjectDelete, en caso de que se invoque EVT_WDF_DEVICE_RELEASE_HARDWARE al reequilibrio de recursos. Si no lo hace, el controlador pierde objetos asociados al objeto de controlador de puerto cuando se produce un reequilibrio de recursos. El elemento primario del identificador UCMPORTCONTROLLER al identificador WDFDEVICE no es suficiente, ya que un WDFDEVICE no se elimina en un reequilibrio de recursos.
Si el controlador realiza la transición a un estado Dx debido a S0-Idle, el controlador no debe llamar a este método desde su función de devolución de llamada EVT_WDF_DEVICE_D0_EXIT. La sincronización con el estado de energía del controlador se puede lograr mediante una cola administrada por energía para recibir solicitudes de hardware.
Es seguro llamar a UcmTcpciPortControllerStop en un controlador de puerto que ya se ha detenido. Una vez devuelto este método, no se puede llamar a ningún otro método excepto UcmTcpciPortControllerStart en el controlador de puerto.
El controlador cliente debe llamar a este método si necesita detener todas las acciones en el controlador de puerto para que pueda realizar la recuperación de errores si detectó algún problema durante su operación. Una vez completado el proceso de recuperación, el controlador debe reiniciar el controlador de puerto.
Detener el controlador finaliza cualquier contrato de PD activo y la conexión Type-C.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 10 |
servidor mínimo admitido | Windows Server 2016 |
de la plataforma de destino de | Windows |
encabezado de | ucmtcpciportcontroller.h |
biblioteca de | Ucmtcpcicxstub.lib |
irQL | PASSIVE_LEVEL |