VirtualBox

Changeset 27461 in vbox for trunk/src/VBox/Main


Ignore:
Timestamp:
Mar 17, 2010 5:33:19 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
58945
Message:

Store PCI bus/dev/fn of first NIC in CFGM and propagate the data to CMOS.

File:
1 edited

Legend:

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

    r27423 r27461  
    587587    PCFGMNODE pLunL2 = NULL;        /* /Devices/Dev/0/LUN#0/AttachedDriver/Config/ */
    588588    PCFGMNODE pBiosCfg = NULL;      /* /Devices/pcbios/0/Config/ */
     589    PCFGMNODE pNetBootCfg = NULL;   /* /Devices/pcbios/0/Config/NetBoot/ */
    589590
    590591    rc = CFGMR3InsertNode(pRoot, "Devices", &pDevices);                             RC_CHECK();
     
    906907        rc = CFGMR3InsertInteger(pBiosCfg,  "PXEDebug",             fPXEDebug);         RC_CHECK();
    907908        rc = CFGMR3InsertBytes(pBiosCfg,    "UUID", &HardwareUuid,sizeof(HardwareUuid));RC_CHECK();
     909        rc = CFGMR3InsertNode(pBiosCfg,   "NetBoot", &pNetBootCfg);                     RC_CHECK();
    908910
    909911        DeviceType_T bootDevice;
     
    15281530        }
    15291531#endif
     1532        /*
     1533         * Transfer boot device information to the BIOS.
     1534         */
     1535        if (ulInstance == 0)
     1536        {
     1537            unsigned    uBootIdx = 0;
     1538
     1539            if (pNetBootCfg)    /* NetBoot node doesn't exist for EFI! */
     1540            {
     1541                PCFGMNODE   pNetBtDevCfg;
     1542                char        achBootIdx[] = "0";
     1543                uint16_t    u16BusDevFn;
     1544
     1545                achBootIdx[0] = '0' + uBootIdx;     /* Boot device order. */
     1546                rc = CFGMR3InsertNode(pNetBootCfg, achBootIdx, &pNetBtDevCfg);      RC_CHECK();
     1547                rc = CFGMR3InsertInteger(pNetBtDevCfg, "NIC", ulInstance);          RC_CHECK();
     1548                u16BusDevFn = iPciDeviceNo << 3;
     1549                rc = CFGMR3InsertInteger(pNetBtDevCfg, "BusDevFn", u16BusDevFn);    RC_CHECK();
     1550            }
     1551        }
    15301552
    15311553        /*
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