soc/intel/common: use prog_locate() for finding fsp.bin

The current method was only taking the cbfs path. Because
of this fsp.bin was never being utilized from the RW slots.
Using prog_locate() now provides both the cbfs and vboot
locate methods for free.

BUG=chrome-os-partner:44827
BRANCH=None
TEST=Built and booted glados.

Change-Id: I2b3e088326d5a965ad90806a7950b9f401ed57de
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/11831
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
Aaron Durbin 2015-10-08 15:06:28 -05:00 committed by Aaron Durbin
parent 8475f2d0c5
commit 5d6f0f97b6
1 changed files with 3 additions and 6 deletions

View File

@ -164,15 +164,12 @@ static void fsp_cache_save(struct prog *fsp)
static int fsp_find_and_relocate(struct prog *fsp) static int fsp_find_and_relocate(struct prog *fsp)
{ {
struct cbfsf fsp_file; if (prog_locate(fsp)) {
uint32_t type = CBFS_TYPE_FSP; printk(BIOS_ERR, "ERROR: Couldn't find %s\n", prog_name(fsp));
if (cbfs_boot_locate(&fsp_file, prog_name(fsp), &type)) {
printk(BIOS_ERR, "ERROR: Couldn't find fsp.bin in CBFS.\n");
return -1; return -1;
} }
if (fsp_relocate(fsp, &fsp_file.data)) { if (fsp_relocate(fsp, prog_rdev(fsp))) {
printk(BIOS_ERR, "ERROR: FSP relocation failed.\n"); printk(BIOS_ERR, "ERROR: FSP relocation failed.\n");
return -1; return -1;
} }