Função UcmTcpciPortControllerStop (ucmtcpciportcontroller.h)

Indica para a extensão de classe UcmTcpciCx parar de enviar solicitações de hardware para o objeto do controlador de porta.

Sintaxe

void UcmTcpciPortControllerStop(
  UCMTCPCIPORTCONTROLLER PortControllerObject
);

Parâmetros

PortControllerObject

Manipule para o objeto do controlador de porta que o driver cliente recebeu na chamada anterior para UcmTcpciPortControllerCreate.

Retornar valor

Nenhum

Comentários

Depois de chamar UcmTcpciPortControllerStop, o driver cliente para de processar todas as solicitações no objeto do controlador de porta. Essa chamada é síncrona, portanto, é garantido que a extensão de classe não invocará funções de retorno de chamada ou enviará solicitações depois de retornar. O driver não deve chamar esse método em um retorno de chamada do controlador de porta ou enquanto quaisquer solicitações de hardware não canceláveis estiverem pendentes.

Um driver cliente chama esse método de sua implementação de retorno de chamada EVT_WDF_DEVICE_RELEASE_HARDWARE . Depois de fazer isso, ele também deve chamar WdfObjectDelete, caso EVT_WDF_DEVICE_RELEASE_HARDWARE seja invocado para o rebalanceamento de recursos. A falha ao fazer isso faz com que o driver vaze objetos associados ao objeto do controlador de porta quando ocorre um rebalanceamento de recurso. A criação do identificador UCMPORTCONTROLLER para o identificador WDFDEVICE não é suficiente, pois um WDFDEVICE não é excluído em um rebalanceamento de recursos.

Se o driver estiver fazendo a transição para um estado Dx devido a S0-Idle, o driver não deverá chamar esse método de sua função de retorno de chamada EVT_WDF_DEVICE_D0_EXIT. A sincronização com o estado de energia do driver pode ser obtida usando uma fila gerenciada por energia para receber solicitações de hardware.

É seguro chamar UcmTcpciPortControllerStop em um controlador de porta que já foi interrompido. Depois que esse método retorna, nenhum outro método, exceto UcmTcpciPortControllerStart , pode ser chamado no controlador de porta.

O driver cliente deverá chamar esse método se precisar interromper todas as ações no controlador de porta para que ele possa executar a recuperação de erro se detectar problemas durante sua operação. Depois que o processo de recuperação for concluído, o driver deverá reiniciar o controlador de porta.

Parar o controlador encerra qualquer contrato PD ativo e a conexão Type-C.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10
Servidor mínimo com suporte Windows Server 2016
Plataforma de Destino Windows
Cabeçalho ucmtcpciportcontroller.h
Biblioteca Ucmtcpcicxstub.lib
IRQL PASSIVE_LEVEL

Confira também

UcmTcpciPortControllerStart