VirtualBox

Changeset 61116 in vbox


Ignore:
Timestamp:
May 23, 2016 8:56:09 AM (9 years ago)
Author:
vboxsync
Message:

Main/Console: Use the APICMODE enum, tabs.

Location:
trunk
Files:
4 edited

Legend:

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

    r61072 r61116  
    141141#define XAPIC_OFF_LVT_EXT_END                XAPIC_OFF_LVT_CMCI
    142142
     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 */
     149typedef enum APICMODE
     150{
     151    APICMODE_DISABLED = 0,
     152    APICMODE_INVALID,
     153    APICMODE_XAPIC,
     154    APICMODE_X2APIC
     155} APICMODE;
    143156
    144157RT_C_DECLS_BEGIN
  • trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp

    r61100 r61116  
    7272#include <VBox/vmm/pdmapi.h> /* For PDMR3DriverAttach/PDMR3DriverDetach. */
    7373#include <VBox/vmm/pdmusb.h> /* For PDMR3UsbCreateEmulatedDevice. */
     74#include <VBox/vmm/apic.h>   /* For APICMODE enum. */
    7475#include <VBox/vmm/pdmstorageifs.h>
    7576#include <VBox/version.h>
     
    10331034
    10341035        /* Adjust firmware APIC handling to stay within the VCPU limits. */
    1035         if (uFwAPIC == 2 && !fEnableX2APIC)
    1036         {
    1037             if (fEnableAPIC)
    1038                 uFwAPIC = 1;
    1039             else
    1040                 uFwAPIC = 0;
    1041             LogRel(("Limiting the firmware APIC level from x2APIC to %s\n", fEnableAPIC ? "APIC" : "Disabled"));
    1042         }
    1043         else if (uFwAPIC == 1 && !fEnableAPIC)
    1044         {
    1045             uFwAPIC = 0;
    1046             LogRel(("Limiting the firmware APIC level from APIC to Disabled\n"));
    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        }
    10481049
    10491050        /*
     
    16021603            InsertConfigNode(pInst,    "Config", &pCfg);
    16031604            InsertConfigInteger(pCfg,  "IOAPIC", fIOAPIC);
    1604             uint32_t uAPICMode = 2;
     1605            APICMODE enmAPICMode = APICMODE_XAPIC;
    16051606            if (fEnableX2APIC)
    1606                 uAPICMode = 3;
     1607                enmAPICMode = APICMODE_X2APIC;
    16071608            else if (!fEnableAPIC)
    1608                 uAPICMode = 0;
    1609             InsertConfigInteger(pCfg,  "Mode", uAPICMode);
     1609                enmAPICMode = APICMODE_DISABLED;
     1610            InsertConfigInteger(pCfg,  "Mode", enmAPICMode);
    16101611            InsertConfigInteger(pCfg,  "NumCPUs", cCpus);
    16111612
  • trunk/src/VBox/VMM/VMMR3/APIC.cpp

    r61078 r61116  
    14601460     * Validate APIC settings.
    14611461     */
    1462     int 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);
    14721472    AssertLogRelRCReturn(rc, rc);
    14731473
  • trunk/src/VBox/VMM/include/APICInternal.h

    r61078 r61116  
    11211121
    11221122/**
    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 APICMODE
    1129 {
    1130     APICMODE_DISABLED = 0,
    1131     APICMODE_INVALID,
    1132     APICMODE_XAPIC,
    1133     APICMODE_X2APIC
    1134 } APICMODE;
    1135 
    1136 /**
    11371123 * APIC Pending-Interrupt Bitmap (PIB).
    11381124 */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette