Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Escreve um espaço de configuração ou registo MMIO de um dispositivo virtual PCI (VPCI).
Sintaxe
typedef enum WHV_VPCI_DEVICE_REGISTER_SPACE
{
WHvVpciConfigSpace = -1,
WHvVpciBar0 = 0,
WHvVpciBar1 = 1,
WHvVpciBar2 = 2,
WHvVpciBar3 = 3,
WHvVpciBar4 = 4,
WHvVpciBar5 = 5
} WHV_VPCI_DEVICE_REGISTER_SPACE;
typedef struct WHV_VPCI_DEVICE_REGISTER
{
WHV_VPCI_DEVICE_REGISTER_SPACE Location;
UINT32 SizeInBytes;
UINT64 OffsetInBytes;
} WHV_VPCI_DEVICE_REGISTER;
HRESULT
WINAPI
WHvWriteVpciDeviceRegister(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT64 LogicalDeviceId,
_In_ const WHV_VPCI_DEVICE_REGISTER* Register,
_In_reads_bytes_(Register->SizeInBytes) const VOID* Data
);
Parameters
Partition
Handle para a partição que detém o dispositivo VPCI.
LogicalDeviceId
Especifica o identificador lógico do dispositivo VPCI.
Register
Especifica o registo a escrever, como uma WHV_VPCI_DEVICE_REGISTER estrutura que identifica o espaço de registos, o deslocamento e o tamanho.
Data
Especifica os dados a escrever no registo. O buffer deve ter pelo Register->SizeInBytes menos bytes.
Valor de retorno
Se a função tiver sucesso, o valor de retorno é S_OK.
Remarks
A WHvWriteVpciDeviceRegister função escreve um registo no espaço de configuração ou espaço MMIO da função física ou virtual PCIe associada a um dispositivo VPCI. Para espaço de configuração, o acesso a certos registos pode ser filtrado pela pilha virtual PCI subjacente para garantir a atribuição segura de VMs das funções PCIe. Para espaço MMIO, esta função pode escrever registos que não foram mapeados diretamente para o espaço de endereçamento do chamador porque a pilha PCI virtual subjacente tem de aplicar mitigações para esses registos.
Requirements
| Requirement | Value |
|---|---|
| Windows mínimo suportado | Windows 10, versão 20H2 (x64); Windows 11, versão 24H2, build 26100.3915 (Arm64) |
| Header | WinHvPlatform.h |
| Biblioteca | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Arquitetura | x64, ARM64 |