Displaying 20 results from an estimated 118 matches for "subsystem_vendor".
2023 May 03
1
[PATCH v5 virtio 01/11] virtio: allow caller to override device id in vp_modern
...virtio device id, same as legacy driver always did.
+ */
+ mdev->id.device = pci_dev->subsystem_device;
+ } else {
+ /* Modern devices: simply use PCI device id, but start from 0x1040. */
+ mdev->id.device = pci_dev->device - 0x1040;
+ }
}
mdev->id.vendor = pci_dev->subsystem_vendor;
diff --git a/include/linux/virtio_pci_modern.h b/include/linux/virtio_pci_modern.h
index c4eeb79b0139..e7b1db1dd0bb 100644
--- a/include/linux/virtio_pci_modern.h
+++ b/include/linux/virtio_pci_modern.h
@@ -38,6 +38,9 @@ struct virtio_pci_modern_device {
int modern_bars;
struct virtio_devi...
2018 Jan 31
0
systemd-udevd not applying ATTR to block device at boot
...ATTRS{status}=="0x00000007"
ATTRS{vendor}=="0x1af4"
looking at parent device '/devices/pci0000:00/0000:00:03.0':
KERNELS=="0000:00:03.0"
SUBSYSTEMS=="pci"
DRIVERS=="virtio-pci"
ATTRS{irq}=="11"
ATTRS{subsystem_vendor}=="0x1af4"
ATTRS{broken_parity_status}=="0"
ATTRS{class}=="0x000000"
ATTRS{driver_override}=="(null)"
ATTRS{consistent_dma_mask_bits}=="64"
ATTRS{dma_mask_bits}=="64"
ATTRS{local_cpus}=="3"
ATTRS{devic...
2023 Mar 22
1
Xen with libvirt and SR-IOV
...1:07.3? 0000:81:08.2? 0000:81:09.1? irq_handler_state? remove_slot
>
> [root at xen1 ~]# cat /sys/bus/pci/devices/0000\:81\:02.6/device
> 0x154c
> [root at xen1 ~]# cat /sys/bus/pci/devices/0000\:81\:02.6/vendor
> 0x8086
> [root at xen1 ~]# cat /sys/bus/pci/devices/0000\:81\:02.6/subsystem_vendor
> 0x8086
>
> [root at xen1 ~]# ls /sys/bus/pci/devices/0000\:81\:02.6/driver/module/drivers/
> pci:pciback? xen-backend:xen-pciback
>
> [root at xen1 ~]# ls /sys/bus/pci/devices/0000\:81\:02.6/driver/0000:81:02.6
> broken_parity_status? consistent_dma_mask_bits? dma_mask_bits...
2008 Feb 01
2
Four UPS's via usb.
> Hello everyone. I try to connect four PowerMust 2000 ups's via usb to one
> computer using megatec_usb driver. But megatec_usb completly ignores port
> directive in ups.conf, I even try port = /dev/null and megatec_usb founds
> ups and it works.
The 'port' is not used for USB connected devices, it's only needed for
compatibility reasons.
> Problem is that
2015 Apr 01
0
[PATCH v3 5/6] virtio_pci: support non-legacy balloon devices
...io/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 2aa38e5..dfea17a 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -577,9 +577,6 @@ int virtio_pci_modern_probe(struct virtio_pci_device *vp_dev)
}
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
- if (virtio_device_is_legacy_only(vp_dev->vdev.id))
- return -ENODEV;
-
/* check for a common config: if not, use legacy mode (bar 0). */
common = virtio_pci_find_capability(pci_dev, VIRTIO_PCI_CAP_COMMON_CFG,
IORESOURCE_IO | IORESOURCE_MEM);
--
MST
2015 Apr 01
0
[PATCH v3 5/6] virtio_pci: support non-legacy balloon devices
...io/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 2aa38e5..dfea17a 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -577,9 +577,6 @@ int virtio_pci_modern_probe(struct virtio_pci_device *vp_dev)
}
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
- if (virtio_device_is_legacy_only(vp_dev->vdev.id))
- return -ENODEV;
-
/* check for a common config: if not, use legacy mode (bar 0). */
common = virtio_pci_find_capability(pci_dev, VIRTIO_PCI_CAP_COMMON_CFG,
IORESOURCE_IO | IORESOURCE_MEM);
--
MST
2014 Dec 08
0
[PATCH v2 05/10] virtio_pci: delete vqs indirectly
...spin_lock_irqsave(&vp_dev->lock, flags);
+ list_del(&info->node);
+ spin_unlock_irqrestore(&vp_dev->lock, flags);
+
+ vp_dev->del_vq(info);
kfree(info);
}
@@ -737,6 +748,8 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->del_vq = del_vq;
+
/* finally register the virtio device */
err = register_virtio_device(&vp_dev->vdev);
if (err)
--
MST
2014 Dec 08
0
[PATCH v2 07/10] virtio_pci: setup config vector indirectly
...Verify we had enough resources to assign the vector */
- v = ioread16(vp_dev->ioaddr + VIRTIO_MSI_CONFIG_VECTOR);
if (v == VIRTIO_MSI_NO_VECTOR) {
err = -EBUSY;
goto error;
@@ -770,6 +776,7 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->config_vector = vp_config_vector;
vp_dev->setup_vq = setup_vq;
vp_dev->del_vq = del_vq;
--
MST
2015 Mar 31
0
[PATCH v2 5/6] virtio_pci: support non-legacy balloon devices
...io/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 2aa38e5..dfea17a 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -577,9 +577,6 @@ int virtio_pci_modern_probe(struct virtio_pci_device *vp_dev)
}
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
- if (virtio_device_is_legacy_only(vp_dev->vdev.id))
- return -ENODEV;
-
/* check for a common config: if not, use legacy mode (bar 0). */
common = virtio_pci_find_capability(pci_dev, VIRTIO_PCI_CAP_COMMON_CFG,
IORESOURCE_IO | IORESOURCE_MEM);
--
MST
2014 Dec 08
0
[PATCH v2 05/10] virtio_pci: delete vqs indirectly
...spin_lock_irqsave(&vp_dev->lock, flags);
+ list_del(&info->node);
+ spin_unlock_irqrestore(&vp_dev->lock, flags);
+
+ vp_dev->del_vq(info);
kfree(info);
}
@@ -737,6 +748,8 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->del_vq = del_vq;
+
/* finally register the virtio device */
err = register_virtio_device(&vp_dev->vdev);
if (err)
--
MST
2014 Dec 08
0
[PATCH v2 07/10] virtio_pci: setup config vector indirectly
...Verify we had enough resources to assign the vector */
- v = ioread16(vp_dev->ioaddr + VIRTIO_MSI_CONFIG_VECTOR);
if (v == VIRTIO_MSI_NO_VECTOR) {
err = -EBUSY;
goto error;
@@ -770,6 +776,7 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->config_vector = vp_config_vector;
vp_dev->setup_vq = setup_vq;
vp_dev->del_vq = del_vq;
--
MST
2015 Mar 31
0
[PATCH v2 5/6] virtio_pci: support non-legacy balloon devices
...io/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 2aa38e5..dfea17a 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -577,9 +577,6 @@ int virtio_pci_modern_probe(struct virtio_pci_device *vp_dev)
}
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
- if (virtio_device_is_legacy_only(vp_dev->vdev.id))
- return -ENODEV;
-
/* check for a common config: if not, use legacy mode (bar 0). */
common = virtio_pci_find_capability(pci_dev, VIRTIO_PCI_CAP_COMMON_CFG,
IORESOURCE_IO | IORESOURCE_MEM);
--
MST
2013 Nov 19
7
Quadrified GTX 480 VT-d passthrough. CUDA 5.5 in Linux partial success
Hi everyone,
after following in the footsteps of the following discussion
(http://lists.xenproject.org/archives/html/xen-users/2013-09/msg00106.html)
I had been able to turn my GTX 480 into a Quadro 6000. When I VT-d
passthrough it to a Debian jessie VM it shows up fine and CUDA 5.5
seems to function properly up to a point:
lspci -v:
00:04.0 VGA compatible controller: NVIDIA Corporation GF100GL
2008 Sep 01
2
[PATCH 3/4 v2] PCI: support SR-IOV capability
...source[i].flags = res->flags;
+ size = resource_size(res) / dev->iov->total;
+ new->resource[i].start = res->start + size * id;
+ new->resource[i].end = new->resource[i].start + size - 1;
+ rc = request_resource(res, &new->resource[i]);
+ BUG_ON(rc);
+ }
+
+ new->subsystem_vendor = dev->subsystem_vendor;
+ pci_read_config_word(new, PCI_SUBSYSTEM_ID, &new->subsystem_device);
+
+ pci_device_add(new, bus);
+ return pci_bus_add_device(new);
+}
+
+static int enable_virtfn(struct hotplug_slot *slot)
+{
+ int rc;
+ u8 busnr, devfn;
+ struct pci_dev *dev;
+ struct virtfn_...
2008 Sep 01
2
[PATCH 3/4 v2] PCI: support SR-IOV capability
...source[i].flags = res->flags;
+ size = resource_size(res) / dev->iov->total;
+ new->resource[i].start = res->start + size * id;
+ new->resource[i].end = new->resource[i].start + size - 1;
+ rc = request_resource(res, &new->resource[i]);
+ BUG_ON(rc);
+ }
+
+ new->subsystem_vendor = dev->subsystem_vendor;
+ pci_read_config_word(new, PCI_SUBSYSTEM_ID, &new->subsystem_device);
+
+ pci_device_add(new, bus);
+ return pci_bus_add_device(new);
+}
+
+static int enable_virtfn(struct hotplug_slot *slot)
+{
+ int rc;
+ u8 busnr, devfn;
+ struct pci_dev *dev;
+ struct virtfn_...
2008 Sep 01
2
[PATCH 3/4 v2] PCI: support SR-IOV capability
...source[i].flags = res->flags;
+ size = resource_size(res) / dev->iov->total;
+ new->resource[i].start = res->start + size * id;
+ new->resource[i].end = new->resource[i].start + size - 1;
+ rc = request_resource(res, &new->resource[i]);
+ BUG_ON(rc);
+ }
+
+ new->subsystem_vendor = dev->subsystem_vendor;
+ pci_read_config_word(new, PCI_SUBSYSTEM_ID, &new->subsystem_device);
+
+ pci_device_add(new, bus);
+ return pci_bus_add_device(new);
+}
+
+static int enable_virtfn(struct hotplug_slot *slot)
+{
+ int rc;
+ u8 busnr, devfn;
+ struct pci_dev *dev;
+ struct virtfn_...
2023 Mar 23
0
[PATCH v3 virtio 1/8] virtio: allow caller to override device id and DMA mask
...evice;
> + } else {
> + /* Modern devices: simply use PCI device id, but start from 0x1040. */
> + mdev->id.device = pci_dev->device - 0x1040;
> + }
> }
> mdev->id.vendor = pci_dev->subsystem_vendor;
>
> @@ -260,7 +267,12 @@ int vp_modern_probe(struct virtio_pci_modern_device *mdev)
> return -EINVAL;
> }
>
> - err = dma_set_mask_and_coherent(&pci_dev->dev, DMA_BIT_MASK(64));
> + if (mdev->dma_mask_override)
> +...
2012 Nov 13
3
Bug#693154: xen-hypervisor-4.0-amd64: Xen "map irq failed" with Intel igb driver and 82576 quad port nic
...ource2
-rw------- 1 root root 16384 Nov 13 17:37 resource3
-rw------- 1 root root 4194304 Nov 13 17:37 rom
lrwxrwxrwx 1 root root 0 Nov 13 17:37 subsystem -> ../../../../../../bus/pci
-r--r--r-- 1 root root 4096 Oct 16 15:25 subsystem_device
-r--r--r-- 1 root root 4096 Oct 16 15:25 subsystem_vendor
-rw-r--r-- 1 root root 4096 Nov 13 17:37 uevent
-r--r--r-- 1 root root 4096 Oct 16 15:25 vendor
/sys/devices/pci0000:00/0000:00:09.0/0000:04:00.0/0000:05:02.0/0000:06:00.1/:
total 0
-rw-r--r-- 1 root root 4096 Nov 13 17:37 broken_parity_status
-r--r--r-- 1 root root 4096 Oct 16 15:25 c...
2014 Dec 08
0
[PATCH v2 06/10] virtio_pci: setup vqs indirectly
...vdev, i, callbacks[i], names[i], msix_vec);
+ vqs[i] = vp_setup_vq(vdev, i, callbacks[i], names[i], msix_vec);
if (IS_ERR(vqs[i])) {
err = PTR_ERR(vqs[i]);
goto error_find;
@@ -748,6 +770,7 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->setup_vq = setup_vq;
vp_dev->del_vq = del_vq;
/* finally register the virtio device */
--
MST
2014 Dec 08
0
[PATCH v2 06/10] virtio_pci: setup vqs indirectly
...vdev, i, callbacks[i], names[i], msix_vec);
+ vqs[i] = vp_setup_vq(vdev, i, callbacks[i], names[i], msix_vec);
if (IS_ERR(vqs[i])) {
err = PTR_ERR(vqs[i]);
goto error_find;
@@ -748,6 +770,7 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
+ vp_dev->setup_vq = setup_vq;
vp_dev->del_vq = del_vq;
/* finally register the virtio device */
--
MST