Changeset 43814 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Nov 6, 2012 4:59:33 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/PDMUsb.cpp
r42139 r43814 226 226 ("Invalid name '%.s'\n", sizeof(pReg->szName), pReg->szName), 227 227 VERR_PDM_INVALID_USB_REGISTRATION); 228 AssertMsgReturn(pReg->fFlags == 0, ("fFlags=%#x\n", pReg->fFlags), VERR_PDM_INVALID_USB_REGISTRATION); 228 AssertMsgReturn((pReg->fFlags & ~(PDM_USBREG_HIGHSPEED_CAPABLE)) == 0, 229 ("fFlags=%#x\n", pReg->fFlags), VERR_PDM_INVALID_USB_REGISTRATION); 229 230 AssertMsgReturn(pReg->cMaxInstances > 0, 230 231 ("Max instances %u! (USB Device %s)\n", pReg->cMaxInstances, pReg->szName), … … 579 580 //pUsbIns->fTracing = 0; 580 581 pUsbIns->idTracing = ++pVM->pdm.s.idTracingOther; 582 pUsbIns->iUsbHubVersion = iUsbVersion; 581 583 582 584 /* … … 800 802 CFGMR3SetRestrictedRoot(pConfigNode); 801 803 802 /** @todo 803 * Figure out the USB version from the USB device registration and the configuration. 804 /* 805 * Every device must support USB 1.x hubs; optionally, high-speed USB 2.0 hubs 806 * might be also supported. This determines where to attach the device. 804 807 */ 805 808 uint32_t iUsbVersion = VUSB_STDVER_11; 806 809 810 if (paUsbDevs[i].pUsbDev->pReg->fFlags & PDM_USBREG_HIGHSPEED_CAPABLE) 811 iUsbVersion |= VUSB_STDVER_20; 812 807 813 /* 808 814 * Find a suitable hub with free ports. … … 815 821 return rc; 816 822 } 823 824 /* 825 * This is how we inform the device what speed it's communicating at, and hence 826 * which descriptors it should present to the guest. 827 */ 828 iUsbVersion &= pHub->fVersions; 817 829 818 830 /* … … 904 916 905 917 /* 906 * Finally, try create it.918 * Finally, try to create it. 907 919 */ 908 920 rc = pdmR3UsbCreateDevice(pVM, pHub, pUsbDev, -1, pUuid, NULL, &pConfig, iUsbVersion);
Note:
See TracChangeset
for help on using the changeset viewer.