Commit 9785b432 authored by Gerd Hoffmann's avatar Gerd Hoffmann

drm/virtio: fix busid regression

Created by commit a3257256.
busid changes and userspace is upset.
Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent a6b5fac5
...@@ -71,13 +71,22 @@ int drm_virtio_init(struct drm_driver *driver, struct virtio_device *vdev) ...@@ -71,13 +71,22 @@ int drm_virtio_init(struct drm_driver *driver, struct virtio_device *vdev)
if (strcmp(vdev->dev.parent->bus->name, "pci") == 0) { if (strcmp(vdev->dev.parent->bus->name, "pci") == 0) {
struct pci_dev *pdev = to_pci_dev(vdev->dev.parent); struct pci_dev *pdev = to_pci_dev(vdev->dev.parent);
const char *pname = dev_name(&pdev->dev);
bool vga = (pdev->class >> 8) == PCI_CLASS_DISPLAY_VGA; bool vga = (pdev->class >> 8) == PCI_CLASS_DISPLAY_VGA;
char unique[20];
DRM_INFO("pci: %s detected\n", DRM_INFO("pci: %s detected at %s\n",
vga ? "virtio-vga" : "virtio-gpu-pci"); vga ? "virtio-vga" : "virtio-gpu-pci",
pname);
dev->pdev = pdev; dev->pdev = pdev;
if (vga) if (vga)
virtio_pci_kick_out_firmware_fb(pdev); virtio_pci_kick_out_firmware_fb(pdev);
snprintf(unique, sizeof(unique), "pci:%s", pname);
ret = drm_dev_set_unique(dev, unique);
if (ret)
goto err_free;
} }
ret = drm_dev_register(dev, 0); ret = drm_dev_register(dev, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment