Michał Żygowski has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/39699 )
Change subject: drivers/pc80/tpm/tis.c: change the _HID and _CID for TPM2 device ......................................................................
drivers/pc80/tpm/tis.c: change the _HID and _CID for TPM2 device
According TCG PC Client Platform Firmware Profile Specification Revision 1.04 Chapter 8.1 the TPM device object should have the _CID and _HID value set to MSFT0101 for TPM2.
FreeBSD also detects TPM2 device only MSFT0101 _HID and _CID only.
TEST=boot FreeBSD 12.1 on PC Engines apu2 and check in dmesg that TPM2.0 is detected
Signed-off-by: Michał Żygowski michal.zygowski@3mdeb.com Change-Id: I45123f272038e664b834cabd9d8525baca0eb583 --- M src/drivers/pc80/tpm/tis.c 1 file changed, 9 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/99/39699/1
diff --git a/src/drivers/pc80/tpm/tis.c b/src/drivers/pc80/tpm/tis.c index a35ef83..0c8e9c3 100644 --- a/src/drivers/pc80/tpm/tis.c +++ b/src/drivers/pc80/tpm/tis.c @@ -896,11 +896,16 @@ acpigen_write_scope(path); acpigen_write_device(acpi_device_name(dev));
- acpigen_write_name("_HID"); - acpigen_emit_eisaid("PNP0C31"); + if (CONFIG(TPM2)) { + acpigen_write_name_string("_HID", "MSFT0101"); + acpigen_write_name_string("_CID", "MSFT0101"); + } else { + acpigen_write_name("_HID"); + acpigen_emit_eisaid("PNP0C31");
- acpigen_write_name("_CID"); - acpigen_emit_eisaid("PNP0C31"); + acpigen_write_name("_CID"); + acpigen_emit_eisaid("PNP0C31"); + }
acpi_device_write_uid(dev);