qemu/hw
Paul Durrant dfb6578d69 xen-hvm: stop faking I/O to access PCI config space
This patch removes the current hackery where IOREQ_TYPE_PCI_CONFIG
requests are handled by faking PIO to 0xcf8 and 0xcfc and replaces it
with direct calls to pci_host_config_read/write_common().
Doing so necessitates mapping BDFs to PCIDevices but maintaining a simple
QLIST in xen_device_realize/unrealize() will suffice.

NOTE: whilst config space accesses are currently limited to
      PCI_CONFIG_SPACE_SIZE, this patch paves the way to increasing the
      limit to PCIE_CONFIG_SPACE_SIZE when Xen gains the ability to
      emulate MCFG table accesses.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
2018-05-31 12:05:01 -07:00
..
9pfs xen: remove other open-coded use of libxengnttab 2018-05-22 11:43:21 -07:00
acpi acpi: fix a comment about aml_call0() 2018-05-20 08:58:58 +03:00
adc Include qapi/error.h exactly where needed 2018-02-09 13:50:17 +01:00
alpha hw/alpha/dp264: Use the TYPE_SMC37C669_SUPERIO 2018-03-12 16:12:49 +01:00
arm ARM: ACPI: Fix use-after-free due to memory realloc 2018-05-31 16:32:35 +01:00
audio hw/audio: Fix crashes when devices are used on ISA bus without DMA 2018-03-26 14:37:13 +02:00
block Xen 2018/05/22 2018-05-24 11:30:59 +01:00
bt hw/bt: Replace fprintf(stderr, "*\n" with error_report() 2018-01-22 09:51:00 +01:00
char xen: remove other open-coded use of libxengnttab 2018-05-22 11:43:21 -07:00
core numa: postpone options post-processing till machine_run_board_init() 2018-05-30 13:08:11 -03:00
cpu hw: use "qemu/osdep.h" as first #include in source files 2017-12-18 17:07:02 +03:00
cris Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
display bochs-display: add pcie support 2018-05-24 10:42:13 +02:00
dma xlnx-zdma: Correct mem leaks and memset to zero on desc unaligned errors 2018-05-31 14:50:52 +01:00
gpio Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
hppa Make MemoryRegion valid.accepts callback take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
i2c hw/i2c-ddc: Do not fail writes 2018-03-01 11:05:45 +00:00
i386 xen-hvm: stop faking I/O to access PCI config space 2018-05-31 12:05:01 -07:00
ide hw/ide/ahci: Keep ALLWINNER_AHCI() macro internal 2018-05-20 08:37:53 +03:00
input ps2: Fix mouse stream corruption due to lost data 2018-05-15 11:31:33 +02:00
intc KVM: GIC: Fix memory leak due to calling kvm_init_irq_routing twice 2018-05-31 16:32:35 +01:00
ipack pci: Add INTERFACE_CONVENTIONAL_PCI_DEVICE to Conventional PCI devices 2017-10-15 05:54:43 +03:00
ipmi qapi: Empty out qapi-schema.json 2018-03-02 13:45:50 -06:00
isa Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
lm32 Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
m68k hw/m68k/mcf5208: Fix trivial typo in board description 2018-05-01 15:37:54 +02:00
mem nvdimm: fix typo in label-size definition 2018-05-23 17:02:03 +03:00
microblaze Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
mips serial-isa: Use MAX_ISA_SERIAL_PORTS instead of MAX_SERIAL_PORTS 2018-04-26 13:57:00 +01:00
misc Remove unnecessary variables for function return value 2018-05-20 08:48:13 +03:00
moxie Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
net Xen 2018/05/22 2018-05-24 11:30:59 +01:00
nios2 Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
nvram Make MemoryRegion valid.accepts callback take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
openrisc Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
pci virtio,vhost,pci,pc: features, cleanups 2018-03-20 15:48:34 +00:00
pci-bridge virtio,vhost,pci,pc: features, fixes and cleanups 2018-02-13 16:33:31 +00:00
pci-host hw/pci-host/q35: Replace hardcoded value with macro 2018-05-23 03:14:40 +03:00
pcmcia
ppc ppc: Rename 2.13 machines to 3.0 2018-05-29 11:28:46 +01:00
rdma hw/rdma: Fix possible out of bounds access to port GID index 2018-05-03 20:52:29 +03:00
riscv RISC-V: QEMU 2.13 Minor Fixes 2018-05-10 10:25:15 +01:00
s390x Make memory_region_access_valid() take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
scsi Make MemoryRegion valid.accepts callback take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
sd sdcard: Correct CRC16 offset in sd_function_switch() 2018-05-15 14:58:44 +01:00
sh4 Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
smbios Move include qemu/option.h from qemu-common.h to actual users 2018-02-09 13:52:16 +01:00
sparc Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
sparc64 serial-isa: Use MAX_ISA_SERIAL_PORTS instead of MAX_SERIAL_PORTS 2018-04-26 13:57:00 +01:00
ssi xilinx_spips: Correct SNOOP_NONE state when flushing the txfifo 2018-04-26 11:04:40 +01:00
timer hw/timer/mt48t59: Fix bit-rotten NVRAM_PRINTF format strings 2018-05-20 08:50:16 +03:00
tpm tpm: extend TPM TIS with state migration support 2018-05-24 12:07:04 -04:00
tricore hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-03-12 16:12:46 +01:00
unicore32 hw/input/i8042: Extract declarations from i386/pc.h into input/i8042.h 2018-03-12 16:12:48 +01:00
usb xen: remove other open-coded use of libxengnttab 2018-05-22 11:43:21 -07:00
vfio Make address_space_translate{, _cached}() take a MemTxAttrs argument 2018-05-31 14:50:52 +01:00
virtio Make address_space_get_iotlb_entry() take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
watchdog qapi: Empty out qapi-schema.json 2018-03-02 13:45:50 -06:00
xen Make MemoryRegion valid.accepts callback take a MemTxAttrs argument 2018-05-31 16:32:35 +01:00
xenpv hw/xen*: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:29:46 +01:00
xtensa Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
Makefile.objs hw/rdma: Add wrappers and macros 2018-02-19 13:03:24 +02:00