diff options
Diffstat (limited to 'src/soc/intel/common/vbt.c')
-rw-r--r-- | src/soc/intel/common/vbt.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/soc/intel/common/vbt.c b/src/soc/intel/common/vbt.c index 9e3cb3516b..50d3951179 100644 --- a/src/soc/intel/common/vbt.c +++ b/src/soc/intel/common/vbt.c @@ -33,7 +33,7 @@ const char *mainboard_vbt_filename(void) static char vbt_data[8 * KiB]; static int vbt_data_used; -void *locate_vbt(void) +void *locate_vbt(size_t *vbt_size) { uint32_t vbtsig = 0; @@ -48,6 +48,9 @@ void *locate_vbt(void) if (file_size == 0) return NULL; + if (vbt_size) + *vbt_size = file_size; + memcpy(&vbtsig, vbt_data, sizeof(vbtsig)); if (vbtsig != VBT_SIGNATURE) { printk(BIOS_ERR, "Missing/invalid signature in VBT data file!\n"); @@ -72,5 +75,5 @@ void *vbt_get(void) return NULL; if (!display_init_required()) return NULL; - return locate_vbt(); + return locate_vbt(NULL); } |