Skip to content

Commit 683ea2a

Browse files
author
Requiem
committed
Merge branch 'dev' of https://github.com/NotRequiem/VMAware into dev
2 parents 057ed9d + 0bea762 commit 683ea2a

File tree

1 file changed

+118
-118
lines changed

1 file changed

+118
-118
lines changed

src/vmaware.hpp

Lines changed: 118 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -8980,126 +8980,126 @@ struct VM {
89808980

89818981
switch (id) {
89828982
// Red Hat + Virtio
8983-
case 0x1af41000: // Virtio network device
8984-
case 0x1af41001: // Virtio block device
8985-
case 0x1af41002: // Virtio memory balloon
8986-
case 0x1af41003: // Virtio console
8987-
case 0x1af41004: // Virtio SCSI
8988-
case 0x1af41005: // Virtio RNG
8989-
case 0x1af41009: // Virtio filesystem
8990-
case 0x1af41041: // Virtio network device
8991-
case 0x1af41042: // Virtio block device
8992-
case 0x1af41043: // Virtio console
8993-
case 0x1af41044: // Virtio RNG
8994-
case 0x1af41045: // Virtio memory balloon
8995-
case 0x1af41048: // Virtio SCSI
8996-
case 0x1af41049: // Virtio filesystem
8997-
case 0x1af41050: // Virtio GPU
8998-
case 0x1af41052: // Virtio input
8999-
case 0x1af41053: // Virtio socket
9000-
case 0x1af4105a: // Virtio file system
9001-
case 0x1af41110: // Inter-VM shared memory
9002-
return true;
8983+
case 0x1af41000: // Virtio network device
8984+
case 0x1af41001: // Virtio block device
8985+
case 0x1af41002: // Virtio memory balloon
8986+
case 0x1af41003: // Virtio console
8987+
case 0x1af41004: // Virtio SCSI
8988+
case 0x1af41005: // Virtio RNG
8989+
case 0x1af41009: // Virtio filesystem
8990+
case 0x1af41041: // Virtio network device
8991+
case 0x1af41042: // Virtio block device
8992+
case 0x1af41043: // Virtio console
8993+
case 0x1af41044: // Virtio RNG
8994+
case 0x1af41045: // Virtio memory balloon
8995+
case 0x1af41048: // Virtio SCSI
8996+
case 0x1af41049: // Virtio filesystem
8997+
case 0x1af41050: // Virtio GPU
8998+
case 0x1af41052: // Virtio input
8999+
case 0x1af41053: // Virtio socket
9000+
case 0x1af4105a: // Virtio file system
9001+
case 0x1af41110: // Inter-VM shared memory
9002+
return true;
90039003

9004-
// VMware
9005-
case 0x15ad0405: // SVGA II Adapter
9006-
case 0x15ad0710: // SVGA Adapter
9007-
case 0x15ad0720: // VMXNET Ethernet Controller
9008-
case 0x15ad0740: // Virtual Machine Communication Interface
9009-
case 0x15ad0770: // USB2 EHCI Controller
9010-
case 0x15ad0774: // USB1.1 UHCI Controller
9011-
case 0x15ad0778: // USB3 xHCI 0.96 Controller
9012-
case 0x15ad0779: // USB3 xHCI 1.0 Controller
9013-
case 0x15ad0790: // PCI bridge
9014-
case 0x15ad07a0: // PCI Express Root Port
9015-
case 0x15ad07b0: // VMXNET3 Ethernet Controller
9016-
case 0x15ad07c0: // PVSCSI SCSI Controller
9017-
case 0x15ad07e0: // SATA AHCI controller
9018-
case 0x15ad07f0: // NVMe SSD Controller
9019-
case 0x15ad0801: // Virtual Machine Interface
9020-
case 0x15ad0820: // Paravirtual RDMA controller
9021-
case 0x15ad1977: // HD Audio Controller
9022-
case 0xfffe0710: // Virtual SVGA
9023-
case 0x0e0f0001: // Device
9024-
case 0x0e0f0002: // Virtual USB Hub
9025-
case 0x0e0f0003: // Virtual Mouse
9026-
case 0x0e0f0004: // Virtual CCID
9027-
case 0x0e0f0005: // Virtual Mass Storage
9028-
case 0x0e0f0006: // Virtual Keyboard
9029-
case 0x0e0f000a: // Virtual Sensors
9030-
case 0x0e0f8001: // Root Hub
9031-
case 0x0e0f8002: // Root Hub
9032-
case 0x0e0f8003: // Root Hub
9033-
case 0x0e0ff80a: // Smoker FX2
9034-
return found(brands::VMWARE, dev);
9035-
9036-
// Red Hat + QEMU
9037-
case 0x1b360001: // Red Hat, Inc. QEMU PCI-PCI bridge
9038-
case 0x1b360002: // Red Hat, Inc. QEMU PCI 16550A Adapter
9039-
case 0x1b360003: // Red Hat, Inc. QEMU PCI Dual-port 16550A Adapter
9040-
case 0x1b360004: // Red Hat, Inc. QEMU PCI Quad-port 16550A Adapter
9041-
case 0x1b360005: // Red Hat, Inc. QEMU PCI Test Device
9042-
case 0x1b360008: // Red Hat, Inc. QEMU PCIe Host bridge
9043-
case 0x1b360009: // Red Hat, Inc. QEMU PCI Expander bridge
9044-
case 0x1b36000b: // Red Hat, Inc. QEMU PCIe Expander bridge
9045-
case 0x1b36000c: // Red Hat, Inc. QEMU PCIe Root port
9046-
case 0x1b36000d: // Red Hat, Inc. QEMU XHCI Host Controller
9047-
case 0x1b360010: // Red Hat, Inc. QEMU NVM Express Controller
9048-
case 0x1b360011: // Red Hat, Inc. QEMU PVPanic device
9049-
case 0x1b360013: // Red Hat, Inc. QEMU UFS Host Controller
9050-
case 0x1b360100: // Red Hat, Inc. QXL paravirtual graphic card
9051-
return found(brands::QEMU, dev);
9052-
9053-
// QEMU
9054-
case 0x06270001: // Adomax Technology Co., Ltd QEMU Tablet
9055-
case 0x1d1d1f1f: // CNEX Labs QEMU NVM Express LightNVM Controller
9056-
case 0x80865845: // Intel Corporation QEMU NVM Express Controller
9057-
case 0x1d6b0200: // Linux Foundation Qemu Audio Device
9058-
return found(brands::QEMU, dev);
9059-
9060-
// vGPUs (mostly NVIDIA)
9061-
case 0x10de0fe7: // GK107GL [GRID K100 vGPU]
9062-
case 0x10de0ff7: // GK107GL [GRID K140Q vGPU]
9063-
case 0x10de118d: // GK104GL [GRID K200 vGPU]
9064-
case 0x10de11b0: // GK104GL [GRID K240Q\K260Q vGPU]
9065-
case 0x1ec6020f: // Vastai Technologies SG100 vGPU
9066-
return true;
9004+
// VMware
9005+
case 0x15ad0405: // SVGA II Adapter
9006+
case 0x15ad0710: // SVGA Adapter
9007+
case 0x15ad0720: // VMXNET Ethernet Controller
9008+
case 0x15ad0740: // Virtual Machine Communication Interface
9009+
case 0x15ad0770: // USB2 EHCI Controller
9010+
case 0x15ad0774: // USB1.1 UHCI Controller
9011+
case 0x15ad0778: // USB3 xHCI 0.96 Controller
9012+
case 0x15ad0779: // USB3 xHCI 1.0 Controller
9013+
case 0x15ad0790: // PCI bridge
9014+
case 0x15ad07a0: // PCI Express Root Port
9015+
case 0x15ad07b0: // VMXNET3 Ethernet Controller
9016+
case 0x15ad07c0: // PVSCSI SCSI Controller
9017+
case 0x15ad07e0: // SATA AHCI controller
9018+
case 0x15ad07f0: // NVMe SSD Controller
9019+
case 0x15ad0801: // Virtual Machine Interface
9020+
case 0x15ad0820: // Paravirtual RDMA controller
9021+
case 0x15ad1977: // HD Audio Controller
9022+
case 0xfffe0710: // Virtual SVGA
9023+
case 0x0e0f0001: // Device
9024+
case 0x0e0f0002: // Virtual USB Hub
9025+
case 0x0e0f0003: // Virtual Mouse
9026+
case 0x0e0f0004: // Virtual CCID
9027+
case 0x0e0f0005: // Virtual Mass Storage
9028+
case 0x0e0f0006: // Virtual Keyboard
9029+
case 0x0e0f000a: // Virtual Sensors
9030+
case 0x0e0f8001: // Root Hub
9031+
case 0x0e0f8002: // Root Hub
9032+
case 0x0e0f8003: // Root Hub
9033+
case 0x0e0ff80a: // Smoker FX2
9034+
return found(brands::VMWARE, dev);
9035+
9036+
// Red Hat + QEMU
9037+
case 0x1b360001: // Red Hat, Inc. QEMU PCI-PCI bridge
9038+
case 0x1b360002: // Red Hat, Inc. QEMU PCI 16550A Adapter
9039+
case 0x1b360003: // Red Hat, Inc. QEMU PCI Dual-port 16550A Adapter
9040+
case 0x1b360004: // Red Hat, Inc. QEMU PCI Quad-port 16550A Adapter
9041+
case 0x1b360005: // Red Hat, Inc. QEMU PCI Test Device
9042+
case 0x1b360008: // Red Hat, Inc. QEMU PCIe Host bridge
9043+
case 0x1b360009: // Red Hat, Inc. QEMU PCI Expander bridge
9044+
case 0x1b36000b: // Red Hat, Inc. QEMU PCIe Expander bridge
9045+
case 0x1b36000c: // Red Hat, Inc. QEMU PCIe Root port
9046+
case 0x1b36000d: // Red Hat, Inc. QEMU XHCI Host Controller
9047+
case 0x1b360010: // Red Hat, Inc. QEMU NVM Express Controller
9048+
case 0x1b360011: // Red Hat, Inc. QEMU PVPanic device
9049+
case 0x1b360013: // Red Hat, Inc. QEMU UFS Host Controller
9050+
case 0x1b360100: // Red Hat, Inc. QXL paravirtual graphic card
9051+
return found(brands::QEMU, dev);
9052+
9053+
// QEMU
9054+
case 0x06270001: // Adomax Technology Co., Ltd QEMU Tablet
9055+
case 0x1d1d1f1f: // CNEX Labs QEMU NVM Express LightNVM Controller
9056+
case 0x80865845: // Intel Corporation QEMU NVM Express Controller
9057+
case 0x1d6b0200: // Linux Foundation Qemu Audio Device
9058+
return found(brands::QEMU, dev);
9059+
9060+
// vGPUs (mostly NVIDIA)
9061+
case 0x10de0fe7: // GK107GL [GRID K100 vGPU]
9062+
case 0x10de0ff7: // GK107GL [GRID K140Q vGPU]
9063+
case 0x10de118d: // GK104GL [GRID K200 vGPU]
9064+
case 0x10de11b0: // GK104GL [GRID K240Q\K260Q vGPU]
9065+
case 0x1ec6020f: // Vastai Technologies SG100 vGPU
9066+
return true;
90679067

9068-
// VirtualBox
9069-
case 0x80ee0021: // USB Tablet
9070-
case 0x80ee0022: // multitouch tablet
9071-
case 0x80eebeef: // InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
9072-
case 0x80eecafe: // InnoTek Systemberatung GmbH VirtualBox Guest Service
9073-
return found(brands::VBOX, dev);
9074-
9075-
// Hyper-V
9076-
case 0x1f3f9002: // 3SNIC Ltd SSSNIC Ethernet VF Hyper-V
9077-
case 0x1f3f9004: // 3SNIC Ltd SSSNIC Ethernet SDI VF Hyper-V
9078-
case 0x1f3f9009: // 3SNIC Ltd SSSFC VF Hyper-V
9079-
case 0x808637d9: // Intel Corporation X722 Hyper-V Virtual Function
9080-
case 0x14145353: // Microsoft Corporation Hyper-V virtual VGA
9081-
if (util::hyper_x() == HYPERV_ARTIFACT_VM) {
9082-
continue;
9083-
}
9084-
return found(brands::HYPERV, dev);
9085-
9086-
// Parallels
9087-
case 0x1ab84000: // Virtual Machine Communication Interface
9088-
case 0x1ab84005: // Accelerated Virtual Video Adapter
9089-
case 0x1ab84006: // Memory Ballooning Controller
9090-
return found(brands::PARALLELS, dev);
9091-
9092-
// Xen
9093-
case 0x5853c000: // XenSource, Inc. Citrix XenServer PCI Device for Windows Update
9094-
case 0xfffd0101: // XenSource, Inc. PCI Event Channel Controller
9095-
case 0x5853c147: // XenSource, Inc. Virtualized Graphics Device
9096-
case 0x5853c110: // XenSource, Inc. Virtualized HID
9097-
case 0x5853c200: // XenSource, Inc. XCP-ng Project PCI Device for Windows Update
9098-
case 0x58530001: // XenSource, Inc. Xen Platform Device
9099-
return found(brands::XEN, dev);
9100-
9101-
// Connectix (VirtualPC) OHCI USB 1.1 controller
9102-
case 0x29556e61: return found(brands::VPC, dev);
9068+
// VirtualBox
9069+
case 0x80ee0021: // USB Tablet
9070+
case 0x80ee0022: // multitouch tablet
9071+
case 0x80eebeef: // InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
9072+
case 0x80eecafe: // InnoTek Systemberatung GmbH VirtualBox Guest Service
9073+
return found(brands::VBOX, dev);
9074+
9075+
// Hyper-V
9076+
case 0x1f3f9002: // 3SNIC Ltd SSSNIC Ethernet VF Hyper-V
9077+
case 0x1f3f9004: // 3SNIC Ltd SSSNIC Ethernet SDI VF Hyper-V
9078+
case 0x1f3f9009: // 3SNIC Ltd SSSFC VF Hyper-V
9079+
case 0x808637d9: // Intel Corporation X722 Hyper-V Virtual Function
9080+
case 0x14145353: // Microsoft Corporation Hyper-V virtual VGA
9081+
if (util::hyper_x() == HYPERV_ARTIFACT_VM) {
9082+
continue;
9083+
}
9084+
return found(brands::HYPERV, dev);
9085+
9086+
// Parallels
9087+
case 0x1ab84000: // Virtual Machine Communication Interface
9088+
case 0x1ab84005: // Accelerated Virtual Video Adapter
9089+
case 0x1ab84006: // Memory Ballooning Controller
9090+
return found(brands::PARALLELS, dev);
9091+
9092+
// Xen
9093+
case 0x5853c000: // XenSource, Inc. Citrix XenServer PCI Device for Windows Update
9094+
case 0xfffd0101: // XenSource, Inc. PCI Event Channel Controller
9095+
case 0x5853c147: // XenSource, Inc. Virtualized Graphics Device
9096+
case 0x5853c110: // XenSource, Inc. Virtualized HID
9097+
case 0x5853c200: // XenSource, Inc. XCP-ng Project PCI Device for Windows Update
9098+
case 0x58530001: // XenSource, Inc. Xen Platform Device
9099+
return found(brands::XEN, dev);
9100+
9101+
// Connectix (VirtualPC) OHCI USB 1.1 controller
9102+
case 0x29556e61: return found(brands::VPC, dev);
91039103
}
91049104

91059105
// TODO: EXTRAS TO ADD (64 instead of 32 bits for device_id field)

0 commit comments

Comments
 (0)