DXGKDDI_GETMMIORANGES função de retorno de chamada (dispmprt.h)
Obtenha os intervalos de memória para uma única BARRA MMIO (saída de entrada mapeada na memória) (registro de endereço base) no dispositivo virtual.
Sintaxe
DXGKDDI_GETMMIORANGES DxgkddiGetmmioranges;
NTSTATUS DxgkddiGetmmioranges(
HANDLE Context,
PDXGKARG_GETMMIORANGES pArgs
)
{...}
Parâmetros
Context
Um identificador para o contexto do dispositivo.
pArgs
Ponteiro para uma estrutura DXGKARG_GETMMIORANGES .
Retornar valor
Retorna:
- STATUS_SUCCESS O sistema IHV não encontrou erros.
- STATUS_INVALID_DEVICE_REQUEST O dispositivo virtual encontrou um erro e deve ser interrompido à força. A falha aqui causará falha no dispositivo virtual.
- BUFFER_TO_SMALL pode fazer com que isso seja chamado novamente com um buffer maior.
Comentários
Essa função de retorno de chamada obtém os intervalos específicos nos quais interceptações e mapeamentos devem ser colocados. Esse é um mapeamento de dispersão/coleta mais flexível dos BARs do que a solução geral SR-IOV (virtualização de entrada/saída de raiz única) que permite que barras de VF (função virtual) (registros de endereço base) sejam diferentes das barras físicas e mapeiem/emulam qualquer ordem de páginas de qualquer barra física para qualquer barra virtual. Essa função DEVE conter um mapeamento para cada página na barra virtual. Se não o fizer, o dispositivo não será criado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1809 |
Cabeçalho | dispmprt.h |
IRQL | PASSIVE_LEVEL |