Changeset 80701 in vbox
- Timestamp:
- Sep 10, 2019 2:42:31 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 23 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/pdmdev.h
r80679 r80701 331 331 /** Size of the raw-mode instance data. */ 332 332 uint32_t cbInstanceRC; 333 /** Reserved, must be zero. */334 uint32_t uReserved1;333 /** Max number of PCI devices. */ 334 uint32_t cMaxPciDevices; 335 335 /** The description of the device. The UTF-8 string pointed to shall, like this structure, 336 336 * remain unchanged from registration till VM destruction. */ … … 411 411 typedef PDMDEVREGR3 const *PCPDMDEVREGR3; 412 412 /** Current DEVREGR3 version number. */ 413 #define PDM_DEVREGR3_VERSION PDM_VERSION_MAKE(0xffff, 3, 0)413 #define PDM_DEVREGR3_VERSION PDM_VERSION_MAKE(0xffff, 4, 0) 414 414 415 415 … … 470 470 /** Indicates that the device needs to be notified before the drivers when resetting. */ 471 471 #define PDM_DEVREG_FLAGS_FIRST_RESET_NOTIFICATION UINT32_C(0x00040000) 472 473 /** MSI-X support (affects PCI device allocation size). */ 474 #define PDM_DEVREG_FLAGS_MSI_X UINT32_C(0x00100000) 472 475 473 476 /** This flag is used to indicate that the device has been converted to the … … 552 555 /** Size of the raw-mode instance data. */ 553 556 uint32_t cbInstanceRC; 554 /** Reserved, must be zero. */555 uint32_t uReserved1;557 /** Max number of PCI devices. */ 558 uint32_t cMaxPciDevices; 556 559 /** The description of the device. The UTF-8 string pointed to shall, like this structure, 557 560 * remain unchanged from registration till VM destruction. */ … … 660 663 /** Size of the raw-mode instance data. */ 661 664 uint32_t cbInstanceRC; 662 /** Reserved, must be zero. */663 uint32_t uReserved1;665 /** Max number of PCI devices. */ 666 uint32_t cMaxPciDevices; 664 667 /** The description of the device. The UTF-8 string pointed to shall, like this structure, 665 668 * remain unchanged from registration till VM destruction. */ … … 6216 6219 } 6217 6220 6218 /* 6221 /** 6219 6222 * Registers the device with the default PCI bus. 6220 6223 * -
trunk/src/VBox/Devices/Audio/DevHDA.cpp
r80692 r80701 5325 5325 /* .cbInstanceCC = */ 0, 5326 5326 /* .cbInstanceRC = */ 0, 5327 /* . uReserved1 = */ 0,5327 /* .cMaxPciDevices = */ 1, 5328 5328 /* .pszDescription = */ "Intel HD Audio Controller", 5329 5329 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Audio/DevIchAc97.cpp
r80688 r80701 4555 4555 /* .cbInstanceCC = */ 0, 4556 4556 /* .cbInstanceRC = */ 0, 4557 /* . uReserved1 = */ 0,4557 /* .cMaxPciDevices = */ 1, 4558 4558 /* .pszDescription = */ "ICH AC'97 Audio Controller", 4559 4559 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Bus/DevPCI.cpp
r80531 r80701 1411 1411 /* .cbInstanceCC = */ 0, 1412 1412 /* .cbInstanceRC = */ 0, 1413 /* . uReserved1 = */ 0,1413 /* .cMaxPciDevices = */ 2, 1414 1414 /* .pszDescription = */ "i440FX PCI bridge and PIIX3 ISA bridge.", 1415 1415 #if defined(IN_RING3) … … 1754 1754 /* .cbInstanceCC = */ 0, 1755 1755 /* .cbInstanceRC = */ 0, 1756 /* . uReserved1 = */ 0,1756 /* .cMaxPciDevices = */ 1, 1757 1757 /* .pszDescription = */ "82801 Mobile PCI to PCI bridge", 1758 1758 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Bus/DevPciIch9.cpp
r80531 r80701 3605 3605 /* .cbInstanceCC = */ 0, 3606 3606 /* .cbInstanceRC = */ 0, 3607 /* . uReserved1 = */ 0,3607 /* .cMaxPciDevices = */ 1, 3608 3608 /* .pszDescription = */ "ICH9 PCI bridge", 3609 3609 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Graphics/DevVGA.cpp
r80585 r80701 7280 7280 /* .cbInstanceCC = */ 0, 7281 7281 /* .cbInstanceRC = */ 0, 7282 /* . uReserved1 = */ 0,7282 /* .cMaxPciDevices = */ 1, 7283 7283 /* .pszDescription = */ "VGA Adaptor with VESA extensions.", 7284 7284 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Network/DevE1000.cpp
r80531 r80701 8103 8103 /* .uReserved0 = */ 0, 8104 8104 /* .szName = */ "e1000", 8105 /* .fFlags = */ PDM_DEVREG_FLAGS_DEFAULT_BITS | PDM_DEVREG_FLAGS_RC | PDM_DEVREG_FLAGS_R0 ,8105 /* .fFlags = */ PDM_DEVREG_FLAGS_DEFAULT_BITS | PDM_DEVREG_FLAGS_RC | PDM_DEVREG_FLAGS_R0 | PDM_DEVREG_FLAGS_MSI_X, 8106 8106 /* .fClass = */ PDM_DEVREG_CLASS_NETWORK, 8107 8107 /* .cMaxInstances = */ ~0U, … … 8110 8110 /* .cbInstanceCC = */ 0, 8111 8111 /* .cbInstanceRC = */ 0, 8112 /* . uReserved1 = */ 0,8112 /* .cMaxPciDevices = */ 1, 8113 8113 /* .pszDescription = */ "Intel PRO/1000 MT Desktop Ethernet.", 8114 8114 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Network/DevPCNet.cpp
r80531 r80701 5553 5553 /* .cbInstanceCC = */ 0, 5554 5554 /* .cbInstanceRC = */ 0, 5555 /* . uReserved1 = */ 0,5555 /* .cMaxPciDevices = */ 1, 5556 5556 /* .pszDescription = */ "AMD PCnet Ethernet controller.\n", 5557 5557 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Network/DevVirtioNet.cpp
r80531 r80701 2364 2364 /* .cbInstanceCC = */ 0, 2365 2365 /* .cbInstanceRC = */ 0, 2366 /* . uReserved1 = */ 0,2366 /* .cMaxPciDevices = */ 1, 2367 2367 /* .pszDescription = */ "Virtio Ethernet.\n", 2368 2368 #if defined(IN_RING3) -
trunk/src/VBox/Devices/PC/DevACPI.cpp
r80585 r80701 4195 4195 /* .cbInstanceCC = */ 0, 4196 4196 /* .cbInstanceRC = */ 0, 4197 /* . uReserved1 = */ 0,4197 /* .cMaxPciDevices = */ 1, 4198 4198 /* .pszDescription = */ "Advanced Configuration and Power Interface", 4199 4199 #if defined(IN_RING3) -
trunk/src/VBox/Devices/PC/DevLpc-new.cpp
r80531 r80701 399 399 /* .cbInstanceCC = */ 0, 400 400 /* .cbInstanceRC = */ 0, 401 /* . uReserved1 = */ 0,401 /* .cMaxPciDevices = */ 1, 402 402 /* .pszDescription = */ "Low Pin Count (LPC) Bus", 403 403 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Samples/DevPlayground.cpp
r80531 r80701 351 351 /* .cbInstanceCC = */ 0, 352 352 /* .cbInstanceRC = */ 0, 353 /* . uReserved1 = */ 0,353 /* .cMaxPciDevices = */ 1, 354 354 /* .pszDescription = */ "VBox Playground Device.", 355 355 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Serial/DevOxPcie958.cpp
r80531 r80701 632 632 /* .uReserved0 = */ 0, 633 633 /* .szName = */ "oxpcie958uart", 634 /* .fFlags = */ PDM_DEVREG_FLAGS_DEFAULT_BITS | PDM_DEVREG_FLAGS_RC | PDM_DEVREG_FLAGS_R0 ,634 /* .fFlags = */ PDM_DEVREG_FLAGS_DEFAULT_BITS | PDM_DEVREG_FLAGS_RC | PDM_DEVREG_FLAGS_R0 | PDM_DEVREG_FLAGS_MSI_X, 635 635 /* .fClass = */ PDM_DEVREG_CLASS_SERIAL, 636 636 /* .cMaxInstances = */ ~0U, … … 639 639 /* .cbInstanceCC = */ 0, 640 640 /* .cbInstanceRC = */ 0, 641 /* . uReserved1 = */ 0,641 /* .cMaxPciDevices = */ 1, 642 642 /* .pszDescription = */ "OXPCIe958 based UART controller.\n", 643 643 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Storage/DevAHCI.cpp
r80589 r80701 6243 6243 /* .cbInstanceCC = */ 0, 6244 6244 /* .cbInstanceRC = */ 0, 6245 /* . uReserved1 = */ 0,6245 /* .cMaxPciDevices = */ 1, 6246 6246 /* .pszDescription = */ "Intel AHCI controller.\n", 6247 6247 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Storage/DevATA.cpp
r80531 r80701 8069 8069 /* .cbInstanceCC = */ 0, 8070 8070 /* .cbInstanceRC = */ 0, 8071 /* . uReserved1 = */ 0,8071 /* .cMaxPciDevices = */ 1, 8072 8072 /* .pszDescription = */ "Intel PIIX3 ATA controller.\n" 8073 8073 " LUN #0 is primary master.\n" -
trunk/src/VBox/Devices/Storage/DevBusLogic.cpp
r80589 r80701 4504 4504 /* .cbInstanceCC = */ 0, 4505 4505 /* .cbInstanceRC = */ 0, 4506 /* . uReserved1 = */ 0,4506 /* .cMaxPciDevices = */ 1, 4507 4507 /* .pszDescription = */ "BusLogic BT-958 SCSI host adapter.\n", 4508 4508 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp
r80589 r80701 5751 5751 /* .cbInstanceCC = */ 0, 5752 5752 /* .cbInstanceRC = */ 0, 5753 /* . uReserved1 = */ 0,5753 /* .cMaxPciDevices = */ 1, 5754 5754 /* .pszDescription = */ "LSI Logic 53c1030 SCSI controller.\n", 5755 5755 #if defined(IN_RING3) -
trunk/src/VBox/Devices/Storage/DevVirtioSCSI.cpp
r80683 r80701 2381 2381 /* .cbInstanceCC = */ 0, 2382 2382 /* .cbInstanceRC = */ 0, 2383 /* . uReserved1 = */ 0,2383 /* .cMaxPciDevices = */ 1, 2384 2384 /* .pszDescription = */ "Virtio Host SCSI.\n", 2385 2385 #if defined(IN_RING3) -
trunk/src/VBox/Devices/USB/DevOHCI.cpp
r80531 r80701 6159 6159 /* .cbInstanceCC = */ 0, 6160 6160 /* .cbInstanceRC = */ 0, 6161 /* . uReserved1 = */ 0,6161 /* .cMaxPciDevices = */ 1, 6162 6162 /* .pszDescription = */ "OHCI USB controller.\n", 6163 6163 #if defined(IN_RING3) -
trunk/src/VBox/Devices/VMMDev/VMMDev.cpp
r80531 r80701 4752 4752 /* .cbInstanceCC = */ 0, 4753 4753 /* .cbInstanceRC = */ 0, 4754 /* . uReserved1 = */ 0,4754 /* .cMaxPciDevices = */ 1, 4755 4755 /* .pszDescription = */ "VirtualBox VMM Device\n", 4756 4756 #if defined(IN_RING3) -
trunk/src/VBox/VMM/VMMR0/PDMR0Device.cpp
r80674 r80701 1808 1808 ("pDevReg->u32Version=%#x vs %#x\n", pModReg->u32Version, PDM_DEVREGR0_VERSION), VERR_VERSION_MISMATCH); 1809 1809 AssertLogRelMsgReturn(RT_VALID_PTR(pDevReg->pszDescription), ("[%u]: %p\n", i, pDevReg->pszDescription), VERR_INVALID_POINTER); 1810 AssertLogRelMsgReturn(pDevReg->uReserved0 == 0, ("[%u]: %#x\n", i, pDevReg->uReserved0),VERR_INVALID_PARAMETER);1811 AssertLogRelMsgReturn(pDevReg-> uReserved1 == 0, ("[%u]: %#x\n", i, pDevReg->uReserved1),VERR_INVALID_PARAMETER);1812 AssertLogRelMsgReturn(pDevReg->f Class != 0, ("[%u]: %#x\n", i, pDevReg->fClass),VERR_INVALID_PARAMETER);1813 AssertLogRelMsgReturn(pDevReg-> fFlags != 0, ("[%u]: %#x\n", i, pDevReg->fFlags),VERR_INVALID_PARAMETER);1814 AssertLogRelMsgReturn(pDevReg->cMax Instances > 0, ("[%u]: %#x\n", i, pDevReg->cMaxInstances), VERR_INVALID_PARAMETER);1810 AssertLogRelMsgReturn(pDevReg->uReserved0 == 0, ("[%u]: %#x\n", i, pDevReg->uReserved0), VERR_INVALID_PARAMETER); 1811 AssertLogRelMsgReturn(pDevReg->fClass != 0, ("[%u]: %#x\n", i, pDevReg->fClass), VERR_INVALID_PARAMETER); 1812 AssertLogRelMsgReturn(pDevReg->fFlags != 0, ("[%u]: %#x\n", i, pDevReg->fFlags), VERR_INVALID_PARAMETER); 1813 AssertLogRelMsgReturn(pDevReg->cMaxInstances > 0, ("[%u]: %#x\n", i, pDevReg->cMaxInstances), VERR_INVALID_PARAMETER); 1814 AssertLogRelMsgReturn(pDevReg->cMaxPciDevices <= 8, ("[%u]: %#x\n", i, pDevReg->cMaxPciDevices), VERR_INVALID_PARAMETER); 1815 1815 1816 1816 /* The name must be printable ascii and correctly terminated. */ -
trunk/src/VBox/VMM/VMMR3/PDMDevHlp.cpp
r80679 r80701 1656 1656 * Validate input. 1657 1657 */ 1658 AssertLogRelMsgReturn(pDevIns->pReg->cMaxPciDevices > 0, 1659 ("'%s'/%d: cMaxPciDevices is 0\n", pDevIns->pReg->szName, pDevIns->iInstance), 1660 VERR_WRONG_ORDER); 1658 1661 AssertLogRelMsgReturn(RT_VALID_PTR(pPciDev), 1659 1662 ("'%s'/%d: Invalid pPciDev value: %p\n", pDevIns->pReg->szName, pDevIns->iInstance, pPciDev), … … 1921 1924 LogFlow(("pdmR3DevHlp_PCIRegisterMsi: caller='%s'/%d: pPciDev=%p:{%#x} pMsgReg=%p:{cMsiVectors=%d, cMsixVectors=%d}\n", 1922 1925 pDevIns->pReg->szName, pDevIns->iInstance, pPciDev, pPciDev->uDevFn, pMsiReg, pMsiReg->cMsiVectors, pMsiReg->cMsixVectors)); 1926 1927 AssertLogRelMsgReturn(pDevIns->pReg->cMaxPciDevices > 0, 1928 ("'%s'/%d: cMaxPciDevices is 0\n", pDevIns->pReg->szName, pDevIns->iInstance), 1929 VERR_WRONG_ORDER); 1930 AssertLogRelMsgReturn((pDevIns->pReg->fFlags & PDM_DEVREG_FLAGS_MSI_X) || pMsiReg->cMsixVectors == 0, 1931 ("'%s'/%d: PDM_DEVREG_FLAGS_MSI_X not set and cMsixVectors=%u\n", 1932 pDevIns->pReg->szName, pDevIns->iInstance, pMsiReg->cMsixVectors), 1933 VERR_INVALID_FLAGS); 1923 1934 1924 1935 PPDMPCIBUS pBus = pPciDev->Int.s.pPdmBusR3; Assert(pBus); -
trunk/src/VBox/VMM/VMMR3/PDMDevice.cpp
r80542 r80701 760 760 ("u32VersionEnd=%#x, expected %#x. (szName=%s)\n", 761 761 pReg->u32VersionEnd, PDM_DEVREG_VERSION, pReg->szName)); 762 AssertLogRelMsgReturn(pReg->cMaxPciDevices <= 8, ("%#x (szName=%s)\n", pReg->cMaxPciDevices, pReg->szName), 763 VERR_PDM_INVALID_DEVICE_REGISTRATION); 762 764 763 765 /*
Note:
See TracChangeset
for help on using the changeset viewer.