[coreboot-gerrit] Patch set updated for coreboot: drivers/intel/fsp2_0: Take cbmem overhead size as a parameter
Alexandru Gagniuc (mr.nuke.me@gmail.com)
gerrit at coreboot.org
Mon Jan 25 06:41:44 CET 2016
Alexandru Gagniuc (mr.nuke.me at gmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13377
-gerrit
commit b00e2a51cad153c9189bfa0b44005a8f5f65ae41
Author: Alexandru Gagniuc <alexandrux.gagniuc at intel.com>
Date: Mon Dec 7 15:42:54 2015 -0800
drivers/intel/fsp2_0: Take cbmem overhead size as a parameter
FSP will reserve an area of memory at the top of usable RAM below 4GiB
if asked. Rather than selecting the region's size in fsp_memory_init(),
pass it as a parameter. This allows the caller to handle all the cbmem
related logic, and removes the cbmem dependency from the FSP wrapper.
Change-Id: I581b224ee83202732ae83a0f363f0bb717aae669
Signed-off-by: Alexandru Gagniuc <alexandrux.gagniuc at intel.com>
---
src/drivers/intel/fsp2_0/include/fsp/api.h | 2 +-
src/drivers/intel/fsp2_0/memory_init.c | 10 +++++-----
src/soc/intel/apollolake/romstage/romstage.c | 2 +-
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/src/drivers/intel/fsp2_0/include/fsp/api.h b/src/drivers/intel/fsp2_0/include/fsp/api.h
index 6d2efd8..08f5b57 100644
--- a/src/drivers/intel/fsp2_0/include/fsp/api.h
+++ b/src/drivers/intel/fsp2_0/include/fsp/api.h
@@ -39,7 +39,7 @@ enum fsp_notify_phase {
/* Main FSP stages */
-enum fsp_status fsp_memory_init(void **hob_list);
+enum fsp_status fsp_memory_init(void **hob_list, size_t tolum_size);
enum fsp_status fsp_silicon_init(void);
enum fsp_status fsp_notify(enum fsp_notify_phase phase);
diff --git a/src/drivers/intel/fsp2_0/memory_init.c b/src/drivers/intel/fsp2_0/memory_init.c
index e9d6e42..84f6fe1 100644
--- a/src/drivers/intel/fsp2_0/memory_init.c
+++ b/src/drivers/intel/fsp2_0/memory_init.c
@@ -14,7 +14,6 @@
#include <arch/io.h>
#include <arch/cpu.h>
#include <console/console.h>
-#include <cbmem.h>
#include <fsp/api.h>
#include <fsp/util.h>
#include <string.h>
@@ -58,7 +57,8 @@ void platform_fsp_memory_init_params_cb(struct MEMORY_INIT_UPD *memupd)
}
static enum fsp_status do_fsp_memory_init(void **hob_list_ptr,
- struct fsp_header *hdr)
+ struct fsp_header *hdr,
+ size_t tolum_size)
{
enum fsp_status status;
fsp_memory_init_fn fsp_raminit;
@@ -74,7 +74,7 @@ static enum fsp_status do_fsp_memory_init(void **hob_list_ptr,
memset(&rt_buffer, 0, sizeof(rt_buffer));
rt_buffer.upd_data_rgn = &raminit_upd;
- rt_buffer.bootloader_tolum_size = cbmem_overhead_size();
+ rt_buffer.bootloader_tolum_size = tolum_size;
/* Get any board specific changes */
raminit_params.nvs_buffer = NULL;
@@ -114,12 +114,12 @@ static void relocate_fit(void)
memcpy((void*)CONFIG_FIT_CAR_ADDR, (void*)fit_loc, FIT_SIZE);
}
-enum fsp_status fsp_memory_init(void **hob_list)
+enum fsp_status fsp_memory_init(void **hob_list, size_t tolum_size)
{
struct fsp_header hdr;
if (fsp_load_binary(&hdr, "blobs/fsp-m.bin") != CB_SUCCESS)
return FSP_NOT_FOUND;
relocate_fit();
- return do_fsp_memory_init(hob_list, &hdr);
+ return do_fsp_memory_init(hob_list, &hdr, tolum_size);
}
diff --git a/src/soc/intel/apollolake/romstage/romstage.c b/src/soc/intel/apollolake/romstage/romstage.c
index dfc57cb..98f2a08 100644
--- a/src/soc/intel/apollolake/romstage/romstage.c
+++ b/src/soc/intel/apollolake/romstage/romstage.c
@@ -84,7 +84,7 @@ asmlinkage void* romstage_entry(void)
soc_early_romstage_init();
- fsp_memory_init(&hob_list_ptr);
+ fsp_memory_init(&hob_list_ptr, cbmem_overhead_size());
fsp_find_reserved_memory(&fsp_mem, hob_list_ptr);
More information about the coreboot-gerrit
mailing list