Função SerCx2InitializeDevice (sercx.h)
O método SerCx2InitializeDevice conclui a inicialização do objeto de dispositivo de estrutura para o controlador serial.
Sintaxe
NTSTATUS SerCx2InitializeDevice(
[in] WDFDEVICE Device,
[in] PSERCX2_CONFIG Config
);
Parâmetros
[in] Device
Um identificador WDFDEVICE para o objeto de dispositivo de estrutura que representa o controlador serial. Para obter mais informações, consulte Comentários.
[in] Config
Um ponteiro para uma estrutura de SERCX2_CONFIG alocada pelo chamador que contém ponteiros para um conjunto de funções de retorno de chamada de evento implementadas pelo driver do controlador serial. A versão 2 do SerCx2 (controlador de estrutura serial) chama essas funções para configurar o controlador serial e executar operações básicas que são independentes dos tipos de transação de E/S (PIO, DMA do sistema ou personalizado) compatíveis com o driver.
Retornar valor
SerCx2InitializeDevice retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os possíveis valores retornados por erro incluem os seguintes códigos de status.
Código de retorno | Descrição |
---|---|
|
O método foi chamado no IRQL errado ou o parâmetro Device não é um identificador WDFDEVICE válido. |
|
O valorTamanho da Configuração-> não é igual a sizeof(SERCX2_CONFIG). |
|
O membro RequestAttributes não é válido ou as funções de retorno de chamada necessárias estão ausentes na lista de ponteiros de função. Para obter mais informações, consulte Comentários. |
|
Recursos insuficientes estão disponíveis para executar a operação solicitada. |
Comentários
Antes de chamar esse método, o driver do controlador serial deve ter chamado anteriormente o método SerCx2InitializeDeviceInit .
O driver do controlador serial deve chamar esse método de sua função de retorno de chamada EvtDriverDeviceAdd depois de criar um objeto de dispositivo de estrutura para o controlador serial. O driver normalmente chama um método como WdfDeviceCreate para criar o objeto de dispositivo de estrutura e obter um identificador WDFDEVICE para esse objeto.
Três dos ponteiros de função na estrutura SERCX2_CONFIG são exigidos pelo SerCx2. O driver deve implementar as funções de retorno de chamada EvtSerCx2PurgeFifos, EvtSerCx2Control e EvtSerCx2ApplyConfig . Caso contrário, a chamada SerCx2InitializeDevice falhará e retornará STATUS_INVALID_PARAMETER.
Se o membro RequestAttributes da estrutura SERCX2_CONFIG for definido como um valor diferente de WDF_NO_OBJECT_ATTRIBUTES, o driver não deverá substituir os valores gravados nos membros ParentObject, ExecutionLevel e SynchronizationScope dessa estrutura pela função WDF_OBJECT_ATTRIBUTES_INIT . Caso contrário, a chamada SerCx2InitializeDevice falhará e retornará STATUS_INVALID_PARAMETER.
Se o driver chamar o método WdfDeviceInitSetRequestAttributes para definir os atributos a serem usados para objetos de solicitação, os atributos de solicitação especificados nessa chamada deverão corresponder aos atributos de solicitação especificados pelo driver na chamada para SerCx2InitializeDevice. Para obter mais informações, consulte Transações de Custom-Receive SerCx2 e Transações de Custom-Transmit SerCx2.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 8.1. |
Plataforma de Destino | Universal |
Cabeçalho | sercx.h |
IRQL | PASSIVE_LEVEL |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de