]> rtime.felk.cvut.cz Git - jailhouse.git/commit
x86: Add handler of accesses to PCI configuration space via I/O ports
authorIvan Kolchin <ivan.kolchin@siemens.com>
Tue, 15 Apr 2014 06:15:26 +0000 (10:15 +0400)
committerJan Kiszka <jan.kiszka@siemens.com>
Sat, 19 Apr 2014 06:43:31 +0000 (08:43 +0200)
commit9f49a9b899440fa77359fd32c1716d6f025c68a9
tree250ab5bfa27d09e365b268777b286c0db4c96678
parent8f06dde7e437d1d31f82d4009c40bcb54128802c
x86: Add handler of accesses to PCI configuration space via I/O ports

Guest attempts to access ports 0xcf8 and 0xcfc are processed. String
and REP-prefixed instructions are not supported for this space. Ownership
of a device a cell tries to access to is checked. If the cell doesn't own it,
then hypervisor returns 0xFFFFFFFF to it. All read accesses to owned device are
not restricted. Writes all 1's to specific registers such as BARs or expansion
ROM address are not currently supported.
Writes to registers are moderated by white lists.

Signed-off-by: Ivan Kolchin <ivan.kolchin@siemens.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
hypervisor/arch/x86/Makefile
hypervisor/arch/x86/include/asm/cell.h
hypervisor/arch/x86/include/asm/pci.h [new file with mode: 0644]
hypervisor/arch/x86/pci.c [new file with mode: 0644]
hypervisor/arch/x86/vmx.c
hypervisor/control.c
hypervisor/include/jailhouse/pci.h [new file with mode: 0644]
hypervisor/pci.c [new file with mode: 0644]