VirtualBox

Changeset 91930 in vbox for trunk/src/VBox/VMM/VMMR3


Ignore:
Timestamp:
Oct 21, 2021 10:12:30 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
147735
Message:

VMM,Devices: Eliminate direct calls to IOMMmioResetRegion and IOMMmioMapMmio2Page APIs and introduce callbacks in the device helper callback table, bugref:10074

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/PDMDevHlp.cpp

    r91928 r91930  
    351351
    352352    LogFlow(("pdmR3DevHlp_Mmio2ChangeRegionNo: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, rc));
     353    return rc;
     354}
     355
     356
     357/** @interface_method_impl{PDMDEVHLPR3,pfnMmioMapMmio2Page} */
     358static DECLCALLBACK(int) pdmR3DevHlp_MmioMapMmio2Page(PPDMDEVINS pDevIns, IOMMMIOHANDLE hRegion, RTGCPHYS offRegion,
     359                                                      uint64_t hMmio2, RTGCPHYS offMmio2, uint64_t fPageFlags)
     360{
     361    PDMDEV_ASSERT_DEVINS(pDevIns);
     362    LogFlow(("pdmR3DevHlp_MmioMapMmio2Page: caller='%s'/%d: hRegion=%RX64 offRegion=%RGp hMmio2=%RX64 offMmio2=%RGp fPageFlags=%RX64\n",
     363             pDevIns->pReg->szName, pDevIns->iInstance, hRegion, offRegion, hMmio2, offMmio2, fPageFlags));
     364
     365    int rc = IOMMmioMapMmio2Page(pDevIns->Internal.s.pVMR3, pDevIns, hRegion, offRegion, hMmio2, offMmio2, fPageFlags);
     366
     367    Log(("pdmR3DevHlp_MmioMapMmio2Page: caller='%s'/%d: returns %Rrc\n",
     368         pDevIns->pReg->szName, pDevIns->iInstance, rc));
     369    return rc;
     370}
     371
     372
     373/** @interface_method_impl{PDMDEVHLPR3,pfnMmioResetRegion} */
     374static DECLCALLBACK(int) pdmR3DevHlp_MmioResetRegion(PPDMDEVINS pDevIns, IOMMMIOHANDLE hRegion)
     375{
     376    PDMDEV_ASSERT_DEVINS(pDevIns);
     377    LogFlow(("pdmR3DevHlp_MmioResetRegion: caller='%s'/%d: hRegion=%RX64\n",
     378             pDevIns->pReg->szName, pDevIns->iInstance, hRegion));
     379
     380    int rc = IOMMmioResetRegion(pDevIns->Internal.s.pVMR3, pDevIns, hRegion);
     381
     382    Log(("pdmR3DevHlp_MmioResetRegion: caller='%s'/%d: returns %Rrc\n",
     383         pDevIns->pReg->szName, pDevIns->iInstance, rc));
    353384    return rc;
    354385}
     
    45664597    pdmR3DevHlp_Mmio2GetMappingAddress,
    45674598    pdmR3DevHlp_Mmio2ChangeRegionNo,
     4599    pdmR3DevHlp_MmioMapMmio2Page,
     4600    pdmR3DevHlp_MmioResetRegion,
    45684601    pdmR3DevHlp_ROMRegister,
    45694602    pdmR3DevHlp_ROMProtectShadow,
     
    49454978    pdmR3DevHlp_Mmio2GetMappingAddress,
    49464979    pdmR3DevHlp_Mmio2ChangeRegionNo,
     4980    pdmR3DevHlp_MmioMapMmio2Page,
     4981    pdmR3DevHlp_MmioResetRegion,
    49474982    pdmR3DevHlp_ROMRegister,
    49484983    pdmR3DevHlp_ROMProtectShadow,
     
    55955630    pdmR3DevHlp_Mmio2GetMappingAddress,
    55965631    pdmR3DevHlp_Mmio2ChangeRegionNo,
     5632    pdmR3DevHlp_MmioMapMmio2Page,
     5633    pdmR3DevHlp_MmioResetRegion,
    55975634    pdmR3DevHlp_ROMRegister,
    55985635    pdmR3DevHlp_ROMProtectShadow,
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