efi_loader: move udevice pointer into struct efi_object
authorMasahisa Kojima <masahisa.kojima@linaro.org>
Fri, 22 Jul 2022 02:39:10 +0000 (11:39 +0900)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sat, 13 Aug 2022 09:09:49 +0000 (11:09 +0200)
commitee576662947330748b4cca1890d0e1d826d870f4
tree2e37da6b72602d31c044db1670d4068caf7d539b
parente7496e57a045af70fd453f25c827f7c0522a3a71
efi_loader: move udevice pointer into struct efi_object

This is a preparation patch to provide the unified method
to access udevice pointer associated with the EFI handle
by adding udevice pointer into struct efi_object.
The patch also introduces a helper function efi_link_dev()
to link the udevice and EFI handle.

The EFI handles of both EFI block io driver implemented in
lib/efi_loader/efi_disk.c and EFI block io driver implemented
as EFI payload can access the udevice pointer in the struct efi_object.
We can use this udevice pointer to get the U-Boot friendly
block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle.

Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
include/efi_loader.h
lib/efi_driver/efi_block_device.c
lib/efi_loader/efi_disk.c
lib/efi_loader/efi_helper.c