diff options
author | Shuo Liu <shuo.liu@intel.com> | 2024-01-20 02:52:17 +0800 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2024-02-20 12:40:15 +0000 |
commit | 08f1f05bf6592359e3a4b1d1eaff8223e012684e (patch) | |
tree | f8cb84a96340b9bb8e5b3135b67de5c9080e3b03 /src/soc/intel/xeon_sp/spr | |
parent | 94ff128c91f02fce31c672ff8317c9098018f3e8 (diff) |
soc/intel/xeon_sp: Add support for is_ioat_iio_stack_res
IOAT is the term for the on-chip accelerator technology of
Xeon-SP. In CPX and SPR, IOAT stack is also named as DINO stack.
Different SoC has different check criteria for IOAT stacks,
this patch introduces an util function to abstract these differences
as well as cleaning up the usage of names.
TEST=intel/archercity CRB
Change-Id: I376928ad89b68b294734000678dad6f070d3c97d
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80578
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/intel/xeon_sp/spr')
-rw-r--r-- | src/soc/intel/xeon_sp/spr/ioat.c | 2 | ||||
-rw-r--r-- | src/soc/intel/xeon_sp/spr/soc_acpi.c | 4 | ||||
-rw-r--r-- | src/soc/intel/xeon_sp/spr/soc_util.c | 5 |
3 files changed, 8 insertions, 3 deletions
diff --git a/src/soc/intel/xeon_sp/spr/ioat.c b/src/soc/intel/xeon_sp/spr/ioat.c index 60936a8a42..0d81d0d2ef 100644 --- a/src/soc/intel/xeon_sp/spr/ioat.c +++ b/src/soc/intel/xeon_sp/spr/ioat.c @@ -86,7 +86,7 @@ void soc_create_ioat_domains(const union xeon_domain_path path, struct bus *cons /* The FSP HOB doesn't provide accurate information about the resource allocation. Hence use pre-defined offsets. Based - on ACPI code in create_dsdt_dino_resource(), soc_acpi.c: */ + on ACPI code in create_dsdt_ioat_resource(), soc_acpi.c: */ resource_t mem64_base, mem64_limit, bus_base, bus_limit; /* CPM0 */ diff --git a/src/soc/intel/xeon_sp/spr/soc_acpi.c b/src/soc/intel/xeon_sp/spr/soc_acpi.c index a48302cf2e..ca1cdf993c 100644 --- a/src/soc/intel/xeon_sp/spr/soc_acpi.c +++ b/src/soc/intel/xeon_sp/spr/soc_acpi.c @@ -189,7 +189,7 @@ static void create_dsdt_iou_cxl_resource(uint8_t socket, uint8_t stack, const ST acpigen_pop_len(); } -static void create_dsdt_dino_resource(uint8_t socket, uint8_t stack, const STACK_RES *ri, bool stack_enabled) +static void create_dsdt_ioat_resource(uint8_t socket, uint8_t stack, const STACK_RES *ri, bool stack_enabled) { if (!stack_enabled) return; @@ -381,7 +381,7 @@ void uncore_fill_ssdt(const struct device *device) stack_enabled); create_dsdt_stack_sta(socket, stack, ri, stack_enabled); } else if (stack >= IioStack8 && stack <= IioStack11) { // TYPE_DINO - create_dsdt_dino_resource(socket, stack, ri, stack_enabled); + create_dsdt_ioat_resource(socket, stack, ri, stack_enabled); create_dsdt_stack_sta(socket, stack, ri, stack_enabled); } else if (stack == IioStack13) { // TYPE_UBOX create_dsdt_ubox_resource(socket, stack, ri, stack_enabled); diff --git a/src/soc/intel/xeon_sp/spr/soc_util.c b/src/soc/intel/xeon_sp/spr/soc_util.c index a2516dfef8..344fa5b339 100644 --- a/src/soc/intel/xeon_sp/spr/soc_util.c +++ b/src/soc/intel/xeon_sp/spr/soc_util.c @@ -78,6 +78,11 @@ bool is_ubox_stack_res(const STACK_RES *res) return res->Personality == TYPE_UBOX; } +bool is_ioat_iio_stack_res(const STACK_RES *res) +{ + return res->Personality == TYPE_DINO; +} + /* * Given a stack resource, figure out whether the corresponding stack has * CXL device. |