Changeset 61776 in vbox for trunk/include
- Timestamp:
- Jun 20, 2016 11:25:06 PM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 108168
- Location:
- trunk/include
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/apic.h
r61116 r61776 141 141 #define XAPIC_OFF_LVT_EXT_END XAPIC_OFF_LVT_CMCI 142 142 143 /**144 * APIC operating modes.145 *146 * The values match hardware states.147 * See Intel spec. 10.12.1 "Detecting and Enabling x2APIC Mode".148 */149 typedef enum APICMODE150 {151 APICMODE_DISABLED = 0,152 APICMODE_INVALID,153 APICMODE_XAPIC,154 APICMODE_X2APIC155 } APICMODE;156 157 143 RT_C_DECLS_BEGIN 158 144 -
trunk/include/VBox/vmm/cpum.h
r61348 r61776 46 46 { 47 47 CPUMCPUIDFEATURE_INVALID = 0, 48 /** The APIC feature bit. (Std+Ext) */ 48 /** The APIC feature bit. (Std+Ext) 49 * Note! There is a per-cpu flag for masking this CPUID feature bit when the 50 * APICBASE.ENABLED bit is zero. So, this feature is only set/cleared 51 * at VM construction time like all the others. This didn't used to be 52 * that way, this is new with 5.1. */ 49 53 CPUMCPUIDFEATURE_APIC, 50 54 /** The sysenter/sysexit feature bit. (Std) */ … … 70 74 /** The MWait Extensions bits (Std) */ 71 75 CPUMCPUIDFEATURE_MWAIT_EXTS, 72 /** The CR4.OSXSAVE bit CPUID mirroring, only use from CPUMSetGuestCR4. */73 CPUMCPUIDFEATURE_OSXSAVE,74 76 /** 32bit hackishness. */ 75 77 CPUMCPUIDFEATURE_32BIT_HACK = 0x7fffffff … … 327 329 /** The leaf contains an OSXSAVE which needs individual handling on each CPU. */ 328 330 #define CPUMCPUIDLEAF_F_CONTAINS_OSXSAVE RT_BIT_32(2) 331 /** The leaf contains an APIC feature bit which is tied to APICBASE.EN. */ 332 #define CPUMCPUIDLEAF_F_CONTAINS_APIC RT_BIT_32(3) 329 333 /** Mask of the valid flags. */ 330 #define CPUMCPUIDLEAF_F_VALID_MASK UINT32_C(0x 7)334 #define CPUMCPUIDLEAF_F_VALID_MASK UINT32_C(0xf) 331 335 /** @} */ 332 336 … … 1113 1117 VMMDECL(int) CPUMSetGuestSS(PVMCPU pVCpu, uint16_t ss); 1114 1118 VMMDECL(void) CPUMSetGuestEFER(PVMCPU pVCpu, uint64_t val); 1115 VMMDECL(void) CPUMSetGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1116 VMMDECL(void) CPUMClearGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1117 VMMDECL(bool) CPUMGetGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1119 VMMR3_INT_DECL(void) CPUMR3SetGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1120 VMMR3_INT_DECL(void) CPUMR3ClearGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1121 VMMR3_INT_DECL(bool) CPUMR3GetGuestCpuIdFeature(PVM pVM, CPUMCPUIDFEATURE enmFeature); 1122 VMM_INT_DECL(bool) CPUMSetGuestCpuIdPerCpuApicFeature(PVMCPU pVCpu, bool fVisible); 1118 1123 VMMDECL(void) CPUMSetGuestCtx(PVMCPU pVCpu, const PCPUMCTX pCtx); 1119 1124 VMM_INT_DECL(void) CPUMGuestLazyLoadHiddenCsAndSs(PVMCPU pVCpu); -
trunk/include/VBox/vmm/cpum.mac
r60891 r61776 51 51 .fFlags resd 1 52 52 endstruc 53 %define CPUMCPUIDLEAF_F_INTEL_TOPOLOGY_SUBLEAVES RT_BIT_32(0) 53 %define CPUMCPUIDLEAF_F_INTEL_TOPOLOGY_SUBLEAVES RT_BIT_32(0) 54 %define CPUMCPUIDLEAF_F_CONTAINS_APIC_ID RT_BIT_32(1) 55 %define CPUMCPUIDLEAF_F_CONTAINS_OSXSAVE RT_BIT_32(2) 56 %define CPUMCPUIDLEAF_F_CONTAINS_APIC RT_BIT_32(3) 57 54 58 55 59 ;; -
trunk/include/VBox/vmm/pdmdev.h
r61735 r61776 1421 1421 1422 1422 /** 1423 * Modifies APIC-related bits in the CPUID feature mask.1424 *1425 * @param pDevIns Device instance of the APIC.1426 * @param enmMode Supported APIC mode.1427 */1428 DECLRCCALLBACKMEMBER(void, pfnChangeFeature,(PPDMDEVINS pDevIns, PDMAPICMODE enmMode));1429 1430 /**1431 1423 * Acquires the PDM lock. 1432 1424 * … … 1461 1453 1462 1454 /** Current PDMAPICHLPRC version number. */ 1463 #define PDM_APICHLPRC_VERSION PDM_VERSION_MAKE(0xfff5, 4, 0)1455 #define PDM_APICHLPRC_VERSION PDM_VERSION_MAKE(0xfff5, 5, 0) 1464 1456 1465 1457 … … 1507 1499 */ 1508 1500 DECLR0CALLBACKMEMBER(uint32_t, pfnCalcIrqTag,(PPDMDEVINS pDevIns, uint8_t u8Level)); 1509 1510 /**1511 * Modifies APIC-related bits in the CPUID feature mask.1512 *1513 * @param pDevIns Device instance of the APIC.1514 * @param enmMode Supported APIC mode.1515 */1516 DECLR0CALLBACKMEMBER(void, pfnChangeFeature,(PPDMDEVINS pDevIns, PDMAPICMODE enmMode));1517 1501 1518 1502 /** … … 1549 1533 1550 1534 /** Current PDMAPICHLPR0 version number. */ 1551 #define PDM_APICHLPR0_VERSION PDM_VERSION_MAKE(0xfff4, 4, 0)1535 #define PDM_APICHLPR0_VERSION PDM_VERSION_MAKE(0xfff4, 5, 0) 1552 1536 1553 1537 /** … … 1596 1580 1597 1581 /** 1598 * Modifies APIC-related bits in the CPUID feature mask .1582 * Modifies APIC-related bits in the CPUID feature mask and preps MSRs. 1599 1583 * 1600 1584 * @param pDevIns Device instance of the APIC. 1601 * @param enmMode Supported APIC mode.1602 */ 1603 DECLR3CALLBACKMEMBER(void, pfn ChangeFeature,(PPDMDEVINS pDevIns, PDMAPICMODE enmMode));1585 * @param enmMode Max supported APIC mode. 1586 */ 1587 DECLR3CALLBACKMEMBER(void, pfnSetFeatureLevel,(PPDMDEVINS pDevIns, PDMAPICMODE enmMode)); 1604 1588 1605 1589 /** -
trunk/include/iprt/x86.h
r61249 r61776 454 454 /** ECX Bit 26 - XSAVE instruction. */ 455 455 #define X86_CPUID_FEATURE_ECX_XSAVE RT_BIT_32(26) 456 /** ECX Bit 27 - OSXSAVE instruction. */456 /** ECX Bit 27 - Copy of CR4.OSXSAVE. */ 457 457 #define X86_CPUID_FEATURE_ECX_OSXSAVE RT_BIT_32(27) 458 458 /** ECX Bit 28 - AVX. */
Note:
See TracChangeset
for help on using the changeset viewer.