VirtualBox

Changeset 28825 in vbox


Ignore:
Timestamp:
Apr 27, 2010 1:50:46 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
60741
Message:

Make SATA the default harddisk controller for Windows guests (Vista and up) and 2.6 Linux guests

Location:
trunk/src/VBox
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp

    r28805 r28825  
    667667
    668668    /* Create default storage controllers */
    669     QString ctrName = VBoxVMSettingsHD::tr("Storage Controller");
    670     KStorageBus ideBus = KStorageBus_IDE;
    671 
    672     // Add storage controller
    673     m_Machine.AddStorageController(ctrName, ideBus);
    674 
    675     // Set storage controller type
    676     CStorageController ctr = m_Machine.GetStorageControllerByName(ctrName);
    677     KStorageControllerType storageControllerType = type.GetRecommendedStorageController();
    678     ctr.SetControllerType(storageControllerType);
     669    QString ctrDvdName = VBoxVMSettingsHD::tr("Storage Controller");
     670    KStorageBus ctrDvdBus = type.GetRecommendedDvdStorageBus();
     671
     672    // Add IDE storage controller
     673    m_Machine.AddStorageController(ctrDvdName, ctrDvdBus);
     674
     675    // Set DVD storage controller type
     676    CStorageController dvdCtr = m_Machine.GetStorageControllerByName(ctrDvdName);
     677    KStorageControllerType dvdStorageControllerType = type.GetRecommendedDvdStorageController();
     678    dvdCtr.SetControllerType(dvdStorageControllerType);
     679
     680    // Create a storage controller for harddisks if this is not the same as the DVD controller
     681    KStorageBus ctrHdBus = type.GetRecommendedHdStorageBus();
     682    KStorageControllerType hdStorageControllerType = type.GetRecommendedHdStorageController();
     683    CStorageController hdCtr;
     684    QString ctrHdName;
     685
     686    if (   ctrHdBus != ctrDvdBus
     687        && hdStorageControllerType != dvdStorageControllerType)
     688    {
     689        ctrHdName = VBoxVMSettingsHD::tr("Storage Controller 1");
     690        m_Machine.AddStorageController(ctrHdName, ctrHdBus);
     691        hdCtr = m_Machine.GetStorageControllerByName(ctrHdName);
     692        hdCtr.SetControllerType(hdStorageControllerType);
     693
     694        // Disable the I/O cache if this is not a IDE controller.
     695        if (ctrHdBus != KStorageBus_IDE)
     696            hdCtr.SetIoBackend(KIoBackendType_Unbuffered);
     697    }
     698    else
     699    {
     700        // The Hard disk controller is the same
     701        hdCtr = dvdCtr;
     702        ctrHdName = ctrDvdName;
     703    }
    679704
    680705    // Turn on PAE, if recommended
     
    727752            if (!field("hardDiskId").toString().isNull())
    728753            {
    729                 m.AttachDevice(ctrName, 0, 0, KDeviceType_HardDisk, field("hardDiskId").toString());
     754                m.AttachDevice(ctrHdName, 0, 0, KDeviceType_HardDisk, field("hardDiskId").toString());
    730755                if (!m.isOk())
    731756                    vboxProblem().cannotAttachDevice(this, m, VBoxDefs::MediumType_HardDisk,
    732                                                      field("hardDiskLocation").toString(), ideBus, 0, 0);
     757                                                     field("hardDiskLocation").toString(), ctrHdBus, 0, 0);
    733758            }
    734759
    735760            /* Attach empty CD/DVD ROM Device */
    736             m.AttachDevice(ctrName, 1, 0, KDeviceType_DVD, QString(""));
     761            m.AttachDevice(ctrDvdName, 1, 0, KDeviceType_DVD, QString(""));
    737762            if (!m.isOk())
    738                 vboxProblem().cannotAttachDevice(this, m, VBoxDefs::MediumType_DVD, QString(), ideBus, 1, 0);
     763                vboxProblem().cannotAttachDevice(this, m, VBoxDefs::MediumType_DVD, QString(), ctrDvdBus, 1, 0);
    739764
    740765            if (m.isOk())
  • trunk/src/VBox/Main/Global.cpp

    r28800 r28825  
    3434    { "Other",   "Other",             SchemaDefs_OSTypeId_Other,           "Other/Unknown",
    3535      VBOXOSTYPE_Unknown,         VBOXOSHINT_NONE,
    36         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     36        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     37        StorageControllerType_PIIX4, StorageBus_IDE },
    3738    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows31,       "Windows 3.1",
    3839      VBOXOSTYPE_Win31,           VBOXOSHINT_NONE,
    39         32,   4,  1 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     40        32,   4,  1 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     41        StorageControllerType_PIIX4, StorageBus_IDE  },
    4042    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows95,       "Windows 95",
    4143      VBOXOSTYPE_Win95,           VBOXOSHINT_NONE,
    42         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     44        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     45        StorageControllerType_PIIX4, StorageBus_IDE  },
    4346    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows98,       "Windows 98",
    4447      VBOXOSTYPE_Win98,           VBOXOSHINT_NONE,
    45         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     48        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     49        StorageControllerType_PIIX4, StorageBus_IDE  },
    4650    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsMe,       "Windows Me",
    4751      VBOXOSTYPE_WinMe,           VBOXOSHINT_NONE,
    48         64,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     52        64,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     53        StorageControllerType_PIIX4, StorageBus_IDE  },
    4954    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsNT4,      "Windows NT 4",
    5055      VBOXOSTYPE_WinNT4,          VBOXOSHINT_NONE,
    51        128,  16,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     56       128,  16,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     57        StorageControllerType_PIIX4, StorageBus_IDE  },
    5258    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows2000,     "Windows 2000",
    5359      VBOXOSTYPE_Win2k,           VBOXOSHINT_NONE,
    54        168,  16,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     60       168,  16,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     61        StorageControllerType_PIIX4, StorageBus_IDE  },
    5562    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsXP,       "Windows XP",
    5663      VBOXOSTYPE_WinXP,           VBOXOSHINT_NONE,
    57        192,  16, 10 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     64       192,  16, 10 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     65        StorageControllerType_PIIX4, StorageBus_IDE  },
    5866    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsXP_64,    "Windows XP (64 bit)",
    5967      VBOXOSTYPE_WinXP_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    60        192,  16, 10 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     68       192,  16, 10 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     69        StorageControllerType_PIIX4, StorageBus_IDE  },
    6170    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows2003,     "Windows 2003",
    6271      VBOXOSTYPE_Win2k3,          VBOXOSHINT_NONE,
    63        256,  16, 20 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     72       256,  16, 20 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     73        StorageControllerType_PIIX4, StorageBus_IDE  },
    6474    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows2003_64,  "Windows 2003 (64 bit)",
    6575      VBOXOSTYPE_Win2k3_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    66        256,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     76       256,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     77        StorageControllerType_PIIX4, StorageBus_IDE  },
    6778    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsVista,    "Windows Vista",
    6879      VBOXOSTYPE_WinVista,        VBOXOSHINT_NONE,
    69        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     80       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     81        StorageControllerType_IntelAhci, StorageBus_SATA  },
    7082    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsVista_64, "Windows Vista (64 bit)",
    7183      VBOXOSTYPE_WinVista_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    72        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     84       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     85        StorageControllerType_IntelAhci, StorageBus_SATA  },
    7386    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows2008,     "Windows 2008",
    7487      VBOXOSTYPE_Win2k8,          VBOXOSHINT_NONE,
    75        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     88       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     89        StorageControllerType_IntelAhci, StorageBus_SATA  },
    7690    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows2008_64,  "Windows 2008 (64 bit)",
    7791      VBOXOSTYPE_Win2k8_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    78        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     92       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     93        StorageControllerType_IntelAhci, StorageBus_SATA  },
    7994    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows7,        "Windows 7",
    8095      VBOXOSTYPE_Win7,            VBOXOSHINT_NONE,
    81        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     96       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     97        StorageControllerType_IntelAhci, StorageBus_SATA  },
    8298    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_Windows7_64,  "Windows 7 (64 bit)",
    8399      VBOXOSTYPE_Win7_x64,        VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    84        512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     100       512,  16, 20 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     101        StorageControllerType_IntelAhci, StorageBus_SATA  },
    85102    { "Windows", "Microsoft Windows", SchemaDefs_OSTypeId_WindowsNT,       "Other Windows",
    86103      VBOXOSTYPE_WinNT,           VBOXOSHINT_NONE,
    87        512,  16, 20 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     104       512,  16, 20 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     105        StorageControllerType_PIIX4, StorageBus_IDE  },
    88106    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux22,         "Linux 2.2",
    89107      VBOXOSTYPE_Linux22,         VBOXOSHINT_RTCUTC,
    90         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     108        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     109        StorageControllerType_PIIX4, StorageBus_IDE  },
    91110    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux24,         "Linux 2.4",
    92111      VBOXOSTYPE_Linux24,         VBOXOSHINT_RTCUTC,
    93        128,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     112       128,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     113        StorageControllerType_PIIX4, StorageBus_IDE  },
    94114    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux24_64,      "Linux 2.4 (64 bit)",
    95115      VBOXOSTYPE_Linux24_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    96        128,   4,  4 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     116       128,   4,  4 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     117        StorageControllerType_IntelAhci, StorageBus_SATA  },
    97118    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux26,         "Linux 2.6",
    98119      VBOXOSTYPE_Linux26,         VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    99        256,   4,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     120       256,   4,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     121        StorageControllerType_IntelAhci, StorageBus_SATA  },
    100122    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux26_64,      "Linux 2.6 (64 bit)",
    101123      VBOXOSTYPE_Linux26_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    102        256,   4,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     124       256,   4,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     125        StorageControllerType_IntelAhci, StorageBus_SATA  },
    103126    { "Linux",   "Linux",             SchemaDefs_OSTypeId_ArchLinux,       "Arch Linux",
    104127      VBOXOSTYPE_ArchLinux,       VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    105        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     128       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     129        StorageControllerType_IntelAhci, StorageBus_SATA  },
    106130    { "Linux",   "Linux",             SchemaDefs_OSTypeId_ArchLinux_64,    "Arch Linux (64 bit)",
    107131      VBOXOSTYPE_ArchLinux_x64,   VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    108        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     132       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     133        StorageControllerType_IntelAhci, StorageBus_SATA  },
    109134    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Debian,          "Debian",
    110135      VBOXOSTYPE_Debian,          VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    111        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     136       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     137        StorageControllerType_IntelAhci, StorageBus_SATA  },
    112138    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Debian_64,       "Debian (64 bit)",
    113139      VBOXOSTYPE_Debian_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    114        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     140       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     141        StorageControllerType_IntelAhci, StorageBus_SATA  },
    115142    { "Linux",   "Linux",             SchemaDefs_OSTypeId_OpenSUSE,        "openSUSE",
    116143      VBOXOSTYPE_OpenSUSE,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    117        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     144       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     145        StorageControllerType_IntelAhci, StorageBus_SATA  },
    118146    { "Linux",   "Linux",             SchemaDefs_OSTypeId_OpenSUSE_64,     "openSUSE (64 bit)",
    119147      VBOXOSTYPE_OpenSUSE_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    120        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     148       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     149        StorageControllerType_IntelAhci, StorageBus_SATA  },
    121150    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Fedora,          "Fedora",
    122151      VBOXOSTYPE_FedoraCore,      VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    123        384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     152       384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     153        StorageControllerType_IntelAhci, StorageBus_SATA  },
    124154    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Fedora_64,       "Fedora (64 bit)",
    125155      VBOXOSTYPE_FedoraCore_x64,  VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    126        384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     156       384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     157        StorageControllerType_IntelAhci, StorageBus_SATA  },
    127158    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Gentoo,          "Gentoo",
    128159      VBOXOSTYPE_Gentoo,          VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    129        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     160       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     161        StorageControllerType_IntelAhci, StorageBus_SATA  },
    130162    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Gentoo_64,       "Gentoo (64 bit)",
    131163      VBOXOSTYPE_Gentoo_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    132        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     164       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     165        StorageControllerType_IntelAhci, StorageBus_SATA  },
    133166    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Mandriva,        "Mandriva",
    134167      VBOXOSTYPE_Mandriva,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    135        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     168       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     169        StorageControllerType_IntelAhci, StorageBus_SATA  },
    136170    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Mandriva_64,     "Mandriva (64 bit)",
    137171      VBOXOSTYPE_Mandriva_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    138        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     172       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     173        StorageControllerType_IntelAhci, StorageBus_SATA  },
    139174    { "Linux",   "Linux",             SchemaDefs_OSTypeId_RedHat,          "Red Hat",
    140175      VBOXOSTYPE_RedHat,          VBOXOSHINT_RTCUTC,
    141        384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     176       384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     177        StorageControllerType_IntelAhci, StorageBus_SATA  },
    142178    { "Linux",   "Linux",             SchemaDefs_OSTypeId_RedHat_64,       "Red Hat (64 bit)",
    143179      VBOXOSTYPE_RedHat_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    144        384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     180       384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     181        StorageControllerType_IntelAhci, StorageBus_SATA  },
    145182    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Turbolinux,      "Turbolinux",
    146183      VBOXOSTYPE_Turbolinux,      VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    147        384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     184       384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     185        StorageControllerType_IntelAhci, StorageBus_SATA  },
    148186    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Turbolinux,      "Turbolinux",
    149187      VBOXOSTYPE_Turbolinux_x64,  VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    150        384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     188       384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     189        StorageControllerType_IntelAhci, StorageBus_SATA  },
    151190    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Ubuntu,          "Ubuntu",
    152191      VBOXOSTYPE_Ubuntu,          VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    153        384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     192       384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     193        StorageControllerType_IntelAhci, StorageBus_SATA  },
    154194    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Ubuntu_64,       "Ubuntu (64 bit)",
    155195      VBOXOSTYPE_Ubuntu_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    156        384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     196       384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     197        StorageControllerType_IntelAhci, StorageBus_SATA  },
    157198    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Xandros,         "Xandros",
    158199      VBOXOSTYPE_Xandros,         VBOXOSHINT_RTCUTC,
    159        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     200       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     201        StorageControllerType_IntelAhci, StorageBus_SATA  },
    160202    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Xandros_64,      "Xandros (64 bit)",
    161203      VBOXOSTYPE_Xandros_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    162        256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     204       256,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     205        StorageControllerType_IntelAhci, StorageBus_SATA  },
    163206    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Oracle,          "Oracle",
    164207      VBOXOSTYPE_Oracle,          VBOXOSHINT_RTCUTC,
    165        384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     208       384,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     209        StorageControllerType_IntelAhci, StorageBus_SATA  },
    166210    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Oracle_64,       "Oracle (64 bit)",
    167211      VBOXOSTYPE_Oracle_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    168        384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     212       384,  12,  8 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     213        StorageControllerType_IntelAhci, StorageBus_SATA  },
    169214    { "Linux",   "Linux",             SchemaDefs_OSTypeId_Linux,           "Other Linux",
    170215      VBOXOSTYPE_Linux,           VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    171        256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     216       256,  12,  8 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     217        StorageControllerType_PIIX4, StorageBus_IDE  },
    172218    { "Solaris", "Solaris",           SchemaDefs_OSTypeId_Solaris,         "Solaris",
    173219      VBOXOSTYPE_Solaris,         VBOXOSHINT_NONE,
    174        768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     220       768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     221        StorageControllerType_PIIX4, StorageBus_IDE  },
    175222    { "Solaris", "Solaris",           SchemaDefs_OSTypeId_Solaris_64,      "Solaris (64 bit)",
    176223      VBOXOSTYPE_Solaris_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    177        768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     224       768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     225        StorageControllerType_PIIX4, StorageBus_IDE  },
    178226    { "Solaris", "Solaris",           SchemaDefs_OSTypeId_OpenSolaris,     "OpenSolaris",
    179227      VBOXOSTYPE_OpenSolaris,     VBOXOSHINT_NONE,
    180        768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     228       768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     229        StorageControllerType_PIIX4, StorageBus_IDE  },
    181230    { "Solaris", "Solaris",           SchemaDefs_OSTypeId_OpenSolaris_64,  "OpenSolaris (64 bit)",
    182231      VBOXOSTYPE_OpenSolaris_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    183        768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     232       768,  12, 16 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     233        StorageControllerType_PIIX4, StorageBus_IDE  },
    184234    { "BSD",     "BSD",               SchemaDefs_OSTypeId_FreeBSD,         "FreeBSD",
    185235      VBOXOSTYPE_FreeBSD,         VBOXOSHINT_NONE,
    186        128,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     236       128,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     237        StorageControllerType_PIIX4, StorageBus_IDE  },
    187238    { "BSD",     "BSD",               SchemaDefs_OSTypeId_FreeBSD_64,      "FreeBSD (64 bit)",
    188239      VBOXOSTYPE_FreeBSD_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    189        128,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     240       128,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     241        StorageControllerType_PIIX4, StorageBus_IDE  },
    190242    { "BSD",     "BSD",               SchemaDefs_OSTypeId_OpenBSD,         "OpenBSD",
    191243      VBOXOSTYPE_OpenBSD,         VBOXOSHINT_HWVIRTEX,
    192         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     244        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     245        StorageControllerType_PIIX4, StorageBus_IDE  },
    193246    { "BSD",     "BSD",               SchemaDefs_OSTypeId_OpenBSD_64,      "OpenBSD (64 bit)",
    194247      VBOXOSTYPE_OpenBSD_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    195         64,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     248        64,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     249        StorageControllerType_PIIX4, StorageBus_IDE  },
    196250    { "BSD",     "BSD",               SchemaDefs_OSTypeId_NetBSD,          "NetBSD",
    197251      VBOXOSTYPE_NetBSD,          VBOXOSHINT_NONE,
    198         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     252        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     253        StorageControllerType_PIIX4, StorageBus_IDE  },
    199254    { "BSD",     "BSD",               SchemaDefs_OSTypeId_NetBSD_64,       "NetBSD (64 bit)",
    200255      VBOXOSTYPE_NetBSD_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    201         64,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4 },
     256        64,   4,  2 * _1K, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     257        StorageControllerType_PIIX4, StorageBus_IDE  },
    202258    { "OS2",     "IBM OS/2",          SchemaDefs_OSTypeId_OS2Warp3,        "OS/2 Warp 3",
    203259      VBOXOSTYPE_OS2Warp3,        VBOXOSHINT_HWVIRTEX,
    204         48,   4,  1 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4 },
     260        48,   4,  1 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
     261        StorageControllerType_PIIX4, StorageBus_IDE  },
    205262    { "OS2",     "IBM OS/2",          SchemaDefs_OSTypeId_OS2Warp4,        "OS/2 Warp 4",
    206263      VBOXOSTYPE_OS2Warp4,        VBOXOSHINT_HWVIRTEX,
    207         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4 },
     264        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
     265        StorageControllerType_PIIX4, StorageBus_IDE  },
    208266    { "OS2",     "IBM OS/2",          SchemaDefs_OSTypeId_OS2Warp45,       "OS/2 Warp 4.5",
    209267      VBOXOSTYPE_OS2Warp45,       VBOXOSHINT_HWVIRTEX,
    210         96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4 },
     268        96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
     269        StorageControllerType_PIIX4, StorageBus_IDE  },
    211270    { "OS2",     "IBM OS/2",          SchemaDefs_OSTypeId_OS2eCS,          "eComStation",
    212271      VBOXOSTYPE_ECS,             VBOXOSHINT_HWVIRTEX,
    213         96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4 },
     272        96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
     273        StorageControllerType_PIIX4, StorageBus_IDE  },
    214274    { "OS2",     "IBM OS/2",          SchemaDefs_OSTypeId_OS2,             "Other OS/2",
    215275      VBOXOSTYPE_OS2,             VBOXOSHINT_HWVIRTEX,
    216         96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4 },
     276        96,   4,  2 * _1K, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
     277        StorageControllerType_PIIX4, StorageBus_IDE  },
    217278    { "MacOS",   "Mac OS X",          SchemaDefs_OSTypeId_MacOS,           "Mac OS X",
    218279      VBOXOSTYPE_MacOS,           VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE | VBOXOSHINT_USBHID | VBOXOSHINT_HPET | VBOXOSHINT_USBTABLET,
    219       1024,   4,  20 * _1K, NetworkAdapterType_I82543GC, 0, StorageControllerType_ICH6 },
     280      1024,   4,  20 * _1K, NetworkAdapterType_I82543GC, 0, StorageControllerType_ICH6, StorageBus_IDE,
     281        StorageControllerType_ICH6, StorageBus_IDE  },
    220282    { "MacOS",   "Mac OS X",          SchemaDefs_OSTypeId_MacOS_64,        "Mac OS X (64 bit)",
    221283      VBOXOSTYPE_MacOS_x64,       VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT | VBOXOSHINT_USBHID | VBOXOSHINT_HPET | VBOXOSHINT_USBTABLET,
    222       1024,   4,  20 * _1K, NetworkAdapterType_I82543GC, 0, StorageControllerType_ICH6 },
     284      1024,   4,  20 * _1K, NetworkAdapterType_I82543GC, 0, StorageControllerType_ICH6, StorageBus_IDE,
     285        StorageControllerType_ICH6, StorageBus_IDE  },
    223286    { "Other",   "Other",             SchemaDefs_OSTypeId_DOS,             "DOS",
    224287      VBOXOSTYPE_DOS,             VBOXOSHINT_NONE,
    225         32,   4,      512, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     288        32,   4,      512, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     289        StorageControllerType_PIIX4, StorageBus_IDE  },
    226290    { "Other",   "Other",             SchemaDefs_OSTypeId_Netware,         "Netware",
    227291      VBOXOSTYPE_Netware,         VBOXOSHINT_HWVIRTEX,
    228        512,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     292       512,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     293        StorageControllerType_PIIX4, StorageBus_IDE  },
    229294    { "Other",   "Other",             SchemaDefs_OSTypeId_L4,              "L4",
    230295      VBOXOSTYPE_L4,              VBOXOSHINT_NONE,
    231         64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     296        64,   4,  2 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     297        StorageControllerType_PIIX4, StorageBus_IDE  },
    232298    { "Other",   "Other",             SchemaDefs_OSTypeId_QNX,             "QNX",
    233299      VBOXOSTYPE_QNX,             VBOXOSHINT_HWVIRTEX,
    234        512,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4 },
     300       512,   4,  4 * _1K, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
     301        StorageControllerType_PIIX4, StorageBus_IDE  },
    235302};
    236303
  • trunk/src/VBox/Main/GuestOSTypeImpl.cpp

    r28800 r28825  
    3131    , mNetworkAdapterType (NetworkAdapterType_Am79C973)
    3232    , mNumSerialEnabled (0)
    33     , mStorageControllerType(StorageControllerType_PIIX3)
     33    , mDvdStorageControllerType(StorageControllerType_PIIX3)
     34    , mDvdStorageBusType(StorageBus_IDE)
     35    , mHdStorageControllerType(StorageControllerType_PIIX3)
     36    , mHdStorageBusType(StorageBus_IDE)
    3437{
    3538}
     
    7275                           NetworkAdapterType_T aNetworkAdapterType,
    7376                           uint32_t aNumSerialEnabled,
    74                            StorageControllerType_T aStorageControllerType)
     77                           StorageControllerType_T aDvdStorageControllerType,
     78                           StorageBus_T aDvdStorageBusType,
     79                           StorageControllerType_T aHdStorageControllerType,
     80                           StorageBus_T aHdStorageBusType)
    7581{
    7682#if 0
     
    107113    unconst(mNetworkAdapterType) = aNetworkAdapterType;
    108114    unconst(mNumSerialEnabled) = aNumSerialEnabled;
    109     unconst(mStorageControllerType) = aStorageControllerType;
     115    unconst(mDvdStorageControllerType) = aDvdStorageControllerType;
     116    unconst(mDvdStorageBusType)        = aDvdStorageBusType;
     117    unconst(mHdStorageControllerType)  = aHdStorageControllerType;
     118    unconst(mHdStorageBusType)         = aHdStorageBusType;
    110119
    111120    /* Confirm a successful initialization when it's the case */
     
    302311}
    303312
    304 STDMETHODIMP GuestOSType::COMGETTER(RecommendedStorageController) (StorageControllerType_T * aStorageControllerType)
     313STDMETHODIMP GuestOSType::COMGETTER(RecommendedDvdStorageController) (StorageControllerType_T * aStorageControllerType)
    305314{
    306315    CheckComArgOutPointerValid(aStorageControllerType);
     
    310319
    311320    /* storage controller type is constant during life time, no need to lock */
    312     *aStorageControllerType = mStorageControllerType;
     321    *aStorageControllerType = mDvdStorageControllerType;
     322
     323    return S_OK;
     324}
     325
     326STDMETHODIMP GuestOSType::COMGETTER(RecommendedDvdStorageBus) (StorageBus_T * aStorageBusType)
     327{
     328    CheckComArgOutPointerValid(aStorageBusType);
     329
     330    AutoCaller autoCaller(this);
     331    if (FAILED(autoCaller.rc())) return autoCaller.rc();
     332
     333    /* storage controller type is constant during life time, no need to lock */
     334    *aStorageBusType = mDvdStorageBusType;
     335
     336    return S_OK;
     337}
     338
     339STDMETHODIMP GuestOSType::COMGETTER(RecommendedHdStorageController) (StorageControllerType_T * aStorageControllerType)
     340{
     341    CheckComArgOutPointerValid(aStorageControllerType);
     342
     343    AutoCaller autoCaller(this);
     344    if (FAILED(autoCaller.rc())) return autoCaller.rc();
     345
     346    /* storage controller type is constant during life time, no need to lock */
     347    *aStorageControllerType = mHdStorageControllerType;
     348
     349    return S_OK;
     350}
     351
     352STDMETHODIMP GuestOSType::COMGETTER(RecommendedHdStorageBus) (StorageBus_T * aStorageBusType)
     353{
     354    CheckComArgOutPointerValid(aStorageBusType);
     355
     356    AutoCaller autoCaller(this);
     357    if (FAILED(autoCaller.rc())) return autoCaller.rc();
     358
     359    /* storage controller type is constant during life time, no need to lock */
     360    *aStorageBusType = mHdStorageBusType;
    313361
    314362    return S_OK;
  • trunk/src/VBox/Main/VirtualBoxImpl.cpp

    r28800 r28825  
    404404                                          Global::sOSTypes[i].networkAdapterType,
    405405                                          Global::sOSTypes[i].numSerialEnabled,
    406                                           Global::sOSTypes[i].storageControllerType);
     406                                          Global::sOSTypes[i].dvdStorageControllerType,
     407                                          Global::sOSTypes[i].dvdStorageBusType,
     408                                          Global::sOSTypes[i].hdStorageControllerType,
     409                                          Global::sOSTypes[i].hdStorageBusType);
    407410                if (SUCCEEDED(rc))
    408411                    m->ollGuestOSTypes.addChild(guestOSTypeObj);
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r28813 r28825  
    82938293  <interface
    82948294    name="IGuestOSType" extends="$unknown"
    8295     uuid="3fcf2078-3c69-45ca-bd5c-79c3e3c15362"
     8295    uuid="8aa950f6-668c-4388-b251-3809b404e862"
    82968296    wsmap="struct"
    82978297  >
     
    83478347    </attribute>
    83488348
    8349     <attribute name="recommendedStorageController" type="StorageControllerType" readonly="yes">
    8350       <desc>Recommended storage controller type.</desc>
     8349    <attribute name="recommendedDvdStorageController" type="StorageControllerType" readonly="yes">
     8350      <desc>Recommended storage controller type for DVD/CD drives.</desc>
     8351    </attribute>
     8352
     8353    <attribute name="recommendedDvdStorageBus" type="StorageBus" readonly="yes">
     8354      <desc>Recommended storage bus type for DVD/CD drives.</desc>
     8355    </attribute>
     8356
     8357    <attribute name="recommendedHdStorageController" type="StorageControllerType" readonly="yes">
     8358      <desc>Recommended storage controller type for HD drives.</desc>
     8359    </attribute>
     8360
     8361    <attribute name="recommendedHdStorageBus" type="StorageBus" readonly="yes">
     8362      <desc>Recommended storage bus type for HD drives.</desc>
    83518363    </attribute>
    83528364
  • trunk/src/VBox/Main/include/Global.h

    r28800 r28825  
    6464        const NetworkAdapterType_T     networkAdapterType;
    6565        const uint32_t                 numSerialEnabled;
    66         const StorageControllerType_T  storageControllerType;
     66        const StorageControllerType_T  dvdStorageControllerType;
     67        const StorageBus_T             dvdStorageBusType;
     68        const StorageControllerType_T  hdStorageControllerType;
     69        const StorageBus_T             hdStorageBusType;
    6770    };
    6871
  • trunk/src/VBox/Main/include/GuestOSTypeImpl.h

    r28800 r28825  
    5555                  uint32_t aRAMSize, uint32_t aVRAMSize, uint32_t aHDDSize,
    5656                  NetworkAdapterType_T aNetworkAdapterType, uint32_t numSerialEnabled,
    57                   StorageControllerType_T aStorageControllerType);
     57                  StorageControllerType_T aDvdStorageControllerType,
     58                  StorageBus_T aDvdStorageBusType,
     59                  StorageControllerType_T aHdStorageControllerType,
     60                  StorageBus_T aHdStorageBusType);
    5861    void uninit();
    5962
     
    7174    STDMETHOD(COMGETTER(AdapterType)) (NetworkAdapterType_T *aNetworkAdapterType);
    7275    STDMETHOD(COMGETTER(RecommendedFirmware)) (FirmwareType_T *aFirmwareType);
    73     STDMETHOD(COMGETTER(RecommendedStorageController)) (StorageControllerType_T *aStorageControllerType);
     76    STDMETHOD(COMGETTER(RecommendedDvdStorageBus)) (StorageControllerType_T *aStorageBusType);
     77    STDMETHOD(COMGETTER(RecommendedDvdStorageController)) (StorageControllerType_T *aStorageControllerType);
     78    STDMETHOD(COMGETTER(RecommendedHdStorageBus)) (StorageControllerType_T *aStorageBusType);
     79    STDMETHOD(COMGETTER(RecommendedHdStorageController)) (StorageControllerType_T *aStorageControllerType);
    7480    STDMETHOD(COMGETTER(RecommendedPae)) (BOOL *aRecommendedExtHw);
    7581    STDMETHOD(COMGETTER(RecommendedUsbHid)) (BOOL *aRecommendedUsbHid);
     
    104110    const NetworkAdapterType_T mNetworkAdapterType;
    105111    const uint32_t mNumSerialEnabled;
    106     const StorageControllerType_T mStorageControllerType;
     112    const StorageControllerType_T mDvdStorageControllerType;
     113    const StorageBus_T mDvdStorageBusType;
     114    const StorageControllerType_T mHdStorageControllerType;
     115    const StorageBus_T mHdStorageBusType;
    107116};
    108117
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