Compartilhar via


GET_SET_DEVICE_DATA função de retorno de chamada (wdm.h)

A rotina GetBusData lê dados do espaço de configuração do dispositivo.

Sintaxe

GET_SET_DEVICE_DATA GetSetDeviceData;

ULONG GetSetDeviceData(
  [in] PVOID Context,
  [in] ULONG DataType,
  [in] PVOID Buffer,
  [in] ULONG Offset,
  [in] ULONG Length
)
{...}

Parâmetros

[in] Context

Um ponteiro para informações de contexto específicas da interface. O chamador passa o valor que é passado como o membro Context da estrutura BUS_INTERFACE_STANDARD para a interface.

[in] DataType

O tipo de dados de barramento a serem lidos. Para obter mais informações, consulte a discussão sobre o parâmetro WhichSpace no IRP_MN_READ_CONFIG.

[in] Buffer

Um ponteiro para o buffer que contém as informações de configuração a serem lidas do espaço de configuração do dispositivo.

[in] Offset

O deslocamento para os dados de dispositivo específicos do barramento em que essa operação de leitura começa. Por exemplo, se o parâmetro DataType for PCI_WHICHSPACE_CONFIG, o valor do parâmetro Offset será o deslocamento para Espaço de Configuração PCI.

[in] Length

O comprimento, em bytes, dos dados a serem lidos.

Retornar valor

A rotina GetBusData retorna o comprimento, em bytes, dos dados de configuração lidos após uma operação de leitura bem-sucedida. Se a operação de leitura não for bem-sucedida, um valor zero será retornado.

Comentários

Dependendo do valor do parâmetro DataType , a rotina GetBusData pode ser chamada somente dos IRQLs (níveis de solicitação de interrupção) definidos na tabela a seguir.

Valor de DataType IRQL
PCI_WHICHSPACE_CONFIG <= DIRQL
PCI_WHICHSPACE_ROM <= APC_LEVEL
PCCARD_COMMON_MEMORY

PCCARD_COMMON_MEMORY_INDIRECT

<= DISPATCH_LEVEL
PCCARD_ATTRIBUTE_MEMORY

PCCARD_ATTRIBUTE_MEMORY_INDIRECT

<= DISPATCH_LEVEL
PCCARD_PCI_CONFIGURATION_SPACE <= DIRQL
 

Os comentários a seguir se aplicam a drivers para VFs (funções virtuais) PCI Express (PCIe) em dispositivos que dão suporte à interface SR-IOV (virtualização de E/S raiz única):

  • Os drivers para VFs PCIe devem chamar a rotina GetBusData em IRQL <= APC_LEVEL.
  • Para ler dados de Configuração de PCI para a VF em IRQL = DISPATCH_LEVEL, o driver deve emitir solicitações de E/S de IRP_MN_READ_CONFIG.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho wdm.h (include Ntddk.h)
IRQL Consulte a seção Observações.

Confira também

BUS_INTERFACE_STANDARD

IRP_MN_READ_CONFIG