summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShuo Liu <shuo.liu@intel.com>2022-07-05 22:56:28 +0800
committerFelix Held <felix-coreboot@felixheld.de>2024-02-20 12:40:48 +0000
commit3108ba5a070559cd1a682edb448bd2ccf474833a (patch)
treefb6cfce2f6e9be3565fcb72d6b3c79161653e55d /src
parent08f1f05bf6592359e3a4b1d1eaff8223e012684e (diff)
soc/intel/xeon_sp: Use ACPI common flags in SRAT generation
Move the definition of SRAT memory flags (SRAT_ACPI_MEMORY_ENABLED and SRAT_ACPI_MEMORY_NONVOLATILE) from FSP header to ACPI common codes. TEST=intel/archercity CRB Signed-off-by: Shuo Liu <shuo.liu@intel.com> Change-Id: I6aa5c20c9556fd5d680406518d19a83801b0852c Reviewed-on: https://review.coreboot.org/c/coreboot/+/80630 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Diffstat (limited to 'src')
-rw-r--r--src/include/acpi/acpi.h4
-rw-r--r--src/soc/intel/xeon_sp/uncore_acpi.c4
-rw-r--r--src/vendorcode/intel/fsp/fsp2_0/cooperlake_sp/hob_memmap.h5
-rw-r--r--src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/defs_memmap.h7
-rw-r--r--src/vendorcode/intel/fsp/fsp2_0/skylake_sp/hob_memmap.h5
5 files changed, 7 insertions, 18 deletions
diff --git a/src/include/acpi/acpi.h b/src/include/acpi/acpi.h
index c39683ed4e..d6c30c1b5f 100644
--- a/src/include/acpi/acpi.h
+++ b/src/include/acpi/acpi.h
@@ -409,6 +409,10 @@ typedef struct acpi_srat_lapic {
u32 clock_domain; /* _CDM Clock Domain */
} __packed acpi_srat_lapic_t;
+#define ACPI_SRAT_MEMORY_ENABLED (1 << 0)
+#define ACPI_SRAT_MEMORY_HOT_PLUGGABLE (1 << 1)
+#define ACPI_SRAT_MEMORY_NONVOLATILE (1 << 2)
+
/* SRAT: Memory Affinity Structure */
typedef struct acpi_srat_mem {
u8 type; /* Type (1) */
diff --git a/src/soc/intel/xeon_sp/uncore_acpi.c b/src/soc/intel/xeon_sp/uncore_acpi.c
index e3915b5ffb..51c2e0e13d 100644
--- a/src/soc/intel/xeon_sp/uncore_acpi.c
+++ b/src/soc/intel/xeon_sp/uncore_acpi.c
@@ -132,9 +132,9 @@ static unsigned int get_srat_memory_entries(acpi_srat_mem_t *srat_mem)
srat_mem[mmap_index].length_low = (uint32_t)(size & 0xffffffff);
srat_mem[mmap_index].length_high = (uint32_t)(size >> 32);
srat_mem[mmap_index].proximity_domain = mem_element->SocketId;
- srat_mem[mmap_index].flags = SRAT_ACPI_MEMORY_ENABLED;
+ srat_mem[mmap_index].flags = ACPI_SRAT_MEMORY_ENABLED;
if ((mem_element->Type & MEMTYPE_VOLATILE_MASK) == 0)
- srat_mem[mmap_index].flags |= SRAT_ACPI_MEMORY_NONVOLATILE;
+ srat_mem[mmap_index].flags |= ACPI_SRAT_MEMORY_NONVOLATILE;
++mmap_index;
}
diff --git a/src/vendorcode/intel/fsp/fsp2_0/cooperlake_sp/hob_memmap.h b/src/vendorcode/intel/fsp/fsp2_0/cooperlake_sp/hob_memmap.h
index f7b5fb5179..eef8cc6c24 100644
--- a/src/vendorcode/intel/fsp/fsp2_0/cooperlake_sp/hob_memmap.h
+++ b/src/vendorcode/intel/fsp/fsp2_0/cooperlake_sp/hob_memmap.h
@@ -60,11 +60,6 @@ are permitted provided that the following conditions are met:
MAX_SOCKET * MAX_IMC_PER_SOCKET * MAX_SRAT_MEM_ENTRIES_PER_IMC \
)
-/* ACPI SRAT Memory Flags */
-#define SRAT_ACPI_MEMORY_ENABLED (1 << 0)
-#define SRAT_ACPI_MEMORY_HOT_REMOVE_SUPPORTED (1 << 1)
-#define SRAT_ACPI_MEMORY_NONVOLATILE (1 << 2)
-
#define MEM_TYPE_RESERVED (1 << 8)
#define MEM_ADDR_64MB_SHIFT_BITS 26
diff --git a/src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/defs_memmap.h b/src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/defs_memmap.h
index 9f04b93aa1..89897bcc7a 100644
--- a/src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/defs_memmap.h
+++ b/src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/defs_memmap.h
@@ -45,11 +45,6 @@ are permitted provided that the following conditions are met:
#define MEMTYPE_2LM_MASK (1 << 1)
#define MEMTYPE_VOLATILE_MASK (MEMTYPE_1LM_MASK | MEMTYPE_2LM_MASK)
-/* ACPI SRAT Memory Flags */
-#define SRAT_ACPI_MEMORY_ENABLED (1 << 0)
-#define SRAT_ACPI_MEMORY_HOT_REMOVE_SUPPORTED (1 << 1)
-#define SRAT_ACPI_MEMORY_NONVOLATILE (1 << 2)
-
#define MEM_TYPE_RESERVED (1 << 8)
#define MEM_ADDR_64MB_SHIFT_BITS 26
@@ -68,4 +63,4 @@ are permitted provided that the following conditions are met:
// #define MAX_SAD_RULES 16
// #define MAX_FPGA_REMOTE_SAD_RULES 2 // Maximum FPGA sockets exists on ICX platform
-#endif \ No newline at end of file
+#endif
diff --git a/src/vendorcode/intel/fsp/fsp2_0/skylake_sp/hob_memmap.h b/src/vendorcode/intel/fsp/fsp2_0/skylake_sp/hob_memmap.h
index 954e43ce1a..3440ab7461 100644
--- a/src/vendorcode/intel/fsp/fsp2_0/skylake_sp/hob_memmap.h
+++ b/src/vendorcode/intel/fsp/fsp2_0/skylake_sp/hob_memmap.h
@@ -46,11 +46,6 @@ are permitted provided that the following conditions are met:
MAX_SOCKET * MAX_IMC_PER_SOCKET * MAX_SRAT_MEM_ENTRIES_PER_IMC \
)
-/* ACPI SRAT Memory Flags */
-#define SRAT_ACPI_MEMORY_ENABLED (1 << 0)
-#define SRAT_ACPI_MEMORY_HOT_REMOVE_SUPPORTED (1 << 1)
-#define SRAT_ACPI_MEMORY_NONVOLATILE (1 << 2)
-
#define MEM_TYPE_RESERVED (1 << 8)
#define MEM_ADDR_64MB_SHIFT_BITS 26