Advertisement
Guest User

qemu_2.2.50_DEVID.patch

a guest
Feb 16th, 2015
323
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.05 KB | None | 0 0
  1. --- a/hw/vfio/pci.c
  2. +++ b/hw/vfio/pci.c
  3. @@ -218,6 +218,10 @@ typedef struct VFIODevice {
  4.  #define VFIO_FEATURE_ENABLE_VGA_BIT 0
  5.  #define VFIO_FEATURE_ENABLE_VGA (1 << VFIO_FEATURE_ENABLE_VGA_BIT)
  6.      int32_t bootindex;
  7. +    uint16_t virtual_vendor_id;
  8. +    uint16_t virtual_device_id;
  9. +    uint16_t virtual_ss_vendor_id;
  10. +    uint16_t virtual_ss_device_id;
  11.      uint8_t pm_cap;
  12.      bool reset_works;
  13.      bool has_vga;
  14. @@ -4262,6 +4266,23 @@ static int vfio_initfn(PCIDevice *pdev)
  15.      memset(&vdev->pdev.config[PCI_BASE_ADDRESS_0], 0, 24);
  16.      memset(&vdev->pdev.config[PCI_ROM_ADDRESS], 0, 4);
  17.  
  18. +    if (vdev->virtual_vendor_id != 0xFFFF) {
  19. +        vfio_add_emulated_word(vdev, PCI_VENDOR_ID,
  20. +                               cpu_to_le16(vdev->virtual_vendor_id), 0xFFFF);
  21. +    }
  22. +    if (vdev->virtual_device_id != 0xFFFF) {
  23. +        vfio_add_emulated_word(vdev, PCI_DEVICE_ID,
  24. +                               cpu_to_le16(vdev->virtual_device_id), 0xFFFF);
  25. +    }
  26. +    if (vdev->virtual_ss_vendor_id != 0xFFFF) {
  27. +        vfio_add_emulated_word(vdev, PCI_SUBSYSTEM_VENDOR_ID,
  28. +                               cpu_to_le16(vdev->virtual_ss_vendor_id), 0xFFFF);
  29. +    }
  30. +    if (vdev->virtual_ss_device_id != 0xFFFF) {
  31. +        vfio_add_emulated_word(vdev, PCI_SUBSYSTEM_ID,
  32. +                               cpu_to_le16(vdev->virtual_ss_device_id), 0xFFFF);
  33. +    }
  34. +
  35.      vfio_pci_size_rom(vdev);
  36.  
  37.      ret = vfio_early_setup_msix(vdev);
  38. @@ -4381,6 +4402,10 @@ static Property vfio_pci_dev_properties[] = {
  39.                         intx.mmap_timeout, 1100),
  40.      DEFINE_PROP_BIT("x-vga", VFIOPCIDevice, features,
  41.                      VFIO_FEATURE_ENABLE_VGA_BIT, false),
  42. +    DEFINE_PROP_UINT16("x-vid", VFIOPCIDevice, virtual_vendor_id, 0xFFFF),
  43. +    DEFINE_PROP_UINT16("x-did", VFIOPCIDevice, virtual_device_id, 0xFFFF),
  44. +    DEFINE_PROP_UINT16("x-ss-vid", VFIOPCIDevice, virtual_ss_vendor_id, 0xFFFF),
  45. +    DEFINE_PROP_UINT16("x-ss-did", VFIOPCIDevice, virtual_ss_device_id, 0xFFFF),
  46.      DEFINE_PROP_INT32("bootindex", VFIOPCIDevice, bootindex, -1),
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement