aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/soc/intel/xeon_sp/skx/include/soc/soc_util.h1
-rw-r--r--src/soc/intel/xeon_sp/skx/soc_acpi.c8
-rw-r--r--src/soc/intel/xeon_sp/skx/soc_util.c11
3 files changed, 15 insertions, 5 deletions
diff --git a/src/soc/intel/xeon_sp/skx/include/soc/soc_util.h b/src/soc/intel/xeon_sp/skx/include/soc/soc_util.h
index c7f7383731..0eac8368e0 100644
--- a/src/soc/intel/xeon_sp/skx/include/soc/soc_util.h
+++ b/src/soc/intel/xeon_sp/skx/include/soc/soc_util.h
@@ -30,6 +30,7 @@ void get_core_thread_bits(uint32_t *core_bits, uint32_t *thread_bits);
void get_cpu_info_from_apicid(uint32_t apicid, uint32_t core_bits,
uint32_t thread_bits, uint8_t *package, uint8_t *core, uint8_t *thread);
+const struct SystemMemoryMapHob *get_system_memory_map(void);
void xeonsp_init_cpu_config(void);
void set_bios_init_completion(void);
void config_reset_cpl3_csrs(void);
diff --git a/src/soc/intel/xeon_sp/skx/soc_acpi.c b/src/soc/intel/xeon_sp/skx/soc_acpi.c
index c986214b3c..9c07ec7021 100644
--- a/src/soc/intel/xeon_sp/skx/soc_acpi.c
+++ b/src/soc/intel/xeon_sp/skx/soc_acpi.c
@@ -179,13 +179,11 @@ unsigned long acpi_create_srat_lapics(unsigned long current)
static unsigned int get_srat_memory_entries(acpi_srat_mem_t *srat_mem)
{
const struct SystemMemoryMapHob *memory_map;
- size_t hob_size;
- const uint8_t mem_hob_guid[16] = FSP_SYSTEM_MEMORYMAP_HOB_GUID;
unsigned int mmap_index;
- memory_map = fsp_find_extension_hob_by_guid(mem_hob_guid, &hob_size);
- assert(memory_map != NULL && hob_size != 0);
- printk(BIOS_DEBUG, "FSP_SYSTEM_MEMORYMAP_HOB_GUID hob_size: %ld\n", hob_size);
+ memory_map = get_system_memory_map();
+ assert(memory_map != NULL);
+ printk(BIOS_DEBUG, "memory_map: %p\n", memory_map);
mmap_index = 0;
for (int e = 0; e < memory_map->numberEntries; ++e) {
diff --git a/src/soc/intel/xeon_sp/skx/soc_util.c b/src/soc/intel/xeon_sp/skx/soc_util.c
index e21edbc8f7..50f091ec94 100644
--- a/src/soc/intel/xeon_sp/skx/soc_util.c
+++ b/src/soc/intel/xeon_sp/skx/soc_util.c
@@ -373,6 +373,17 @@ void get_iiostack_info(struct iiostack_resource *info)
}
#if ENV_RAMSTAGE
+const struct SystemMemoryMapHob *get_system_memory_map(void)
+{
+ size_t hob_size;
+ const uint8_t mem_hob_guid[16] = FSP_SYSTEM_MEMORYMAP_HOB_GUID;
+ const struct SystemMemoryMapHob *memmap_addr;
+
+ memmap_addr = fsp_find_extension_hob_by_guid(mem_hob_guid, &hob_size);
+ assert(memmap_addr != NULL && hob_size != 0);
+
+ return memmap_addr;
+}
void xeonsp_init_cpu_config(void)
{