On 23.06.2018 07:58, Jorge Fernandez Monteagudo wrote: >> I guess it's used, but you need an acpi name for all devices along the >> path. "LIBR" is the name for the LPC device, there should also be one >> for the PCI bus/domain. I would try `src/northbridge/amd/pi/00660F01/ >> northbridge.c`. > > > Could you point me to an example to know what I have to look for, p.e, > to a good supported board or something related. I'm still introducing me > in the coreboot world :)
Didn't use a TPM with coreboot so far, so I don't know full working examples (but there are some, I'm sure). Regarding the domain, the code for 00730F01 looks like what I had in mind: `src/northbridge/amd/pi/00730F01/northbridge.c:813`. Background: the TPM driver calls acpi_device_path() which walks the devicetree hierarchy up and asks every device for its acpi_name(). If you look at your devicetree, there is above your TPM, the `device pci 14.3` (LIBR), then `device domain 0` (PCI0) and finally an implicit root device (_SB_). The latter is hardcoded for all of coreboot. Now this acpi_name() has one peculiarity: When one device doesn't have this function, its parent's acpi_name() function is queried. That is why the acpi_name() implementations don't just `return "...";` but check for what device they were called, first. The names returned have to match the names in the static ACPI tables. See your board's `dsdt.asl` and what it includes. Nico -- coreboot mailing list: [email protected] https://mail.coreboot.org/mailman/listinfo/coreboot

