soc/amd/genoa/domain: generate SSDT entries for domains

Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: Iadc37f2724a9be43cad1f1934403ebabd5cca245
Reviewed-on: https://review.coreboot.org/c/coreboot/+/79469
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
diff --git a/src/soc/amd/genoa/domain.c b/src/soc/amd/genoa/domain.c
index 1a6115f..8ed95ab 100644
--- a/src/soc/amd/genoa/domain.c
+++ b/src/soc/amd/genoa/domain.c
@@ -57,9 +57,26 @@
 	register_new_ioapic((void *)(uintptr_t)res->base);
 }
 
+static const char *genoa_domain_acpi_name(const struct device *domain)
+{
+	const char *domain_acpi_names[4] = {
+		"S0B0",
+		"S0B1",
+		"S0B2",
+		"S0B3",
+	};
+
+	if (domain->path.domain.domain < ARRAY_SIZE(domain_acpi_names))
+		return domain_acpi_names[domain->path.domain.domain];
+
+	return NULL;
+}
+
 struct device_operations genoa_pci_domain_ops = {
 	.read_resources	= genoa_domain_read_resources,
 	.set_resources	= genoa_domain_set_resources,
 	.scan_bus	= amd_pci_domain_scan_bus,
 	.init		= genoa_domain_init,
+	.acpi_name	= genoa_domain_acpi_name,
+	.acpi_fill_ssdt	= amd_pci_domain_fill_ssdt,
 };