VirtualBox

Changeset 56411 in vbox


Ignore:
Timestamp:
Jun 14, 2015 3:41:43 AM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
101013
Message:

Move internal/pgm.h bits to VBox/vmm/pgm.h.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pgm.h

    r56384 r56411  
    368368
    369369
    370 
    371370VMMDECL(bool)           PGMIsLockOwner(PVM pVM);
    372371
     
    466465VMM_INT_DECL(bool)     PGMHandlerVirtualIsRegistered(PVM pVM, RTGCPTR GCPtr);
    467466#endif
     467
     468
     469/**
     470 * Page type.
     471 *
     472 * @remarks This enum has to fit in a 3-bit field (see PGMPAGE::u3Type).
     473 * @remarks This is used in the saved state, so changes to it requires bumping
     474 *          the saved state version.
     475 * @todo    So, convert to \#defines!
     476 */
     477typedef enum PGMPAGETYPE
     478{
     479    /** The usual invalid zero entry. */
     480    PGMPAGETYPE_INVALID = 0,
     481    /** RAM page. (RWX) */
     482    PGMPAGETYPE_RAM,
     483    /** MMIO2 page. (RWX) */
     484    PGMPAGETYPE_MMIO2,
     485    /** MMIO2 page aliased over an MMIO page. (RWX)
     486     * See PGMHandlerPhysicalPageAlias(). */
     487    PGMPAGETYPE_MMIO2_ALIAS_MMIO,
     488    /** Special page aliased over an MMIO page. (RWX)
     489     * See PGMHandlerPhysicalPageAliasHC(), but this is generally only used for
     490     * VT-x's APIC access page at the moment.  Treated as MMIO by everyone except
     491     * the shadow paging code. */
     492    PGMPAGETYPE_SPECIAL_ALIAS_MMIO,
     493    /** Shadowed ROM. (RWX) */
     494    PGMPAGETYPE_ROM_SHADOW,
     495    /** ROM page. (R-X) */
     496    PGMPAGETYPE_ROM,
     497    /** MMIO page. (---) */
     498    PGMPAGETYPE_MMIO,
     499    /** End of valid entries. */
     500    PGMPAGETYPE_END
     501} PGMPAGETYPE;
     502AssertCompile(PGMPAGETYPE_END == 8);
     503
     504VMM_INT_DECL(PGMPAGETYPE) PGMPhysGetPageType(PVM pVM, RTGCPHYS GCPhys);
     505
     506VMM_INT_DECL(int)   PGMPhysGCPhys2HCPhys(PVM pVM, RTGCPHYS GCPhys, PRTHCPHYS pHCPhys);
     507VMM_INT_DECL(int)   PGMPhysGCPtr2HCPhys(PVMCPU pVCpu, RTGCPTR GCPtr, PRTHCPHYS pHCPhys);
     508VMM_INT_DECL(int)   PGMPhysGCPhys2CCPtr(PVM pVM, RTGCPHYS GCPhys, void **ppv, PPGMPAGEMAPLOCK pLock);
     509VMM_INT_DECL(int)   PGMPhysGCPhys2CCPtrReadOnly(PVM pVM, RTGCPHYS GCPhys, void const **ppv, PPGMPAGEMAPLOCK pLock);
     510VMM_INT_DECL(int)   PGMPhysGCPtr2CCPtr(PVMCPU pVCpu, RTGCPTR GCPtr, void **ppv, PPGMPAGEMAPLOCK pLock);
     511VMM_INT_DECL(int)   PGMPhysGCPtr2CCPtrReadOnly(PVMCPU pVCpu, RTGCPTR GCPtr, void const **ppv, PPGMPAGEMAPLOCK pLock);
    468512
    469513VMMDECL(bool)       PGMPhysIsA20Enabled(PVMCPU pVCpu);
     
    634678VMMR3DECL(void)     PGMR3ResetCpu(PVM pVM, PVMCPU pVCpu);
    635679VMMR3_INT_DECL(void)    PGMR3Reset(PVM pVM);
     680VMMR3_INT_DECL(void)    PGMR3ResetNoMorePhysWritesFlag(PVM pVM);
    636681VMMR3_INT_DECL(void)    PGMR3MemSetup(PVM pVM, bool fReset);
    637682VMMR3DECL(int)      PGMR3Term(PVM pVM);
  • trunk/src/VBox/VMM/include/internal/pgm.h

    r56287 r56411  
    2121#include <VBox/vmm/pgm.h>
    2222
    23 /** @defgroup grp_pgm_int   Internals
    24  * @ingroup grp_pgm
    25  * @internal
    26  * @{
    27  */
    28 
    29 /**
    30  * Page type.
    31  *
    32  * @remarks This enum has to fit in a 3-bit field (see PGMPAGE::u3Type).
    33  * @remarks This is used in the saved state, so changes to it requires bumping
    34  *          the saved state version.
    35  * @todo    So, convert to \#defines!
    36  */
    37 typedef enum PGMPAGETYPE
    38 {
    39     /** The usual invalid zero entry. */
    40     PGMPAGETYPE_INVALID = 0,
    41     /** RAM page. (RWX) */
    42     PGMPAGETYPE_RAM,
    43     /** MMIO2 page. (RWX) */
    44     PGMPAGETYPE_MMIO2,
    45     /** MMIO2 page aliased over an MMIO page. (RWX)
    46      * See PGMHandlerPhysicalPageAlias(). */
    47     PGMPAGETYPE_MMIO2_ALIAS_MMIO,
    48     /** Special page aliased over an MMIO page. (RWX)
    49      * See PGMHandlerPhysicalPageAliasHC(), but this is generally only used for
    50      * VT-x's APIC access page at the moment.  Treated as MMIO by everyone except
    51      * the shadow paging code. */
    52     PGMPAGETYPE_SPECIAL_ALIAS_MMIO,
    53     /** Shadowed ROM. (RWX) */
    54     PGMPAGETYPE_ROM_SHADOW,
    55     /** ROM page. (R-X) */
    56     PGMPAGETYPE_ROM,
    57     /** MMIO page. (---) */
    58     PGMPAGETYPE_MMIO,
    59     /** End of valid entries. */
    60     PGMPAGETYPE_END
    61 } PGMPAGETYPE;
    62 AssertCompile(PGMPAGETYPE_END == 8);
    63 
    64 VMMDECL(PGMPAGETYPE) PGMPhysGetPageType(PVM pVM, RTGCPHYS GCPhys);
    65 
    66 VMMDECL(int)        PGMPhysGCPhys2HCPhys(PVM pVM, RTGCPHYS GCPhys, PRTHCPHYS pHCPhys);
    67 VMMDECL(int)        PGMPhysGCPtr2HCPhys(PVMCPU pVCpu, RTGCPTR GCPtr, PRTHCPHYS pHCPhys);
    68 VMMDECL(int)        PGMPhysGCPhys2CCPtr(PVM pVM, RTGCPHYS GCPhys, void **ppv, PPGMPAGEMAPLOCK pLock);
    69 VMMDECL(int)        PGMPhysGCPhys2CCPtrReadOnly(PVM pVM, RTGCPHYS GCPhys, void const **ppv, PPGMPAGEMAPLOCK pLock);
    70 VMMDECL(int)        PGMPhysGCPtr2CCPtr(PVMCPU pVCpu, RTGCPTR GCPtr, void **ppv, PPGMPAGEMAPLOCK pLock);
    71 VMMDECL(int)        PGMPhysGCPtr2CCPtrReadOnly(PVMCPU pVCpu, RTGCPTR GCPtr, void const **ppv, PPGMPAGEMAPLOCK pLock);
    72 VMMR3DECL(void)     PGMR3ResetNoMorePhysWritesFlag(PVM pVM);
    73 
    74 /** @} */
    7523#endif
    7624
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