drivers/pc80/tpm: get ioport from pnp records

Had 0x2e hardcoded, which is often the SuperIO chip. Instead,
pull the port from the PNP tree generated from devicetree.cb,
where either 0x4e or 0x2e will be specified.

Change-Id: I4a92693f8acd3a1618cefcdf6b25eb22a727e20f
Signed-off-by: Kevin Cody-Little <kcodyjr@gmail.com>
Reviewed-on: https://review.coreboot.org/26203
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
This commit is contained in:
Kevin Cody-Little 2018-05-09 14:14:59 -04:00 committed by Philipp Deppenwiese
parent d4fec689fd
commit c97b5af898
1 changed files with 3 additions and 1 deletions

View File

@ -904,11 +904,13 @@ static void lpc_tpm_fill_ssdt(struct device *dev)
else
acpigen_write_STA(ACPI_STATUS_DEVICE_ALL_OFF);
u16 port = dev->path.pnp.port;
/* Resources */
acpigen_write_name("_CRS");
acpigen_write_resourcetemplate_header();
acpigen_write_mem32fixed(1, CONFIG_TPM_TIS_BASE_ADDRESS, 0x5000);
acpigen_write_io16(0x2e, 0x2e, 1, 2, 1);
acpigen_write_io16(port, port, 1, 2, 1);
if (CONFIG_TPM_PIRQ) {
/*