summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Cody-Little <kcodyjr@gmail.com>2018-05-09 14:22:15 -0400
committerPatrick Georgi <pgeorgi@google.com>2018-05-14 07:38:30 +0000
commit06d23234f3ecda3a0be777599f693186c0976db1 (patch)
tree1cca5a9aefa0d3c937d33f9be31b39736eae3c52
parentb3e0220a7df58a4e17b110ceccfad3e28f478578 (diff)
downloadcoreboot-06d23234f3ecda3a0be777599f693186c0976db1.tar.xz
agesa/family16kb/northbridge: report acpi namespace
Add a function domain_acpi_name to return "PCI0", rather than falling back to the parent' device's "\_SB" label. This repair is required for the LPC TPM device to register its presence without blowing up the table and preventing the payload from finding SATA. Before change, the TPM device reported as: \_SB.\_SB.LPC0.TPM After change, the TPM device reports as: \_SB.PCI0.LPC0.TPM A separate change submission will correct "LPC0" as well. Change-Id: I5e8d4715c9b42f50c84dd65818e4b0fdfc9d54f9 Signed-off-by: Kevin Cody-Little <kcodyjr@gmail.com> Reviewed-on: https://review.coreboot.org/26204 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Nico Huber <nico.h@gmx.de>
-rw-r--r--src/northbridge/amd/agesa/family16kb/northbridge.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/northbridge/amd/agesa/family16kb/northbridge.c b/src/northbridge/amd/agesa/family16kb/northbridge.c
index f667f6f83b..8e5e4725d8 100644
--- a/src/northbridge/amd/agesa/family16kb/northbridge.c
+++ b/src/northbridge/amd/agesa/family16kb/northbridge.c
@@ -795,11 +795,20 @@ static void domain_set_resources(device_t dev)
}
}
+static const char *domain_acpi_name(const struct device *dev)
+{
+ if (dev->path.type == DEVICE_PATH_DOMAIN)
+ return "PCI0";
+
+ return NULL;
+}
+
static struct device_operations pci_domain_ops = {
.read_resources = domain_read_resources,
.set_resources = domain_set_resources,
.init = DEVICE_NOOP,
.scan_bus = pci_domain_scan_bus,
+ .acpi_name = domain_acpi_name,
};
static void sysconf_init(device_t dev) // first node