summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/include/fmap.h7
-rw-r--r--src/lib/coreboot_table.c5
-rw-r--r--src/lib/fmap.c7
3 files changed, 11 insertions, 8 deletions
diff --git a/src/include/fmap.h b/src/include/fmap.h
index ab7e5ab895..649ecc0000 100644
--- a/src/include/fmap.h
+++ b/src/include/fmap.h
@@ -19,9 +19,6 @@
#include <commonlib/region.h>
#include <commonlib/fmap_serialized.h>
-/* Locate the fmap directory. Return 0 on success, < 0 on error. */
-int find_fmap_directory(struct region_device *fmrd);
-
/* Locate the named area in the fmap and fill in a region device representing
* that area. The region is a sub-region of the readonly boot media. Return
* 0 on success, < 0 on error. */
@@ -48,4 +45,8 @@ ssize_t fmap_read_area(const char *name, void *buffer, size_t size);
/* Write provided buffer into fmap area.
* Return size written on success, < 0 on error. */
ssize_t fmap_overwrite_area(const char *name, const void *buffer, size_t size);
+
+/* Get offset of FMAP in flash. */
+uint64_t get_fmap_flash_offset(void);
+
#endif
diff --git a/src/lib/coreboot_table.c b/src/lib/coreboot_table.c
index 9c5942fa9d..d3576e6a32 100644
--- a/src/lib/coreboot_table.c
+++ b/src/lib/coreboot_table.c
@@ -256,7 +256,6 @@ static void lb_boot_media_params(struct lb_header *header)
struct lb_boot_media_params *bmp;
struct cbfs_props props;
const struct region_device *boot_dev;
- struct region_device fmrd;
boot_device_init();
@@ -275,9 +274,7 @@ static void lb_boot_media_params(struct lb_header *header)
bmp->cbfs_size = props.size;
bmp->boot_media_size = region_device_sz(boot_dev);
- bmp->fmap_offset = ~(uint64_t)0;
- if (find_fmap_directory(&fmrd) == 0)
- bmp->fmap_offset = region_device_offset(&fmrd);
+ bmp->fmap_offset = get_fmap_flash_offset();
}
static void lb_ram_code(struct lb_header *header)
diff --git a/src/lib/fmap.c b/src/lib/fmap.c
index f0074186da..a427102210 100644
--- a/src/lib/fmap.c
+++ b/src/lib/fmap.c
@@ -31,7 +31,12 @@
static int fmap_print_once CAR_GLOBAL;
static struct mem_region_device fmap_cache CAR_GLOBAL;
-int find_fmap_directory(struct region_device *fmrd)
+uint64_t get_fmap_flash_offset(void)
+{
+ return FMAP_OFFSET;
+}
+
+static int find_fmap_directory(struct region_device *fmrd)
{
const struct region_device *boot;
struct fmap *fmap;