VirtualBox

Changeset 105042 in vbox for trunk/src/VBox/Devices/EFI


Ignore:
Timestamp:
Jun 27, 2024 8:53:11 AM (10 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
163660
Message:

Devices/EFI/DevEFI: Add info item to convey the start of the PPI MMIO area to the firmware, bugref:10701

Location:
trunk/src/VBox/Devices/EFI
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/DevEFI.cpp

    r104587 r105042  
    191191    /** Length of PCI config space MMIO region */
    192192    uint64_t                cbMcfgLength;
     193    /** Physical address of the TPM PPI area. */
     194    uint64_t                u64TpmPpiBase;
    193195    /** Size of the configured NVRAM device. */
    194196    uint32_t                cbNvram;
     
    321323        case EFI_INFO_INDEX_MCFG_BASE:
    322324        case EFI_INFO_INDEX_MCFG_SIZE:
     325        case EFI_INFO_INDEX_TPM_PPI_BASE:
    323326            return 8;
    324327        case EFI_INFO_INDEX_APIC_MODE:
     
    423426        case EFI_INFO_INDEX_MCFG_SIZE:          return efiInfoNextByteU64(pThisCC, pThisCC->cbMcfgLength);
    424427        case EFI_INFO_INDEX_APIC_MODE:          return efiInfoNextByteU8(pThisCC, pThisCC->u8APIC);
     428        case EFI_INFO_INDEX_TPM_PPI_BASE:       return efiInfoNextByteU64(pThisCC, pThisCC->u64TpmPpiBase);
    425429
    426430        default:
     
    15601564                                  "UgaVerticalResolution|"     // legacy
    15611565                                  "GraphicsResolution|"
    1562                                   "NvramFile", "");
     1566                                  "NvramFile|"
     1567                                  "TpmPpiBase", "");
    15631568
    15641569    /* CPU count (optional). */
     
    17571762        return PDMDEV_SET_ERROR(pDevIns, rc,
    17581763                                N_("Configuration error: Querying \"NvramFile\" as a string failed"));
     1764
     1765    rc = pHlp->pfnCFGMQueryU64Def(pCfg, "TpmPpiBase", &pThisCC->u64TpmPpiBase, 0);
     1766    if (RT_FAILURE(rc))
     1767        return PDMDEV_SET_ERROR(pDevIns, rc,
     1768                                N_("Configuration error: Querying \"TpmPpiBase\" as integer failed"));
    17591769
    17601770    /*
  • trunk/src/VBox/Devices/EFI/DevEFI.h

    r98131 r105042  
    8585    EFI_INFO_INDEX_CPU_COUNT_CURRENT,
    8686    EFI_INFO_INDEX_CPU_COUNT_MAX,
     87    EFI_INFO_INDEX_TPM_PPI_BASE,
    8788    EFI_INFO_INDEX_END
    8889} EfiInfoIndex;
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