diff options
| author | Tom Rini <[email protected]> | 2026-07-28 07:51:19 -0600 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-07-28 07:52:13 -0600 |
| commit | e354b34a6ab4b1887fd451bea8ceb7be146070a8 (patch) | |
| tree | 759b2967c8f39f25828b3671d5c6a4bacaac4df7 /lib | |
| parent | 9f934c71810e349949ce674e33099dface1ba6f4 (diff) | |
| parent | a2fda5145fdf771625b58723ebfb8f1f98f428a1 (diff) | |
Merge tag 'efi-2026-01-rc2' of https://git.u-boot-project.org/u-boot/custodians/u-boot-efi
Pull request efi-2026-01-rc2
CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-efi/-/pipelines/753
Documentation:
* sandbox: fix enum host_platform_flags description
* switch from setenv to env set and from printenv to env print
* document Renesas R-Car Gen5 RSIP Cortex-R52 start
* thead: lpi4a: detail how to enable fastboot
UEFI:
* unify and correct GUID selection for security database variables
* test: check default GUID selection of security database variables
* set correct frame buffer address
* check efi_deserialize_load_option() in get_dp_device()
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/efi_loader/efi_capsule.c | 7 | ||||
| -rw-r--r-- | lib/efi_loader/efi_gop.c | 7 |
2 files changed, 9 insertions, 5 deletions
diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c index 52887f7c274..a77810fa15c 100644 --- a/lib/efi_loader/efi_capsule.c +++ b/lib/efi_loader/efi_capsule.c @@ -860,7 +860,11 @@ static efi_status_t get_dp_device(u16 *boot_var, if (!buf) return EFI_NOT_FOUND; - efi_deserialize_load_option(&lo, buf, &size); + ret = efi_deserialize_load_option(&lo, buf, &size); + if (ret != EFI_SUCCESS) { + log_err("Invalid load option %ls\n", boot_var); + goto out; + } if (lo.attributes & LOAD_OPTION_ACTIVE) { efi_dp_split_file_path(lo.file_path, device_dp, &file_dp); @@ -871,6 +875,7 @@ static efi_status_t get_dp_device(u16 *boot_var, ret = EFI_NOT_FOUND; } +out: free(buf); return ret; diff --git a/lib/efi_loader/efi_gop.c b/lib/efi_loader/efi_gop.c index 9403e09691e..ae44d140289 100644 --- a/lib/efi_loader/efi_gop.c +++ b/lib/efi_loader/efi_gop.c @@ -471,7 +471,7 @@ efi_status_t efi_gop_register(void) { struct efi_gop_obj *gopobj; u32 bpix, format, col, row; - u64 fb_base, fb_size; + u64 fb_size; efi_status_t ret; struct udevice *vdev; struct video_priv *priv; @@ -490,7 +490,6 @@ efi_status_t efi_gop_register(void) row = video_get_ysize(vdev); plat = dev_get_uclass_plat(vdev); - fb_base = IS_ENABLED(CONFIG_VIDEO_COPY) ? plat->copy_base : plat->base; fb_size = plat->size; switch (bpix) { @@ -528,7 +527,7 @@ efi_status_t efi_gop_register(void) gopobj->mode.info = &gopobj->info; gopobj->mode.info_size = sizeof(gopobj->info); - gopobj->mode.fb_base = fb_base; + gopobj->mode.fb_base = (uintptr_t)priv->fb; gopobj->mode.fb_size = fb_size; gopobj->info.version = 0; @@ -553,7 +552,7 @@ efi_status_t efi_gop_register(void) } gopobj->info.pixels_per_scanline = col; gopobj->bpix = bpix; - gopobj->fb = map_sysmem(fb_base, fb_size); + gopobj->fb = priv->fb; gopobj->vdev = vdev; return EFI_SUCCESS; |
