VirtualBox

Changeset 109020 in vbox for trunk/include


Ignore:
Timestamp:
Apr 17, 2025 11:37:08 PM (2 weeks ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
168549
Message:

VMM,SUP,VBoxCpuReport: Port of VBoxCpuReport to ARM. jiraref:VBP-1598

Location:
trunk/include/VBox
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/sup.h

    r109014 r109020  
    196196typedef const SUPHWVIRTMSRS *PCSUPHWVIRTMSRS;
    197197
    198 #if defined(RT_ARCH_ARM64) || defined(DOXYGEN_RUNNING)
    199198/**
    200199 * ARM system register value.
     200 *
     201 * @note Used by CPUM on non-ARM hosts.
    201202 */
    202203typedef struct SUPARMSYSREGVAL
    203204{
     205    /** The register value. */
     206    uint64_t            uValue;
     207    /** The register number (ARMV8_AARCH64_SYSREG_ID_CREATE). */
    204208    uint32_t            idReg;
     209    /** Reserved, zero. */
    205210    uint32_t            fFlags;
    206     uint64_t            uValue;
    207211} SUPARMSYSREGVAL;
    208212/** Pointer to an ARM system register value. */
     
    211215typedef SUPARMSYSREGVAL const *PCSUPARMSYSREGVAL;
    212216
     217#if defined(RT_ARCH_ARM64) || defined(DOXYGEN_RUNNING)
    213218/** @name SUP_ARM_SYS_REG_F_XXX - Flags for SUPR3ArmQuerySysRegs.
    214219 *  @{ */
  • trunk/include/VBox/vmm/cpum.h

    r109008 r109020  
    6464    CPUMCPUVENDOR_SHANGHAI,
    6565    CPUMCPUVENDOR_HYGON,
    66     CPUMCPUVENDOR_APPLE,        /**< ARM */
     66
     67    /* ARM: */
     68    CPUMCPUVENDOR_ARM,
     69    CPUMCPUVENDOR_BROADCOM,
     70    CPUMCPUVENDOR_QUALCOMM,
     71    CPUMCPUVENDOR_APPLE,
     72    CPUMCPUVENDOR_AMPERE,
     73
    6774    CPUMCPUVENDOR_UNKNOWN,
    6875    /** 32bit hackishness. */
     
    17411748{
    17421749    /** The common parts. */
    1743     CPUMDBENTRY     Core;
    1744 
    1745     /** The CPU family. */
    1746     uint8_t         uFamily;
    1747     /** The CPU model. */
    1748     uint8_t         uModel;
    1749     /** The CPU stepping. */
    1750     uint8_t         uStepping;
    1751     /** Scalable bus frequency used for reporting other frequencies. */
    1752     uint64_t        uScalableBusFreq;
    1753     /** The maximum physical address with of the CPU.  This should correspond to
    1754      * the value in CPUID leaf 0x80000008 when present. */
    1755     uint8_t         cMaxPhysAddrWidth;
    1756 
    1757     /** @todo lots more to be added here... */
     1750    CPUMDBENTRY         Core;
     1751
     1752    /** The implementer value from MIDR_EL1. */
     1753    uint8_t             bImplementer;
     1754    /** The revision number from MIDR_EL1. */
     1755    uint8_t             bRevision;
     1756    /** The part number value from MIDR_EL1. */
     1757    uint16_t            uPartNum;
     1758
     1759    /** Number of entries in the table paSysRegVals points to. */
     1760    uint32_t            cSysRegVals;
     1761    /** System register values. */
     1762    struct SUPARMSYSREGVAL const *paSysRegVals;
    17581763} CPUMDBENTRYARM;
    17591764/** Pointer to a const ARM CPU database entry. */
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