Enhances the process for identifying disk images within the EFI boot manager. Utilize part_driver_lookup_type() to verify the validity of a downloaded file as a disk image, rather than depending on file extensions.
part_driver_lookup_type() is now used in the prepare_loaded_image() function in the EFI boot manager to detect partitions on a block device created from a downloaded image. This allows the boot manager to boot from any disk image that can be recognized by a partition driver, not just ISO and IMG images. Update prepare_loaded_image() to create the ramdisk block device internally, obtain the blk_desc and use part_driver_lookup_type() to detect a valid partition table. In try_load_from_uri_path(), try prepare_loaded_image() first to detect disk images, and fall back to PE-COFF detection only if that fails. Include part.h in the EFI loader and export part_driver_lookup_type and add its prototype and documentation in include/part.h. This makes the partition-driver lookup available to other code paths that need to detect partition tables on a block descriptor. --- Changes in v8: - Cleanup part_driver_lookup_type history after being removed and added again. - Passing CI: https://github.com/u-boot/u-boot/pull/816 - v7 link: https://lore.kernel.org/u-boot/[email protected]/ - v6 link: https://lore.kernel.org/u-boot/[email protected]/ - v5 link: https://lore.kernel.org/u-boot/[email protected]/ - v4 link: https://lore.kernel.org/u-boot/[email protected]/ - v3 link: https://lore.kernel.org/u-boot/[email protected]/ - v2 link: https://lore.kernel.org/u-boot/[email protected]/ - v1 link: https://lore.kernel.org/u-boot/[email protected]/ Signed-off-by: Javier Tia <[email protected]> --- Javier Tia (2): part: Export part_driver_lookup_type for external use efi_loader: Improve disk image detection in efi_bootmgr disk/part.c | 18 +--------------- include/part.h | 21 +++++++++++++++++++ lib/efi_loader/efi_bootmgr.c | 49 +++++++++++++++++++++++++++++++------------- 3 files changed, 57 insertions(+), 31 deletions(-) --- base-commit: 0ee639ff5af33342c6c2f4579e210d707abc9bc2 change-id: 20251008-detect_disk_image_type-4f04a2a8d989 Best regards, -- Javier Tia <[email protected]>

