VirtualBox

Changeset 64700 in vbox for trunk/src/VBox/Devices


Ignore:
Timestamp:
Nov 17, 2016 6:32:18 PM (8 years ago)
Author:
vboxsync
Message:

ich9pciBiosInitBridgeTopology: Missed VBOX_PCI_SUBORDINATE_BUS, now it works.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Bus/DevPciIch9.cpp

    r64699 r64700  
    16901690 * Initializes bridges registers used for routing.
    16911691 *
    1692  * @returns nothing.
     1692 * @returns Max subordinate bus number.
    16931693 * @param   pPciRoot         Global device instance data used to generate unique bus numbers.
    16941694 * @param   pBus             The PCI bus to initialize.
     
    16961696 * @param   uBusSecondary    The secondary bus number, i.e. the bus number behind the bridge.
    16971697 */
    1698 static void ich9pciBiosInitBridgeTopology(PDEVPCIROOT pPciRoot, PDEVPCIBUS pBus, unsigned uBusPrimary, unsigned uBusSecondary)
     1698static uint8_t ich9pciBiosInitBridgeTopology(PDEVPCIROOT pPciRoot, PDEVPCIBUS pBus, unsigned uBusPrimary, unsigned uBusSecondary)
    16991699{
    17001700    PPDMPCIDEV pBridgeDev = &pBus->PciDev;
     
    17071707    }
    17081708
    1709     uint32_t uMaxSubNum = 0;
     1709    uint8_t uMaxSubNum = 0;
    17101710    for (uint32_t iBridge = 0; iBridge < pBus->cBridges; iBridge++)
    17111711    {
     
    17141714                  ("Device is not a PCI bridge but on the list of PCI bridges\n"));
    17151715        PDEVPCIBUS pChildBus = PDMINS_2_DATA(pBridge->Int.s.CTX_SUFF(pDevIns), PDEVPCIBUS);
    1716         ich9pciBiosInitBridgeTopology(pPciRoot, pChildBus, uBusSecondary, pChildBus->iBus);
    1717         uMaxSubNum = RT_MAX(uMaxSubNum, pChildBus->iBus);
     1716        uint8_t uMaxChildSubBus = ich9pciBiosInitBridgeTopology(pPciRoot, pChildBus, uBusSecondary, pChildBus->iBus);
     1717        uMaxSubNum = RT_MAX(uMaxSubNum, RT_MAX(uMaxChildSubBus, pChildBus->iBus));
    17181718    }
    17191719    PCIDevSetByte(pBridgeDev, VBOX_PCI_SUBORDINATE_BUS, uMaxSubNum);
     
    17241724          PDMPciDevGetByte(pBridgeDev, VBOX_PCI_SUBORDINATE_BUS)
    17251725          ));
     1726
     1727    return uMaxSubNum;
    17261728}
    17271729
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