TPM2 on AMD Rizen (fTPM)

From: Andrea Cocito <andrea_at_cocito.eu>
Date: Sat, 03 Feb 2024 16:19:06 UTC
Hi,

I’m trying to enable TPM support on a box in order to experiment a bit with it, but the driver does not seem to load and/or see the device.

In the firmware the “fTPM” option has been enabled, tried both with SCM enabled and disabled, basically I tried all the possible firmware options combinations with no success.

I have tpm_load=“YES” in /boot/loader.conf and also tried the hints suggested by the man page is /boot/device.hints

No way to have the tpm? device(s) appear, the best I achieved so far on dmesg in a verbose boot is:
…
Preloaded elf obj module "/boot/kernel.old/geom_mirror.ko" at 0xffffffff8196d8c0.
Preloaded elf obj module "/boot/kernel.old/tpm.ko" at 0xffffffff8196dfb0.
…
tpm0 failed to probe at iomem 0xfffffffffed40000-0xfffffffffed44fff on isa0
tpm1 failed to probe at iomem 0xfffffffffed40000-0xfffffffffed40fff on isa0
…

I am all but an expert about TPM architecture (this is why I am willing to play with it), but as far as I understand AMD’s fTPM is a TPM2 built into the CPU, I have no idea on which bus it should be seen and how.

So my questions are:
- Is AMD’s fTPM supported at all by the driver?
- Am I missing something very obvious?

I have been digging around for information quite a bit, but there does not seem to be much information around. Hope I am hitting the correct list (accept my apologies if it is not).

Thanks in advance for any advice.