VirtualBox

Changeset 102991 in vbox for trunk/src/VBox/Devices/Security


Ignore:
Timestamp:
Jan 22, 2024 5:30:30 PM (16 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
161223
Message:

Devices/Security/DevTpm: Fix device identification, the UEFI update introduced a new sanity check in the TPM driver code making TCG2 fail and reporting to TPM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Security/DevTpm.cpp

    r100892 r102991  
    767767                  | TPM_FIFO_LOCALITY_REG_IF_CAP_INT_LVL_LOW
    768768                  | TPM_FIFO_LOCALITY_REG_IF_CAP_INT_CMD_RDY
    769                   | TPM_FIFO_LOCALITY_REG_IF_CAP_DATA_XFER_SZ_SET(TPM_FIFO_LOCALITY_REG_IF_CAP_DATA_XFER_SZ_64B)
    770                   | TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_SET(TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_IF_1_3); /** @todo Make some of them configurable? */
     769                  | TPM_FIFO_LOCALITY_REG_IF_CAP_DATA_XFER_SZ_SET(TPM_FIFO_LOCALITY_REG_IF_CAP_DATA_XFER_SZ_64B); /** @todo Make some of them configurable? */
     770            if (pThis->enmTpmVers == TPMVERSION_1_2)
     771                u64 |= TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_SET(TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_IF_1_3);
     772            else
     773                u64 |= TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_SET(TPM_FIFO_LOCALITY_REG_IF_CAP_IF_VERSION_IF_1_3_TPM2);
    771774            break;
    772775        case TPM_FIFO_LOCALITY_REG_STS:
     
    800803                  | TPM_FIFO_LOCALITY_REG_INTF_ID_CAP_DATA_XFER_SZ_SET(TPM_FIFO_LOCALITY_REG_INTF_ID_CAP_DATA_XFER_SZ_64B)
    801804                  | TPM_FIFO_LOCALITY_REG_INTF_ID_IF_SEL_GET(TPM_FIFO_LOCALITY_REG_INTF_ID_IF_SEL_FIFO)
    802                   | TPM_FIFO_LOCALITY_REG_INTF_ID_IF_SEL_LOCK;
    803             if (pThis->enmTpmVers == TPMVERSION_1_2)
    804                 u64 |= TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_SET(TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_TIS1_3);
    805             else
    806                 u64 |= TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_SET(TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_FIFO_TPM20);
     805                  | TPM_FIFO_LOCALITY_REG_INTF_ID_IF_SEL_LOCK
     806                  | TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_SET(TPM_FIFO_LOCALITY_REG_INTF_ID_IF_TYPE_TIS1_3);
    807807
    808808            if (pThis->fLocChangeSup) /* Only advertise the locality capability if the driver below supports it. */
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