pcie_sriov: Allow user to create SR-IOV device
authorAkihiko Odaki <akihiko.odaki@daynix.com>
Mon, 15 Jul 2024 05:19:11 +0000 (14:19 +0900)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 23 Jul 2024 00:15:41 +0000 (20:15 -0400)
commit122173a5830f7757f8a94a3b1559582f312e140b
treea2b02620a4e11052f10f2bfc71e4e999216162e5
parent47cc753e50076c25334091783738be9f716253b1
pcie_sriov: Allow user to create SR-IOV device

A user can create a SR-IOV device by specifying the PF with the
sriov-pf property of the VFs. The VFs must be added before the PF.

A user-creatable VF must have PCIDeviceClass::sriov_vf_user_creatable
set. Such a VF cannot refer to the PF because it is created before the
PF.

A PF that user-creatable VFs can be attached calls
pcie_sriov_pf_init_from_user_created_vfs() during realization and
pcie_sriov_pf_exit() when exiting.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20240715-sriov-v5-5-3f5539093ffc@daynix.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/pci/pci.c
hw/pci/pcie_sriov.c
include/hw/pci/pci_device.h
include/hw/pci/pcie_sriov.h