qemu/include/hw/pci
Jason Wang d83f46d189 virtio-pci: compat page aligned ATS
Commit 4c70875372 ("pci: advertise a page aligned ATS") advertises
the page aligned via ATS capability (RO) to unbrek recent Linux IOMMU
drivers since 5.2. But it forgot the compat the capability which
breaks the migration from old machine type:

(qemu) qemu-kvm: get_pci_config_device: Bad config data: i=0x104 read:
0 device: 20 cmask: ff wmask: 0 w1cmask:0

This patch introduces a new parameter "x-ats-page-aligned" for
virtio-pci device and turns it on for machine type which is newer than
5.1.

Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Peter Xu <peterx@redhat.com>
Cc: Dr. David Alan Gilbert <dgilbert@redhat.com>
Cc: qemu-stable@nongnu.org
Fixes: 4c70875372 ("pci: advertise a page aligned ATS")
Signed-off-by: Jason Wang <jasowang@redhat.com>
Message-Id: <20210406040330.11306-1-jasowang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2021-04-06 07:11:36 -04:00
..
msi.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
msix.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
pci_bridge.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
pci_bus.h pci: Move PCIBusClass typedef to pci.h 2020-08-27 14:04:54 -04:00
pci_host.h Use OBJECT_DECLARE_TYPE when possible 2020-09-18 14:12:32 -04:00
pci_ids.h vt82c686: Make vt82c686b-pm an abstract base class and add vt8231-pm based on it 2021-02-21 19:42:34 +01:00
pci_regs.h Supply missing header guards 2019-06-12 13:20:21 +02:00
pci.h pci: introduce acpi-index property for PCI device 2021-03-22 18:58:19 -04:00
pcie_aer.h Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
pcie_host.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
pcie_port.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
pcie_regs.h
pcie.h virtio-pci: compat page aligned ATS 2021-04-06 07:11:36 -04:00
shpc.h Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
slotid_cap.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00