[RFC 0/7] efi_loader: move device-path node generation to DM
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Sun Mar 26 19:27:36 CEST 2023
UEFI device-paths are used in the EFI world to depict the parent-child
relationship between devices. No two device can have the same device-path.
Currently we fail to generate unique devices-paths.
The nodes in UEFI device paths should match the devices on the path
to the DM root node.
I have started drafting a solution. Several block device classes still need
to be handled (IDE, NVMe, EFI, VirtIO). Also handling of PCI addresses is
missing. But this series contains enough to see the direction of
development.
Heinrich Schuchardt (7):
dm: add get_dp_node() to struct uclass_driver
dm: implement uclass_get_dp_node()
dm: implement get_dp_node for block devices
dm: implement get_dp_node for USB hub devices
dm: implement get_dp_node for USB mass storage devices
dm: implement get_dp_node for MMC devices
efi_loader: use uclass_get_dp_node
common/usb_hub.c | 33 ++++
common/usb_storage.c | 33 ++++
drivers/block/blk-uclass.c | 56 ++++++
drivers/core/uclass.c | 26 +++
drivers/mmc/mmc-uclass.c | 25 +++
include/dm/uclass.h | 13 ++
include/efi_loader.h | 7 +
lib/efi_loader/efi_device_path.c | 325 +++----------------------------
8 files changed, 221 insertions(+), 297 deletions(-)
--
2.39.2
More information about the U-Boot
mailing list