VirtualBox

Changeset 64908 in vbox


Ignore:
Timestamp:
Dec 16, 2016 1:32:07 PM (8 years ago)
Author:
vboxsync
Message:

DevPciIch9.cpp: play safe with PCI bridge BAR handling

File:
1 edited

Legend:

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

    r64863 r64908  
    19101910 *
    19111911 * @param   pDev                The PCI device to update the mappings for.
    1912  */
    1913 static void devpciR3UpdateMappings(PPDMPCIDEV pPciDev)
     1912 * @param   fP2PBridge          Whether this is a PCI to PCI bridge or not.
     1913 */
     1914static void devpciR3UpdateMappings(PPDMPCIDEV pPciDev, bool fP2PBridge)
    19141915{
    19151916    uint16_t const u16Cmd = ich9pciGetWord(pPciDev, VBOX_PCI_COMMAND);
    19161917    for (unsigned iRegion = 0; iRegion < VBOX_PCI_NUM_REGIONS; iRegion++)
    19171918    {
     1919        /* Skip over BAR2..BAR5 for bridges, as they have a different meaning there. */
     1920        if (fP2PBridge && iRegion >= 2 && iRegion <= 5)
     1921            continue;
    19181922        PCIIORegion   *pRegion  = &pPciDev->Int.s.aIORegions[iRegion];
    19191923        uint64_t const cbRegion = pRegion->size;
     
    22312235             */
    22322236            if (fUpdateMappings)
    2233                 devpciR3UpdateMappings(pPciDev);
     2237                devpciR3UpdateMappings(pPciDev, fP2PBridge);
    22342238        }
    22352239    }
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