Changeset 61116 in vbox
- Timestamp:
- May 23, 2016 8:56:09 AM (9 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/apic.h
r61072 r61116 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 APICMODE 150 { 151 APICMODE_DISABLED = 0, 152 APICMODE_INVALID, 153 APICMODE_XAPIC, 154 APICMODE_X2APIC 155 } APICMODE; 143 156 144 157 RT_C_DECLS_BEGIN -
trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp
r61100 r61116 72 72 #include <VBox/vmm/pdmapi.h> /* For PDMR3DriverAttach/PDMR3DriverDetach. */ 73 73 #include <VBox/vmm/pdmusb.h> /* For PDMR3UsbCreateEmulatedDevice. */ 74 #include <VBox/vmm/apic.h> /* For APICMODE enum. */ 74 75 #include <VBox/vmm/pdmstorageifs.h> 75 76 #include <VBox/version.h> … … 1033 1034 1034 1035 /* Adjust firmware APIC handling to stay within the VCPU limits. */ 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1036 if (uFwAPIC == 2 && !fEnableX2APIC) 1037 { 1038 if (fEnableAPIC) 1039 uFwAPIC = 1; 1040 else 1041 uFwAPIC = 0; 1042 LogRel(("Limiting the firmware APIC level from x2APIC to %s\n", fEnableAPIC ? "APIC" : "Disabled")); 1043 } 1044 else if (uFwAPIC == 1 && !fEnableAPIC) 1045 { 1046 uFwAPIC = 0; 1047 LogRel(("Limiting the firmware APIC level from APIC to Disabled\n")); 1048 } 1048 1049 1049 1050 /* … … 1602 1603 InsertConfigNode(pInst, "Config", &pCfg); 1603 1604 InsertConfigInteger(pCfg, "IOAPIC", fIOAPIC); 1604 uint32_t uAPICMode = 2;1605 APICMODE enmAPICMode = APICMODE_XAPIC; 1605 1606 if (fEnableX2APIC) 1606 uAPICMode = 3;1607 enmAPICMode = APICMODE_X2APIC; 1607 1608 else if (!fEnableAPIC) 1608 uAPICMode = 0;1609 InsertConfigInteger(pCfg, "Mode", uAPICMode);1609 enmAPICMode = APICMODE_DISABLED; 1610 InsertConfigInteger(pCfg, "Mode", enmAPICMode); 1610 1611 InsertConfigInteger(pCfg, "NumCPUs", cCpus); 1611 1612 -
trunk/src/VBox/VMM/VMMR3/APIC.cpp
r61078 r61116 1460 1460 * Validate APIC settings. 1461 1461 */ 1462 i nt rc = CFGMR3ValidateConfig(pCfg, "/APIC/",1463 "RZEnabled"1464 "|Mode"1465 "|IOAPIC"1466 "|NumCPUs",1467 "" /* pszValidNodes */, "APIC" /* pszWho */, 0 /* uInstance */);1468 if (RT_FAILURE(rc))1469 return rc;1470 1471 rc = CFGMR3QueryBoolDef(pCfg, "RZEnabled", &pApic->fRZEnabled, true);1462 if (!CFGMR3AreValuesValid(pCfg, "RZEnabled\0" 1463 "Mode\0" 1464 "IOAPIC\0" 1465 "NumCPUs\0")) 1466 { 1467 return PDMDEV_SET_ERROR(pDevIns, VERR_PDM_DEVINS_UNKNOWN_CFG_VALUES, 1468 N_("APIC configuration error: unknown option specified")); 1469 } 1470 1471 int rc = CFGMR3QueryBoolDef(pCfg, "RZEnabled", &pApic->fRZEnabled, true); 1472 1472 AssertLogRelRCReturn(rc, rc); 1473 1473 -
trunk/src/VBox/VMM/include/APICInternal.h
r61078 r61116 1121 1121 1122 1122 /** 1123 * APIC operating modes.1124 *1125 * The values match hardware states.1126 * See Intel spec. 10.12.1 "Detecting and Enabling x2APIC Mode".1127 */1128 typedef enum APICMODE1129 {1130 APICMODE_DISABLED = 0,1131 APICMODE_INVALID,1132 APICMODE_XAPIC,1133 APICMODE_X2APIC1134 } APICMODE;1135 1136 /**1137 1123 * APIC Pending-Interrupt Bitmap (PIB). 1138 1124 */
Note:
See TracChangeset
for help on using the changeset viewer.