qemu/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
..
Kconfig kconfig: add CONFIG_MSI_NONBROKEN 2019-03-18 09:39:57 +01:00
meson.build meson: convert hw/pci 2020-08-21 06:30:28 -04:00
msi.c pci/msi: export msi_is_masked() 2019-02-05 10:58:33 -05:00
msix.c migration: Replace migration's JSON writer by the general one 2020-12-19 10:39:16 +01:00
pci_bridge.c hw/pci/pci_bridge: Use the IEC binary prefix definitions 2020-06-09 14:18:04 -04:00
pci_host.c hw/pci-host: save/restore pci host config register 2020-07-27 10:24:39 -04:00
pci-stub.c qapi: Extract PCI commands to 'pci.json' 2020-09-29 15:41:36 +02:00
pci.c pci: sprinkle assert in PCI pin number 2021-04-01 12:19:52 -04:00
pcie_aer.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
pcie_host.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
pcie_port.c pcie_root_port: Add hotplug disabling option 2020-03-08 09:18:29 -04:00
pcie.c virtio-pci: compat page aligned ATS 2021-04-06 07:11:36 -04:00
shpc.c pci/shpc: don't push attention button when ejecting powered-off device 2021-01-13 09:06:37 -05:00
slotid_cap.c pci: Convert shpc_init() to Error 2017-07-03 22:29:49 +03:00
trace-events trace-events: Shorten file names in comments 2019-03-22 16:18:07 +00:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00