Compartilhar via


Função SerCx2InitializeDevice (sercx.h)

O método SerCx2InitializeDevice conclui a inicialização do objeto de dispositivo da 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 da 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 que são implementadas pelo driver do controlador serial. A versão 2 do controlador de estrutura serial (SerCx2) chama essas funções para configurar o controlador serial e executar operações básicas independentes dos tipos de transação de E/S (PIO, DMA do sistema ou personalizado) compatíveis com o driver.

Valor de retorno

SerCx2InitializeDevice retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os valores de retorno de erro possíveis incluem os seguintes códigos de status.

Código de retorno Descrição
STATUS_INVALID_DEVICE_REQUEST
O método foi chamado no IRQL errado ou o parâmetro Device não é um identificador WDFDEVICE válido.
STATUS_INFO_LENGTH_MISMATCH
O valor tamanho dode configuração não é igual tamanho de(SERCX2_CONFIG).
STATUS_INVALID_PARAMETER
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.
STATUS_INSUFFICIENT_RESOURCES
Recursos insuficientes estão disponíveis para executar a operação solicitada.

Observações

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 após 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 da 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 o EvtSerCx2PurgeFifos, EvtSerCx2Controle funções de retorno de chamada EvtSerCx2ApplyConfig. Caso contrário, a chamada SerCx2InitializeDevice falhará e retornará STATUS_INVALID_PARAMETER.

Se o RequestAttributes membro da estrutura SERCX2_CONFIG estiver definido como um valor diferente de WDF_NO_OBJECT_ATTRIBUTES, o driver não deverá substituir os valores gravados no ParentObject, ExecutionLevele SynchronizationScope membros 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 nesta chamada deverão corresponder aos atributos de solicitação especificados pelo driver na chamada para SerCx2InitializeDevice. Para obter mais informações, consulte de transações de Custom-Receive SerCx2 e de transações de Custom-Transmit SerCx2.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 8.1.
da Plataforma de Destino Universal
cabeçalho sercx.h
IRQL PASSIVE_LEVEL

Consulte também

EvtDriverDeviceAdd

SERCX2_CONFIG

SerCx2InitializeDeviceInit

WdfDeviceCreate

WdfDeviceInitSetRequestAttributes