xeon_sp/cpx: Fix get_system_memory_map to return the correct address
Similar to commit b45ed65
, the HOB structure is actually a 8 byte
address pointing to the HOB data.
Tested=Verified the values of the hob fields are the same printed by
soc_display_memmap_hob().
Change-Id: I348d3cd80a56e86d22f20fcadf0316b462b86829
Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/44502
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
This commit is contained in:
parent
24bb8036c9
commit
91c8ccd99e
|
@ -29,14 +29,19 @@ 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;
|
||||
|
||||
const void *memmap_addr = fsp_find_extension_hob_by_guid(mem_hob_guid, &hob_size);
|
||||
memmap_addr = (const struct SystemMemoryMapHob **)
|
||||
fsp_find_extension_hob_by_guid(mem_hob_guid, &hob_size);
|
||||
/* hob_size is the size of the 8-byte address not the hob data */
|
||||
assert(memmap_addr != NULL && hob_size != 0);
|
||||
printk(BIOS_DEBUG, "FSP_SYSTEM_MEMORYMAP_HOB_GUID hob_size: %ld\n", hob_size);
|
||||
/* assert the pointer to the hob is not NULL */
|
||||
assert(*memmap_addr != NULL);
|
||||
|
||||
return (const struct SystemMemoryMapHob *) memmap_addr;
|
||||
return *memmap_addr;
|
||||
}
|
||||
|
||||
|
||||
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)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue