VirtualBox

Changeset 20592 in vbox


Ignore:
Timestamp:
Jun 15, 2009 2:32:18 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
48631
Message:

ACPI: cleanup, restored removed AML patching

Location:
trunk/src/VBox/Devices/PC
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/PC/ACPI/VBoxAcpi.cpp

    r20506 r20592  
    2424#endif
    2525
     26#define LOG_GROUP LOG_GROUP_DEV_ACPI
    2627#include <VBox/pdmdev.h>
    2728#include <VBox/pgm.h>
     
    4546                              size_t     *puDsdtLen)
    4647{
    47     //LogRel(("file is %s\n", g_abVboxDslSource));
    48     *ppPtr = NULL;
    49     *puDsdtLen = 0;
    50     return 0;
     48  *ppPtr = NULL;
     49  *puDsdtLen = 0;
     50  return 0;
    5151}
    5252
     
    6868        return rc;
    6969
     70#if 0
     71    /* Can clear CPU objects at all  here, if needed */
     72    bool fShowCpu;
     73    rc = CFGMR3QueryBoolDef(pDevIns->pCfgHandle, "ShowCpu", &fShowCpu, false);
     74    if (RT_FAILURE(rc))
     75      return rc;
     76
     77    if (!fShowCpu)
     78      cNumCpus = 0;
     79#endif
     80
    7081    /**
    7182     * Now search AML for:
     
    7586     * for VCPU not configured
    7687     */
    77     uint16_t cAcpiCpus = 0;
    78     for (uint32_t i = 0; i < uAmlLen - 5; i++)
     88    for (uint32_t i = 0; i < uAmlLen - 7; i++)
    7989    {
    8090        /*
     
    94104                continue;
    95105
    96             /* Maybe use ProcID instead? */
    97             cAcpiCpus++;
    98             if (cAcpiCpus <= cNumCpus)
    99                 continue;
     106            /* Processor ID */
     107            if (pAml[i+7] < cNumCpus)
     108              continue;
    100109
    101110            /* Will fill unwanted CPU block with NOOPs */
     
    133142    return prepareDynamicDsdt(pDevIns, ppPtr, puDsdtLen);
    134143#else
     144    patchAml(pDevIns, AmlCode, sizeof(AmlCode));
    135145    *ppPtr = AmlCode;
    136146    *puDsdtLen = sizeof(AmlCode);
  • trunk/src/VBox/Devices/PC/DevACPI.cpp

    r20400 r20592  
    137137    SYSTEM_INFO_INDEX_FDC_STATUS        = 4,
    138138    SYSTEM_INFO_INDEX_CPU0_STATUS       = 5,
    139     SYSTEM_INFO_INDEX_CPU1_STATUS       = 6,
    140     SYSTEM_INFO_INDEX_CPU2_STATUS       = 7,
    141     SYSTEM_INFO_INDEX_CPU3_STATUS       = 8,
    142     SYSTEM_INFO_INDEX_HIGH_MEMORY_LENGTH= 9,
    143     SYSTEM_INFO_INDEX_RTC_STATUS        = 10,
    144     SYSTEM_INFO_INDEX_END               = 11,
     139    SYSTEM_INFO_INDEX_HIGH_MEMORY_LENGTH= 6,
     140    SYSTEM_INFO_INDEX_RTC_STATUS        = 7,
     141    SYSTEM_INFO_INDEX_END               = 8,
    145142    SYSTEM_INFO_INDEX_INVALID           = 0x80,
    146143    SYSTEM_INFO_INDEX_VALID             = 0x200
     
    13241321
    13251322                case SYSTEM_INFO_INDEX_CPU0_STATUS:
    1326                 case SYSTEM_INFO_INDEX_CPU1_STATUS:
    1327                 case SYSTEM_INFO_INDEX_CPU2_STATUS:
    1328                 case SYSTEM_INFO_INDEX_CPU3_STATUS:
    13291323                    *pu32 = s->fShowCpu
    1330                          && s->uSystemInfoIndex - SYSTEM_INFO_INDEX_CPU0_STATUS < s->cCpus
    1331                           ?   STA_DEVICE_PRESENT_MASK
    1332                             | STA_DEVICE_ENABLED_MASK
    1333                             | STA_DEVICE_SHOW_IN_UI_MASK
    1334                             | STA_DEVICE_FUNCTIONING_PROPERLY_MASK
    1335                           : 0;
     1324                      ?   STA_DEVICE_PRESENT_MASK
     1325                      | STA_DEVICE_ENABLED_MASK
     1326                      | STA_DEVICE_SHOW_IN_UI_MASK
     1327                      | STA_DEVICE_FUNCTIONING_PROPERLY_MASK
     1328                      : 0;
    13361329                    break;
    13371330
  • trunk/src/VBox/Devices/PC/vbox.dsl

    r20493 r20592  
    374374            // @todo: maybe make it bitmask instead?
    375375            UCP0,  32,
    376             UCP1,  32,
    377             UCP2,  32,
    378             UCP3,  32,
    379376            MEMH,  32,
    380377            URTC,  32,
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