VirtualBox

Changeset 27692 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Mar 25, 2010 10:32:25 AM (15 years ago)
Author:
vboxsync
Message:

Pass boot NIC PCI dev/fn separately to DevPcBios. Easier to understand and modify.

Location:
trunk/src/VBox
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/PC/DevPcBios.cpp

    r27470 r27692  
    10831083    {
    10841084        PCFGMNODE   pCfgNetBootDevice;
     1085        uint8_t     u8PciDev;
     1086        uint8_t     u8PciFn;
    10851087        uint16_t    u16BusDevFn;
    10861088        char        szIndex[] = "?";
     
    10911093            szIndex[0] = '0' + i;
    10921094            pCfgNetBootDevice = CFGMR3GetChild(pCfgNetBoot, szIndex);
    1093             rc = CFGMR3QueryU16(pCfgNetBootDevice, "BusDevFn", &u16BusDevFn);
     1095            rc = CFGMR3QueryU8(pCfgNetBootDevice, "PCIDeviceNo", &u8PciDev);
    10941096            if (rc == VERR_CFGM_VALUE_NOT_FOUND || rc == VERR_CFGM_NO_PARENT)
    10951097            {
     
    11001102            else if (RT_FAILURE(rc))
    11011103                return PDMDEV_SET_ERROR(pDevIns, rc,
    1102                                         N_("Configuration error: Querying \"Netboot/x/BusDevFn\" as integer failed"));
     1104                                        N_("Configuration error: Querying \"Netboot/x/PCIDeviceNo\" as integer failed"));
     1105            rc = CFGMR3QueryU8(pCfgNetBootDevice, "PCIFunctionNo", &u8PciFn);
     1106            if (rc == VERR_CFGM_VALUE_NOT_FOUND || rc == VERR_CFGM_NO_PARENT)
     1107            {
     1108                /* Do nothing and stop iterating. */
     1109                rc = VINF_SUCCESS;
     1110                break;
     1111            }
     1112            else if (RT_FAILURE(rc))
     1113                return PDMDEV_SET_ERROR(pDevIns, rc,
     1114                                        N_("Configuration error: Querying \"Netboot/x/PCIFunctionNo\" as integer failed"));
     1115            u16BusDevFn = ((u8PciDev & 0x1F) << 3) | (u8PciFn & 0x7);
    11031116            pThis->au16NetBootDev[i] = u16BusDevFn;
    11041117        }
  • trunk/src/VBox/Main/ConsoleImpl2.cpp

    r27537 r27692  
    15411541                PCFGMNODE   pNetBtDevCfg;
    15421542                char        achBootIdx[] = "0";
    1543                 uint16_t    u16BusDevFn;
    15441543
    15451544                achBootIdx[0] = '0' + uBootIdx;     /* Boot device order. */
    15461545                rc = CFGMR3InsertNode(pNetBootCfg, achBootIdx, &pNetBtDevCfg);      RC_CHECK();
    15471546                rc = CFGMR3InsertInteger(pNetBtDevCfg, "NIC", ulInstance);          RC_CHECK();
    1548                 u16BusDevFn = iPciDeviceNo << 3;
    1549                 rc = CFGMR3InsertInteger(pNetBtDevCfg, "BusDevFn", u16BusDevFn);    RC_CHECK();
     1547                rc = CFGMR3InsertInteger(pNetBtDevCfg, "PCIDeviceNo", iPciDeviceNo);RC_CHECK();
     1548                rc = CFGMR3InsertInteger(pNetBtDevCfg, "PCIFunctionNo", 0);         RC_CHECK();
    15501549            }
    15511550        }
Note: See TracChangeset for help on using the changeset viewer.

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