summaryrefslogtreecommitdiffstats
path: root/src/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/intel/fsp1_0/fastboot_cache.c7
-rw-r--r--src/drivers/intel/fsp1_1/fastboot_cache.c3
-rw-r--r--src/drivers/intel/fsp1_1/fsp_gop.c10
-rw-r--r--src/drivers/pc80/mc146818rtc.c8
-rw-r--r--src/drivers/spi/spi_flash.c7
5 files changed, 16 insertions, 19 deletions
diff --git a/src/drivers/intel/fsp1_0/fastboot_cache.c b/src/drivers/intel/fsp1_0/fastboot_cache.c
index 306359e..5093810 100644
--- a/src/drivers/intel/fsp1_0/fastboot_cache.c
+++ b/src/drivers/intel/fsp1_0/fastboot_cache.c
@@ -63,10 +63,9 @@ static int is_mrc_cache(struct mrc_data_container *mrc_cache)
static u32 get_mrc_cache_region(struct mrc_data_container **mrc_region_ptr)
{
size_t region_size;
- *mrc_region_ptr = cbfs_get_file_content(CBFS_DEFAULT_MEDIA,
- "mrc.cache",
- CBFS_TYPE_MRC_CACHE,
- &region_size);
+ *mrc_region_ptr = cbfs_boot_map_with_leak("mrc.cache",
+ CBFS_TYPE_MRC_CACHE,
+ &region_size);
return region_size;
}
diff --git a/src/drivers/intel/fsp1_1/fastboot_cache.c b/src/drivers/intel/fsp1_1/fastboot_cache.c
index a0d15c4..9aa8a64 100644
--- a/src/drivers/intel/fsp1_1/fastboot_cache.c
+++ b/src/drivers/intel/fsp1_1/fastboot_cache.c
@@ -62,8 +62,7 @@ static int is_mrc_cache(struct mrc_data_container *mrc_cache)
static u32 get_mrc_cache_region(struct mrc_data_container **mrc_region_ptr)
{
size_t region_size;
- *mrc_region_ptr = cbfs_get_file_content(CBFS_DEFAULT_MEDIA,
- "mrc.cache",
+ *mrc_region_ptr = cbfs_boot_map_with_leak("mrc.cache",
CBFS_TYPE_MRC_CACHE,
&region_size);
diff --git a/src/drivers/intel/fsp1_1/fsp_gop.c b/src/drivers/intel/fsp1_1/fsp_gop.c
index 8a1c75f..32a176f 100644
--- a/src/drivers/intel/fsp1_1/fsp_gop.c
+++ b/src/drivers/intel/fsp1_1/fsp_gop.c
@@ -25,28 +25,28 @@
/* Reading VBT table from flash */
const optionrom_vbt_t *fsp_get_vbt(uint32_t *vbt_len)
{
- struct cbfs_file *vbt_file;
+ size_t vbt_size;
union {
const optionrom_vbt_t *data;
uint32_t *signature;
} vbt;
/* Locate the vbt file in cbfs */
- vbt_file = cbfs_get_file(CBFS_DEFAULT_MEDIA, "vbt.bin");
- if (!vbt_file) {
+ vbt.data = cbfs_boot_map_with_leak("vbt.bin", CBFS_TYPE_OPTIONROM,
+ &vbt_size);
+ if (!vbt.data) {
printk(BIOS_INFO,
"FSP_INFO: VBT data file (vbt.bin) not found in CBFS");
return NULL;
}
/* Validate the vbt file */
- vbt.data = CBFS_SUBHEADER(vbt_file);
if (*vbt.signature != VBT_SIGNATURE) {
printk(BIOS_WARNING,
"FSP_WARNING: Invalid signature in VBT data file (vbt.bin)!\n");
return NULL;
}
- *vbt_len = ntohl(vbt_file->len);
+ *vbt_len = vbt_size;
printk(BIOS_DEBUG, "FSP_INFO: VBT found at %p, 0x%08x bytes\n",
vbt.data, *vbt_len);
diff --git a/src/drivers/pc80/mc146818rtc.c b/src/drivers/pc80/mc146818rtc.c
index ff3be5b..07fc884 100644
--- a/src/drivers/pc80/mc146818rtc.c
+++ b/src/drivers/pc80/mc146818rtc.c
@@ -212,8 +212,8 @@ enum cb_err get_option(void *dest, const char *name)
namelen = strnlen(name, CMOS_MAX_NAME_LENGTH);
/* find the requested entry record */
- ct = cbfs_get_file_content(CBFS_DEFAULT_MEDIA, "cmos_layout.bin",
- CBFS_COMPONENT_CMOS_LAYOUT, NULL);
+ ct = cbfs_boot_map_with_leak("cmos_layout.bin",
+ CBFS_COMPONENT_CMOS_LAYOUT, NULL);
if (!ct) {
printk(BIOS_ERR, "RTC: cmos_layout.bin could not be found. "
"Options are disabled\n");
@@ -295,8 +295,8 @@ enum cb_err set_option(const char *name, void *value)
namelen = strnlen(name, CMOS_MAX_NAME_LENGTH);
/* find the requested entry record */
- ct = cbfs_get_file_content(CBFS_DEFAULT_MEDIA, "cmos_layout.bin",
- CBFS_COMPONENT_CMOS_LAYOUT, NULL);
+ ct = cbfs_boot_map_with_leak("cmos_layout.bin",
+ CBFS_COMPONENT_CMOS_LAYOUT, NULL);
if (!ct) {
printk(BIOS_ERR, "cmos_layout.bin could not be found. "
"Options are disabled\n");
diff --git a/src/drivers/spi/spi_flash.c b/src/drivers/spi/spi_flash.c
index b0558bb..91fd5d3 100644
--- a/src/drivers/spi/spi_flash.c
+++ b/src/drivers/spi/spi_flash.c
@@ -7,6 +7,7 @@
* Licensed under the GPL-2 or later.
*/
+#include <boot_device.h>
#include <cbfs.h>
#include <cpu/x86/smm.h>
#include <delay.h>
@@ -390,10 +391,8 @@ void lb_spi_flash(struct lb_header *header)
flash->size = sizeof(*flash);
/* Try to get the flash device if not loaded yet */
- if (!spi_flash_dev) {
- struct cbfs_media media;
- init_default_cbfs_media(&media);
- }
+ if (!spi_flash_dev)
+ boot_device_init();
if (spi_flash_dev) {
flash->flash_size = spi_flash_dev->size;
OpenPOWER on IntegriCloud