PCONFIGURE_ADAPTER_CHANNEL função de retorno de chamada (wdm.h)
A rotina ConfigureAdapterChannel invoca uma função personalizada implementada pelo controlador DMA representado por um objeto adaptador.
Sintaxe
PCONFIGURE_ADAPTER_CHANNEL PconfigureAdapterChannel;
NTSTATUS PconfigureAdapterChannel(
[in] PDMA_ADAPTER DmaAdapter,
[in] ULONG FunctionNumber,
[in] PVOID Context
)
{...}
Parâmetros
[in] DmaAdapter
Um ponteiro para uma estrutura DMA_ADAPTER . Essa estrutura é o objeto do adaptador que representa o canal DMA do sistema do driver. O chamador obteve esse ponteiro de uma chamada anterior para a rotina IoGetDmaAdapter .
[in] FunctionNumber
O número da função personalizada a ser selecionada. Para obter mais informações, consulte a seção Comentários.
[in] Context
Um ponteiro para os parâmetros de configuração da função personalizada especificada por FunctionNumber. A função é implementada pelo controlador DMA e pode ser acessada por um driver de dispositivo por meio do objeto do adaptador. O controlador de DMA e o driver do dispositivo devem concordar com o significado desses parâmetros de configuração. Os dados para os quais Context aponta são opacos para o sistema operacional.
Retornar valor
ConfigureAdapterChannel retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os possíveis valores retornados por erro incluem o código de status a seguir.
Valor retornado | Descrição |
---|---|
|
A extensão DMA não implementa a função especificada por FunctionNumber. |
Comentários
ConfigureAdapterChannel não é uma rotina do sistema que pode ser chamada diretamente pelo nome. Essa rotina só pode ser chamada por ponteiro do endereço retornado em uma estrutura DMA_OPERATIONS. Os drivers obtêm o endereço dessa rotina chamando IoGetDmaAdapter com o membro Version do parâmetro DeviceDescription definido como DEVICE_DESCRIPTION_VERSION3. Se IoGetDmaAdapter retornar NULL, a rotina não estará disponível em sua plataforma.
Use ConfigureAdapterChannel somente para adaptadores de DMA do sistema. Não use essa rotina para um adaptador de master de barramento.
Um controlador de DMA do sistema específico pode ter recursos de hardware especiais que os drivers de dispositivo podem acessar por meio de um conjunto de uma ou mais funções personalizadas. Um controlador pode implementar mais de uma função personalizada, nesse caso, cada função é identificada por um número de função diferente. Essas funções abstraem os recursos de hardware do DMA para que as mesmas funções possam ter suporte em diferentes plataformas de hardware.
Normalmente, uma função personalizada define informações de estado no controlador DMA para configurar recursos de hardware para uso em transferências de DMA subsequentes.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 8. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | <= DISPATCH_LEVEL |