Andrey Petrov (andrey.petrov@intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14248
-gerrit
commit 4b7d86b6931aa0fee7129791c66f30de53351420 Author: Alexandru Gagniuc alexandrux.gagniuc@intel.com Date: Thu Mar 3 13:16:36 2016 -0800
soc/intel/apollolake: Override default to_flash_offset implementation
The default nvm_mmio_to_flash_offset() implementation used by NVM code in intel/common does not work on apollolake. As a result, provide the correct override.
Change-Id: I01a94f90dfdd33586a4aac5c05dd8c73e8804437 Signed-off-by: Alexandru Gagniuc alexandrux.gagniuc@intel.com --- src/soc/intel/apollolake/mmap_boot.c | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/src/soc/intel/apollolake/mmap_boot.c b/src/soc/intel/apollolake/mmap_boot.c index 3625924..a9b66ec 100644 --- a/src/soc/intel/apollolake/mmap_boot.c +++ b/src/soc/intel/apollolake/mmap_boot.c @@ -16,6 +16,7 @@ #include <commonlib/region.h> #include <console/console.h> #include <fmap.h> +#include <soc/intel/common/nvm.h>
/* The 128 KiB right below 4G are decoded by readonly SRAM, not boot media */ #define IFD_BIOS_MAX_MAPPED (CONFIG_IFD_BIOS_END - 128 * KiB) @@ -72,3 +73,10 @@ const struct cbfs_locator cbfs_master_header_locator = { .name = "IAFW Locator", .locate = iafw_boot_region_properties, }; + +uintptr_t nvm_mmio_to_flash_offset(void *p) +{ + uintptr_t xlate_base; + xlate_base = ((uintptr_t)(0x100000000ULL - CONFIG_IFD_BIOS_END)); + return (uintptr_t)p - xlate_base; +}