forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'vfio-v6.6-rc1' of https://github.com/awilliam/linux-vfio
Pull VFIO updates from Alex Williamson: - VFIO direct character device (cdev) interface support. This extracts the vfio device fd from the container and group model, and is intended to be the native uAPI for use with IOMMUFD (Yi Liu) - Enhancements to the PCI hot reset interface in support of cdev usage (Yi Liu) - Fix a potential race between registering and unregistering vfio files in the kvm-vfio interface and extend use of a lock to avoid extra drop and acquires (Dmitry Torokhov) - A new vfio-pci variant driver for the AMD/Pensando Distributed Services Card (PDS) Ethernet device, supporting live migration (Brett Creeley) - Cleanups to remove redundant owner setup in cdx and fsl bus drivers, and simplify driver init/exit in fsl code (Li Zetao) - Fix uninitialized hole in data structure and pad capability structures for alignment (Stefan Hajnoczi) * tag 'vfio-v6.6-rc1' of https://github.com/awilliam/linux-vfio: (53 commits) vfio/pds: Send type for SUSPEND_STATUS command vfio/pds: fix return value in pds_vfio_get_lm_file() pds_core: Fix function header descriptions vfio: align capability structures vfio/type1: fix cap_migration information leak vfio/fsl-mc: Use module_fsl_mc_driver macro to simplify the code vfio/cdx: Remove redundant initialization owner in vfio_cdx_driver vfio/pds: Add Kconfig and documentation vfio/pds: Add support for firmware recovery vfio/pds: Add support for dirty page tracking vfio/pds: Add VFIO live migration support vfio/pds: register with the pds_core PF pds_core: Require callers of register/unregister to pass PF drvdata vfio/pds: Initial support for pds VFIO driver vfio: Commonize combine_ranges for use in other VFIO drivers kvm/vfio: avoid bouncing the mutex when adding and deleting groups kvm/vfio: ensure kvg instance stays around in kvm_vfio_group_add() docs: vfio: Add vfio device cdev description vfio: Compile vfio_group infrastructure optionally vfio: Move the IOMMU_CAP_CACHE_COHERENCY check in __vfio_register_dev() ...
- Loading branch information
Showing
55 changed files
with
4,350 additions
and
458 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
79 changes: 79 additions & 0 deletions
79
Documentation/networking/device_drivers/ethernet/amd/pds_vfio_pci.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
.. SPDX-License-Identifier: GPL-2.0+ | ||
.. note: can be edited and viewed with /usr/bin/formiko-vim | ||
========================================================== | ||
PCI VFIO driver for the AMD/Pensando(R) DSC adapter family | ||
========================================================== | ||
|
||
AMD/Pensando Linux VFIO PCI Device Driver | ||
Copyright(c) 2023 Advanced Micro Devices, Inc. | ||
|
||
Overview | ||
======== | ||
|
||
The ``pds-vfio-pci`` module is a PCI driver that supports Live Migration | ||
capable Virtual Function (VF) devices in the DSC hardware. | ||
|
||
Using the device | ||
================ | ||
|
||
The pds-vfio-pci device is enabled via multiple configuration steps and | ||
depends on the ``pds_core`` driver to create and enable SR-IOV Virtual | ||
Function devices. | ||
|
||
Shown below are the steps to bind the driver to a VF and also to the | ||
associated auxiliary device created by the ``pds_core`` driver. This | ||
example assumes the pds_core and pds-vfio-pci modules are already | ||
loaded. | ||
|
||
.. code-block:: bash | ||
:name: example-setup-script | ||
#!/bin/bash | ||
PF_BUS="0000:60" | ||
PF_BDF="0000:60:00.0" | ||
VF_BDF="0000:60:00.1" | ||
# Prevent non-vfio VF driver from probing the VF device | ||
echo 0 > /sys/class/pci_bus/$PF_BUS/device/$PF_BDF/sriov_drivers_autoprobe | ||
# Create single VF for Live Migration via pds_core | ||
echo 1 > /sys/bus/pci/drivers/pds_core/$PF_BDF/sriov_numvfs | ||
# Allow the VF to be bound to the pds-vfio-pci driver | ||
echo "pds-vfio-pci" > /sys/class/pci_bus/$PF_BUS/device/$VF_BDF/driver_override | ||
# Bind the VF to the pds-vfio-pci driver | ||
echo "$VF_BDF" > /sys/bus/pci/drivers/pds-vfio-pci/bind | ||
After performing the steps above, a file in /dev/vfio/<iommu_group> | ||
should have been created. | ||
|
||
|
||
Enabling the driver | ||
=================== | ||
|
||
The driver is enabled via the standard kernel configuration system, | ||
using the make command:: | ||
|
||
make oldconfig/menuconfig/etc. | ||
|
||
The driver is located in the menu structure at: | ||
|
||
-> Device Drivers | ||
-> VFIO Non-Privileged userspace driver framework | ||
-> VFIO support for PDS PCI devices | ||
|
||
Support | ||
======= | ||
|
||
For general Linux networking support, please use the netdev mailing | ||
list, which is monitored by Pensando personnel:: | ||
|
||
[email protected] | ||
|
||
For more specific support needs, please use the Pensando driver support | ||
email:: | ||
|
||
[email protected] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22482,6 +22482,13 @@ S: Maintained | |
P: Documentation/driver-api/vfio-pci-device-specific-driver-acceptance.rst | ||
F: drivers/vfio/pci/*/ | ||
|
||
VFIO PDS PCI DRIVER | ||
M: Brett Creeley <[email protected]> | ||
L: [email protected] | ||
S: Maintained | ||
F: Documentation/networking/device_drivers/ethernet/amd/pds_vfio_pci.rst | ||
F: drivers/vfio/pci/pds/ | ||
|
||
VFIO PLATFORM DRIVER | ||
M: Eric Auger <[email protected]> | ||
L: [email protected] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.