VirtualBox

Ignore:
Timestamp:
Aug 26, 2021 10:27:04 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
146544
Message:

Devices/ACPI: Preliminary TPM support (disabled), bugref:10075

File:
1 edited

Legend:

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

    r85992 r90908  
    4545# include <vboxssdt_standard.hex>
    4646# include <vboxssdt_cpuhotplug.hex>
     47# ifdef VBOX_WITH_TPM
     48#  include <vboxssdt_tpm.hex>
     49# endif
    4750#endif
    4851
     
    443446}
    444447
     448#ifdef VBOX_WITH_TPM
     449/** No docs, lazy coder. */
     450int acpiPrepareTpmSsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbSsdt)
     451{
     452    uint8_t *pabAmlCodeSsdt = NULL;
     453    size_t   cbAmlCodeSsdt = 0;
     454    int rc = acpiAmlLoadExternal(pDevIns, "SsdtTpmFilePath", "SSDT", &pabAmlCodeSsdt, &cbAmlCodeSsdt);
     455    if (rc == VERR_CFGM_VALUE_NOT_FOUND)
     456    {
     457        rc = VINF_SUCCESS;
     458        cbAmlCodeSsdt  = sizeof(AmlCodeSsdtTpm);
     459        pabAmlCodeSsdt = (uint8_t *)RTMemDup(AmlCodeSsdtTpm, sizeof(AmlCodeSsdtTpm));
     460        if (!pabAmlCodeSsdt)
     461            rc = VERR_NO_MEMORY;
     462    }
     463    else if (RT_FAILURE(rc))
     464        return PDMDEV_SET_ERROR(pDevIns, rc, N_("Configuration error: Failed to read \"SsdtFilePath\""));
     465
     466    if (RT_SUCCESS(rc))
     467    {
     468        *ppvPtr = pabAmlCodeSsdt;
     469        *pcbSsdt = cbAmlCodeSsdt;
     470    }
     471    return rc;
     472}
     473
     474/** No docs, lazy coder. */
     475int acpiCleanupTpmSsdt(PPDMDEVINS pDevIns, void *pvPtr)
     476{
     477    RT_NOREF1(pDevIns);
     478    if (pvPtr)
     479        RTMemFree(pvPtr);
     480    return VINF_SUCCESS;
     481}
     482#endif
     483
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