drivers/pc80/tpm/tis.c: Use fixed TPM ACPI path

Windows 11 installer expects the TPM to reside under \\_SB_.PCI0 in
ACPI device hierarchy, otherwise the TPM is not detected. Hardcode
the path to fix the issue.

TEST=Boot Windows 11 on Clevo NV41MZ and see the TPM is detected
correctly

TEST=Boot Ubuntu 20.04 on Clevo NV41MZ and see the TPM is detected
correctly

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Change-Id: If0b3136e3eb8eb1bb132132a5f3a7034bdd3b424
Reviewed-on: https://review.coreboot.org/c/coreboot/+/62493
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Michał Kopeć 2022-02-22 12:30:22 +01:00 committed by Felix Held
parent 5deefc8bd3
commit a691cbd2eb
1 changed files with 2 additions and 6 deletions

View File

@ -779,12 +779,8 @@ static void lpc_tpm_set_resources(struct device *dev)
#if CONFIG(HAVE_ACPI_TABLES) #if CONFIG(HAVE_ACPI_TABLES)
static void lpc_tpm_fill_ssdt(const struct device *dev) static void lpc_tpm_fill_ssdt(const struct device *dev)
{ {
const char *path = acpi_device_path(dev->bus->dev); /* Windows 11 requires the following path for TPM to be detected */
const char *path = "\\_SB_.PCI0";
if (!path) {
path = "\\_SB_.PCI0.LPCB";
printk(BIOS_DEBUG, "Using default TPM ACPI path: '%s'\n", path);
}
/* Device */ /* Device */
acpigen_write_scope(path); acpigen_write_scope(path);