From d65ff8492c4a299b0dcbd451331563e3af236d3c Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Wed, 11 Dec 2024 15:04:10 +0100 Subject: [PATCH] soc/intel/xeon_sp/spr/acpi: Fix regression Fix regression introduced in commit 177bb5e9b9789cc830f504815e711973190def4e ("soc/intel/xeon_sp: Revise IIO domain ACPI name encoding"). Ensure domain ACPI names in the DSDT are in sync with SSDT ACPI names. Fixes PCI devices not discovered on socket 1-3. TEST: Booted in ibm/sbp1 and found all PCI devices working, no errors in dmesg are shown. Change-Id: Ice168bdebc46dc0cfb9c63c78c46a5d9ff2b7658 Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/c/coreboot/+/85562 Tested-by: build bot (Jenkins) Reviewed-by: Angel Pons Reviewed-by: Shuo Liu --- src/soc/intel/xeon_sp/spr/acpi/cxl_resource.asl | 4 ++-- src/soc/intel/xeon_sp/spr/acpi/pci_resource.asl | 4 ++-- src/soc/intel/xeon_sp/spr/acpi/uncore.asl | 8 ++++++++ 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/soc/intel/xeon_sp/spr/acpi/cxl_resource.asl b/src/soc/intel/xeon_sp/spr/acpi/cxl_resource.asl index 553ca9d8f7..7676a3fc37 100644 --- a/src/soc/intel/xeon_sp/spr/acpi/cxl_resource.asl +++ b/src/soc/intel/xeon_sp/spr/acpi/cxl_resource.asl @@ -8,7 +8,7 @@ #define _IIO_DEVICE_UID(str, skt, stk) STR(str##skt##stk) #define IIO_DEVICE_UID(str, skt, stk) _IIO_DEVICE_UID(str, skt, stk) -Device (IIO_DEVICE_NAME(DEVPREFIX, SOCKET, STACK)) +Device (IIO_DEVICE_NAME(DEVPREFIX, SOCKET_NAME, STACK)) { Name (_HID, "ACPI0017") /* CXL */ Name (_CID, Package (0x02) @@ -16,7 +16,7 @@ Device (IIO_DEVICE_NAME(DEVPREFIX, SOCKET, STACK)) EisaId ("PNP0A08") /* PCI Express Bus */, EisaId ("PNP0A03") /* PCI Bus */ }) - Name (_UID, IIO_DEVICE_UID(DEVPREFIX, SOCKET, STACK)) + Name (_UID, IIO_DEVICE_UID(DEVPREFIX, SOCKET_NAME, STACK)) Method (_STA, 0, NotSerialized) { /* diff --git a/src/soc/intel/xeon_sp/spr/acpi/pci_resource.asl b/src/soc/intel/xeon_sp/spr/acpi/pci_resource.asl index fdb599ec47..a2cc03fe17 100644 --- a/src/soc/intel/xeon_sp/spr/acpi/pci_resource.asl +++ b/src/soc/intel/xeon_sp/spr/acpi/pci_resource.asl @@ -8,11 +8,11 @@ #define _IIO_DEVICE_UID(str, skt, stk) STR(str##skt##stk) #define IIO_DEVICE_UID(str, skt, stk) _IIO_DEVICE_UID(str, skt, stk) -Device (IIO_DEVICE_NAME(DEVPREFIX, SOCKET, STACK)) +Device (IIO_DEVICE_NAME(DEVPREFIX, SOCKET_NAME, STACK)) { Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) - Name (_UID, IIO_DEVICE_UID(DEVPREFIX, SOCKET, STACK)) + Name (_UID, IIO_DEVICE_UID(DEVPREFIX, SOCKET_NAME, STACK)) Method (_STA, 0, NotSerialized) { /* diff --git a/src/soc/intel/xeon_sp/spr/acpi/uncore.asl b/src/soc/intel/xeon_sp/spr/acpi/uncore.asl index c1b8bdca35..f6fbe96f60 100644 --- a/src/soc/intel/xeon_sp/spr/acpi/uncore.asl +++ b/src/soc/intel/xeon_sp/spr/acpi/uncore.asl @@ -10,7 +10,9 @@ Scope (\_SB) { #include "uncore_irq.asl" + // Keep in sync with iio_domain_set_acpi_name()! #define SOCKET 0 + #define SOCKET_NAME 0 #include "iiostack.asl" #undef SOCKET @@ -24,19 +26,25 @@ Scope (\_SB) #endif #if (CONFIG_MAX_SOCKET > 1) + // Keep in sync with iio_domain_set_acpi_name()! #define SOCKET 1 + #define SOCKET_NAME 2 #include "iiostack.asl" #undef SOCKET #endif #if (CONFIG_MAX_SOCKET > 2) + // Keep in sync with iio_domain_set_acpi_name()! #define SOCKET 2 + #define SOCKET_NAME 4 #include "iiostack.asl" #undef SOCKET #endif #if (CONFIG_MAX_SOCKET > 3) + // Keep in sync with iio_domain_set_acpi_name()! #define SOCKET 3 + #define SOCKET_NAME 6 #include "iiostack.asl" #undef SOCKET #endif