VirtualBox

Changeset 33907 in vbox


Ignore:
Timestamp:
Nov 9, 2010 3:21:14 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
67563
Message:

Main: more PCI assignment rules

Location:
trunk/src/VBox/Main
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/BusAssignmentManager.cpp

    r33722 r33907  
    6969    /* ACPI controller */
    7070    {"acpi",          0,  7,  0, 0},
    71 
    7271
    7372    /* Network controllers */
     
    127126    {"ich9pcibridge", 0, 24, 0,  10},
    128127    {"ich9pcibridge", 0, 25, 0,  10},
    129     {"ich9pcibridge", 1, 24, 0,   5},
    130     {"ich9pcibridge", 1, 25, 0,   5},
     128    {"ich9pcibridge", 1, 24, 0,   9},
     129    {"ich9pcibridge", 1, 25, 0,   9},
     130    {"ich9pcibridge", 2, 24, 0,   8},
     131    {"ich9pcibridge", 2, 25, 0,   8},
     132    {"ich9pcibridge", 3, 24, 0,   7},
     133    {"ich9pcibridge", 3, 25, 0,   7},
     134    {"ich9pcibridge", 4, 24, 0,   6},
     135    {"ich9pcibridge", 4, 25, 0,   6},
     136    {"ich9pcibridge", 5, 24, 0,   5},
     137    {"ich9pcibridge", 5, 25, 0,   5},
     138
     139    /* Storage controllers */
     140    {"ahci",          1,  0, 0,   0},
     141    {"ahci",          1,  1, 0,   0},
     142    {"ahci",          1,  2, 0,   0},
     143    {"ahci",          1,  3, 0,   0},
     144    {"ahci",          1,  4, 0,   0},
     145    {"ahci",          1,  5, 0,   0},
     146    {"ahci",          1,  6, 0,   0},
     147    {"lsilogic",      1,  7, 0,   0},
     148    {"lsilogic",      1,  8, 0,   0},
     149    {"lsilogic",      1,  9, 0,   0},
     150    {"lsilogic",      1, 10, 0,   0},
     151    {"lsilogic",      1, 11, 0,   0},
     152    {"lsilogic",      1, 12, 0,   0},
     153    {"lsilogic",      1, 13, 0,   0},
     154    {"buslogic",      1, 14, 0,   0},
     155    {"buslogic",      1, 15, 0,   0},
     156    {"buslogic",      1, 16, 0,   0},
     157    {"buslogic",      1, 17, 0,   0},
     158    {"buslogic",      1, 18, 0,   0},
     159    {"buslogic",      1, 19, 0,   0},
     160    {"buslogic",      1, 20, 0,   0},
     161    {"lsilogicsas",   1, 21, 0,   0},
     162    {"lsilogicsas",   1, 26, 0,   0},
     163    {"lsilogicsas",   1, 27, 0,   0},
     164    {"lsilogicsas",   1, 28, 0,   0},
     165    {"lsilogicsas",   1, 29, 0,   0},
     166    {"lsilogicsas",   1, 30, 0,   0},
     167    {"lsilogicsas",   1, 31, 0,   0},
     168
     169    /* NICs */
     170    {"nic",           2,  0, 0,   0},
     171    {"nic",           2,  1, 0,   0},
     172    {"nic",           2,  2, 0,   0},
     173    {"nic",           2,  3, 0,   0},
     174    {"nic",           2,  4, 0,   0},
     175    {"nic",           2,  5, 0,   0},
     176    {"nic",           2,  6, 0,   0},
     177    {"nic",           2,  7, 0,   0},
     178    {"nic",           2,  8, 0,   0},
     179    {"nic",           2,  9, 0,   0},
     180    {"nic",           2, 10, 0,   0},
     181    {"nic",           2, 11, 0,   0},
     182    {"nic",           2, 12, 0,   0},
     183    {"nic",           2, 13, 0,   0},
     184    {"nic",           2, 14, 0,   0},
     185    {"nic",           2, 15, 0,   0},
     186    {"nic",           2, 16, 0,   0},
     187    {"nic",           2, 17, 0,   0},
     188    {"nic",           2, 18, 0,   0},
     189    {"nic",           2, 19, 0,   0},
     190    {"nic",           2, 20, 0,   0},
     191    {"nic",           2, 21, 0,   0},
     192    {"nic",           2, 26, 0,   0},
     193    {"nic",           2, 27, 0,   0},
     194    {"nic",           2, 28, 0,   0},
     195    {"nic",           2, 29, 0,   0},
     196    {"nic",           2, 30, 0,   0},
     197    {"nic",           2, 31, 0,   0},
     198
    131199    { NULL,          -1, -1, -1,  0}
    132200};
     
    135203static const DeviceAliasRule aDeviceAliases[] =
    136204{
    137     {"e1000",      "nic"},
    138     {"pcnet",      "nic"},
    139     {"virtio-net", "nic"}
     205    {"e1000",       "nic"},
     206    {"pcnet",       "nic"},
     207    {"virtio-net",  "nic"},
     208    {"ahci",        "storage"},
     209    {"lsilogic",    "storage"},
     210    {"buslogic",    "storage"},
     211    {"lsilogicsas", "storage"}
    140212};
    141213
     
    165237    typedef std::vector<PciBusAddress>                PciAddrList;
    166238    typedef std::vector<const DeviceAssignmentRule*>  PciRulesList;
    167 
    168239    typedef std::map <PciDeviceRecord,PciAddrList >   ReversePciMap;
    169240
  • trunk/src/VBox/Main/ConsoleImpl2.cpp

    r33784 r33907  
    892892        }
    893893
    894 #if 0 /* enable this to test PCI bridging */
    895         InsertConfigNode(pDevices, "pcibridge", &pDev);
    896         InsertConfigNode(pDev,     "0", &pInst);
    897         InsertConfigInteger(pInst, "Trusted",              1); /* boolean */
    898         InsertConfigNode(pInst,    "Config", &pCfg);
    899         InsertConfigInteger(pInst, "PCIDeviceNo",         14);
    900         InsertConfigInteger(pInst, "PCIFunctionNo",        0);
    901         rc = CFGMR3InsertInteger(pInst, "PCIBusNo",             0);/* -> pci[0] */          RC_CHECK();
    902 
    903         InsertConfigNode(pDev,     "1", &pInst);
    904         InsertConfigInteger(pInst, "Trusted",              1); /* boolean */
    905         InsertConfigNode(pInst,    "Config", &pCfg);
    906         InsertConfigInteger(pInst, "PCIDeviceNo",          1);
    907         InsertConfigInteger(pInst, "PCIFunctionNo",        0);
    908         rc = CFGMR3InsertInteger(pInst, "PCIBusNo",             1);/* ->pcibridge[0] */     RC_CHECK();
    909 
    910         InsertConfigNode(pDev,     "2", &pInst);
    911         InsertConfigInteger(pInst, "Trusted",              1); /* boolean */
    912         InsertConfigNode(pInst,    "Config", &pCfg);
    913         InsertConfigInteger(pInst, "PCIDeviceNo",          3);
    914         InsertConfigInteger(pInst, "PCIFunctionNo",        0);
    915         rc = CFGMR3InsertInteger(pInst, "PCIBusNo",             1);/* ->pcibridge[0] */     RC_CHECK();
    916 #endif
    917 
    918894        /*
    919895         * Enable 3 following devices: HPET, SMC, LPC on MacOS X guests
     
    15621538            /* the first network card gets the PCI ID 3, the next 3 gets 8..10,
    15631539             * next 4 get 16..19. */
    1564             unsigned iPciDeviceNo = 3;
    1565             if (ulInstance)
    1566             {
    1567                 if (ulInstance < 4)
     1540            int iPciDeviceNo;
     1541            switch (ulInstance)
     1542            {
     1543                case 0:
     1544                    iPciDeviceNo = 3;
     1545                    break;
     1546                case 1: case 2: case 3:
    15681547                    iPciDeviceNo = ulInstance - 1 + 8;
    1569                 else
     1548                    break;
     1549                case 4: case 5: case 6: case 7:
    15701550                    iPciDeviceNo = ulInstance - 4 + 16;
     1551                    break;
     1552                default:
     1553                    /* auto assignment */
     1554                    iPciDeviceNo = -1;
     1555                    break;
    15711556            }
    15721557#ifdef VMWARE_NET_IN_SLOT_11
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