[PATCH 0/2] vfio pci: Add support for OpenCAPI devices
Greg Kurz
groug at kaod.org
Fri Oct 25 01:32:44 AEDT 2019
Hi Christophe,
Sorry, I didn't have time to look at your other series yet and
likely the same for this one with the upcoming KVM Forum... :-\
Anyway, for any VFIO related patch, don't forget to Cc the
maintainer, Alex Williamson <alex.williamson at redhat.com> .
Cheers,
--
Greg
On Thu, 24 Oct 2019 15:28:03 +0200
christophe lombard <clombard at linux.vnet.ibm.com> wrote:
> This series adds support for the OpenCAPI devices for vfio pci.
>
> It builds on top of the existing ocxl driver +
> http://patchwork.ozlabs.org/patch/1177999/
>
> VFIO is a Linux kernel driver framework used by QEMU to make devices
> directly assignable to virtual machines.
>
> All OpenCAPI devices on the same PCI slot will all be grouped and
> assigned to the same guest.
>
> - Assume these are the devices you want to assign
> 0007:00:00.0 Processing accelerators: IBM Device 062b
> 0007:00:00.1 Processing accelerators: IBM Device 062b
>
> - Two Devices in the group
> $ ls /sys/bus/pci/devices/0007\:00\:00.0/iommu_group/devices/
> 0007:00:00.0 0007:00:00.1
>
> - Find vendor & device ID
> $ lspci -n -s 0007:00:00
> 0007:00:00.0 1200: 1014:062b
> 0007:00:00.1 1200: 1014:062b
>
> - Unbind from the current ocxl device driver if already loaded
> $ rmmod ocxl
>
> - Load vfio-pci if it's not already done.
> $ modprobe vfio-pci
>
> - Bind to vfio-pci
> $ echo 1014 062b > /sys/bus/pci/drivers/vfio-pci/new_id
>
> This will result in a new device node "/dev/vfio/7", which will be
> use by QEMU to setup the devices for passthrough.
>
> - Pass to qemu using -device vfio-pci
> -device vfio-pci,multifunction=on,host=0007:00:00.0,addr=2.0 -device
> vfio-pci,multifunction=on,host=0007:00:00.1,addr=2.1
>
> It has been tested in a bare-metal and QEMU environment using the memcpy
> and the AFP AFUs.
>
> christophe lombard (2):
> powerpc/powernv: Register IOMMU group for OpenCAPI devices
> vfio/pci: Introduce OpenCAPI devices support.
>
> arch/powerpc/platforms/powernv/ocxl.c | 164 ++++++++++---
> arch/powerpc/platforms/powernv/pci-ioda.c | 19 +-
> arch/powerpc/platforms/powernv/pci.h | 13 +
> drivers/vfio/pci/Kconfig | 7 +
> drivers/vfio/pci/Makefile | 1 +
> drivers/vfio/pci/vfio_pci.c | 19 ++
> drivers/vfio/pci/vfio_pci_ocxl.c | 287 ++++++++++++++++++++++
> drivers/vfio/vfio.c | 25 ++
> include/linux/vfio.h | 13 +
> include/uapi/linux/vfio.h | 22 ++
> 10 files changed, 530 insertions(+), 40 deletions(-)
> create mode 100644 drivers/vfio/pci/vfio_pci_ocxl.c
>
More information about the Linuxppc-dev
mailing list