mirror of
https://github.com/torvalds/linux.git
synced 2026-01-25 15:03:52 +08:00
Merge tag 'vfio-v5.13-rc1pt2' of git://github.com/awilliam/linux-vfio
Pull more VFIO updates from Alex Williamson: "A second small set of commits for this merge window, primarily to unbreak some deletions from our uAPI header. - Additional mdev sample driver cleanup (Dan Carpenter) - Doc fix (Alyssa Ross) - Unbreak uAPI from NVLink2 support removal (Alex Williamson)" * tag 'vfio-v5.13-rc1pt2' of git://github.com/awilliam/linux-vfio: docs: vfio: fix typo vfio/pci: Revert nvlink removal uAPI breakage vfio/mdev: remove unnecessary NULL check in mbochs_create()
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
VFIO - "Virtual Function I/O" [1]_
|
||||
==================================
|
||||
|
||||
Many modern system now provide DMA and interrupt remapping facilities
|
||||
Many modern systems now provide DMA and interrupt remapping facilities
|
||||
to help ensure I/O devices behave within the boundaries they've been
|
||||
allotted. This includes x86 hardware with AMD-Vi and Intel VT-d,
|
||||
POWER systems with Partitionable Endpoints (PEs) and embedded PowerPC
|
||||
|
||||
@@ -333,10 +333,21 @@ struct vfio_region_info_cap_type {
|
||||
#define VFIO_REGION_SUBTYPE_INTEL_IGD_LPC_CFG (3)
|
||||
|
||||
/* 10de vendor PCI sub-types */
|
||||
/* subtype 1 was VFIO_REGION_SUBTYPE_NVIDIA_NVLINK2_RAM, don't use */
|
||||
/*
|
||||
* NVIDIA GPU NVlink2 RAM is coherent RAM mapped onto the host address space.
|
||||
*
|
||||
* Deprecated, region no longer provided
|
||||
*/
|
||||
#define VFIO_REGION_SUBTYPE_NVIDIA_NVLINK2_RAM (1)
|
||||
|
||||
/* 1014 vendor PCI sub-types */
|
||||
/* subtype 1 was VFIO_REGION_SUBTYPE_IBM_NVLINK2_ATSD, don't use */
|
||||
/*
|
||||
* IBM NPU NVlink2 ATSD (Address Translation Shootdown) register of NPU
|
||||
* to do TLB invalidation on a GPU.
|
||||
*
|
||||
* Deprecated, region no longer provided
|
||||
*/
|
||||
#define VFIO_REGION_SUBTYPE_IBM_NVLINK2_ATSD (1)
|
||||
|
||||
/* sub-types for VFIO_REGION_TYPE_GFX */
|
||||
#define VFIO_REGION_SUBTYPE_GFX_EDID (1)
|
||||
@@ -630,9 +641,36 @@ struct vfio_device_migration_info {
|
||||
*/
|
||||
#define VFIO_REGION_INFO_CAP_MSIX_MAPPABLE 3
|
||||
|
||||
/* subtype 4 was VFIO_REGION_INFO_CAP_NVLINK2_SSATGT, don't use */
|
||||
/*
|
||||
* Capability with compressed real address (aka SSA - small system address)
|
||||
* where GPU RAM is mapped on a system bus. Used by a GPU for DMA routing
|
||||
* and by the userspace to associate a NVLink bridge with a GPU.
|
||||
*
|
||||
* Deprecated, capability no longer provided
|
||||
*/
|
||||
#define VFIO_REGION_INFO_CAP_NVLINK2_SSATGT 4
|
||||
|
||||
/* subtype 5 was VFIO_REGION_INFO_CAP_NVLINK2_LNKSPD, don't use */
|
||||
struct vfio_region_info_cap_nvlink2_ssatgt {
|
||||
struct vfio_info_cap_header header;
|
||||
__u64 tgt;
|
||||
};
|
||||
|
||||
/*
|
||||
* Capability with an NVLink link speed. The value is read by
|
||||
* the NVlink2 bridge driver from the bridge's "ibm,nvlink-speed"
|
||||
* property in the device tree. The value is fixed in the hardware
|
||||
* and failing to provide the correct value results in the link
|
||||
* not working with no indication from the driver why.
|
||||
*
|
||||
* Deprecated, capability no longer provided
|
||||
*/
|
||||
#define VFIO_REGION_INFO_CAP_NVLINK2_LNKSPD 5
|
||||
|
||||
struct vfio_region_info_cap_nvlink2_lnkspd {
|
||||
struct vfio_info_cap_header header;
|
||||
__u32 link_speed;
|
||||
__u32 __pad;
|
||||
};
|
||||
|
||||
/**
|
||||
* VFIO_DEVICE_GET_IRQ_INFO - _IOWR(VFIO_TYPE, VFIO_BASE + 9,
|
||||
|
||||
@@ -513,8 +513,6 @@ static int mbochs_create(struct mdev_device *mdev)
|
||||
struct device *dev = mdev_dev(mdev);
|
||||
struct mdev_state *mdev_state;
|
||||
|
||||
if (!type)
|
||||
type = &mbochs_types[0];
|
||||
if (type->mbytes + mbochs_used_mbytes > max_mbytes)
|
||||
return -ENOMEM;
|
||||
|
||||
|
||||
@@ -667,8 +667,7 @@ static ssize_t description_show(struct mdev_type *mtype,
|
||||
&mdpy_types[mtype_get_type_group_id(mtype)];
|
||||
|
||||
return sprintf(buf, "virtual display, %dx%d framebuffer\n",
|
||||
type ? type->width : 0,
|
||||
type ? type->height : 0);
|
||||
type->width, type->height);
|
||||
}
|
||||
static MDEV_TYPE_ATTR_RO(description);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user