VirtualBox

Changeset 56383 in vbox


Ignore:
Timestamp:
Jun 12, 2015 11:57:25 AM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
100982
Message:

VBoxManage: Do not enable OHCI when xHCI is already there and USB mouse/keboard is configured.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp

    r56118 r56383  
    19351935                if (fEnableUsb)
    19361936                {
    1937                     /* Make sure the OHCI controller is enabled. */
     1937                    /* Make sure either the OHCI or xHCI controller is enabled. */
    19381938                    ULONG cOhciCtrls = 0;
     1939                    ULONG cXhciCtrls = 0;
    19391940                    rc = sessionMachine->GetUSBControllerCountByType(USBControllerType_OHCI, &cOhciCtrls);
    1940                     if (   SUCCEEDED(rc)
    1941                         && !cOhciCtrls)
    1942                     {
    1943                         ComPtr<IUSBController> UsbCtl;
    1944                         CHECK_ERROR(sessionMachine, AddUSBController(Bstr("OHCI").raw(), USBControllerType_OHCI,
    1945                                                               UsbCtl.asOutParam()));
     1941                    if (SUCCEEDED(rc)) {
     1942                        rc = sessionMachine->GetUSBControllerCountByType(USBControllerType_XHCI, &cXhciCtrls);
     1943                        if (   SUCCEEDED(rc)
     1944                            && cOhciCtrls + cXhciCtrls == 0)
     1945                        {
     1946                            /* If there's nothing, enable OHCI (always available). */
     1947                            ComPtr<IUSBController> UsbCtl;
     1948                            CHECK_ERROR(sessionMachine, AddUSBController(Bstr("OHCI").raw(), USBControllerType_OHCI,
     1949                                                                  UsbCtl.asOutParam()));
     1950                        }
    19461951                    }
    19471952                }
     
    19691974                if (fEnableUsb)
    19701975                {
    1971                     /* Make sure the OHCI controller is enabled. */
     1976                    /* Make sure either the OHCI or xHCI controller is enabled. */
    19721977                    ULONG cOhciCtrls = 0;
     1978                    ULONG cXhciCtrls = 0;
    19731979                    rc = sessionMachine->GetUSBControllerCountByType(USBControllerType_OHCI, &cOhciCtrls);
    1974                     if (   SUCCEEDED(rc)
    1975                         && !cOhciCtrls)
    1976                     {
    1977                         ComPtr<IUSBController> UsbCtl;
    1978                         CHECK_ERROR(sessionMachine, AddUSBController(Bstr("OHCI").raw(), USBControllerType_OHCI,
    1979                                                               UsbCtl.asOutParam()));
     1980                    if (SUCCEEDED(rc)) {
     1981                        rc = sessionMachine->GetUSBControllerCountByType(USBControllerType_XHCI, &cXhciCtrls);
     1982                        if (   SUCCEEDED(rc)
     1983                            && cOhciCtrls + cXhciCtrls == 0)
     1984                        {
     1985                            /* If there's nothing, enable OHCI (always available). */
     1986                            ComPtr<IUSBController> UsbCtl;
     1987                            CHECK_ERROR(sessionMachine, AddUSBController(Bstr("OHCI").raw(), USBControllerType_OHCI,
     1988                                                                  UsbCtl.asOutParam()));
     1989                        }
    19801990                    }
    19811991                }
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette