Attention is currently required from: Christian Walter, Julius Werner, Krystian Hebel, Sergii Dmytruk.
Michał Żygowski has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/69023 )
Change subject: drivers/pc80/tpm: probe for TPM family of a device ......................................................................
Patch Set 3:
(1 comment)
File src/drivers/pc80/tpm/tis.c:
https://review.coreboot.org/c/coreboot/+/69023/comment/cdf5512b_a4b189ab PS2, Line 435: return TPM_DRIVER_ERR;
It is a big change and I might have got it wrong. Michał wrote in https://ticket.coreboot. […]
Indeed, I said there would be ambiguity with the probe function as it is now in upstream as it merely probes VID/DID and checks with the vendor/device list. E.g. we have Infineon chips with the same IDs in TPM2 and TPM1.2 table, so interface detection was simply done by Kconfig selection (TPM1 or TPM2) which is very wrong. The probe function should probe the interface capability register. Matching VID/DID should be done only for informational purposes to report the TPM vendor and model in human-readable form, and that's it, nothing more, nothing less. As long as a specification-conforming TPM is detected (i.e. TPM returns valid data in interface capability registers, by valid one should understand values anticipated by the specification) coreboot should try to use it. IMO if TPM Startup command fails, only then coreboot should not try to use the TPM.