diff options
author | Iru Cai <mytbk920423@gmail.com> | 2020-11-02 13:13:32 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2021-05-21 20:30:32 +0800 |
commit | d0683acb0ce411f13fc1a21fb911422de3e903bf (patch) | |
tree | f591219040b4bdefd4b0767efad0f230183abe91 /src/soc/intel/broadwell/refcode.c | |
parent | 35fd3331f471144d40358a85a43529fa5f172075 (diff) | |
download | coreboot-d0683acb0ce411f13fc1a21fb911422de3e903bf.tar.xz |
add broadwell_refcode.asm
Diffstat (limited to 'src/soc/intel/broadwell/refcode.c')
-rw-r--r-- | src/soc/intel/broadwell/refcode.c | 35 |
1 files changed, 2 insertions, 33 deletions
diff --git a/src/soc/intel/broadwell/refcode.c b/src/soc/intel/broadwell/refcode.c index ae175b0f68..4edadfa7d2 100644 --- a/src/soc/intel/broadwell/refcode.c +++ b/src/soc/intel/broadwell/refcode.c @@ -13,37 +13,10 @@ #include <soc/pm.h> #include <soc/ramstage.h> -static pei_wrapper_entry_t load_reference_code(void) -{ - if (resume_from_stage_cache()) { - struct prog prog; - stage_cache_load_stage(STAGE_REFCODE, &prog); - return prog_entry(&prog); - } - - struct prog prog = - PROG_INIT(PROG_REFCODE, CONFIG_CBFS_PREFIX "/refcode"); - struct rmod_stage_load refcode = { - .cbmem_id = CBMEM_ID_REFCODE, - .prog = &prog, - }; - - if (rmodule_stage_load(&refcode)) { - printk(BIOS_DEBUG, "Error loading reference code.\n"); - return NULL; - } - - /* Cache loaded reference code. */ - stage_cache_add(STAGE_REFCODE, &prog); - - return (pei_wrapper_entry_t)prog_entry(&prog); -} - void broadwell_run_reference_code(void) { int ret, dummy; struct pei_data pei_data; - pei_wrapper_entry_t entry; memset(&pei_data, 0, sizeof(pei_data)); mainboard_fill_pei_data(&pei_data); @@ -52,14 +25,10 @@ void broadwell_run_reference_code(void) pei_data.boot_mode = acpi_is_wakeup_s3() ? ACPI_S3 : 0; pei_data.saved_data = (void *) &dummy; - entry = load_reference_code(); - if (entry == NULL) { - printk(BIOS_ERR, "Reference code not found\n"); - return; - } + extern int ABI_X86 refcode_entry(struct pei_data *pei_data); /* Call into reference code. */ - ret = entry(&pei_data); + ret = refcode_entry(&pei_data); if (ret != 0) { printk(BIOS_ERR, "Reference code returned %d\n", ret); return; |