Enable this command for sandbox and the EFI app. Recent work removed the if_type member. Update the code to use the new method for obtaining the interface type.
Use hex so that large partition numbers (>=10) work correctly. Signed-off-by: Simon Glass <[email protected]> --- cmd/Kconfig | 1 + cmd/part_find.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cmd/Kconfig b/cmd/Kconfig index 8fc76778d87..c8ca55194c0 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1552,6 +1552,7 @@ config CMD_PART config CMD_PART_FIND bool "part_find" depends on PARTITIONS + default y if SANDBOX || EFI_APP select HAVE_BLOCK_DEVICE select PARTITION_UUIDS select PARTITION_TYPE_GUID diff --git a/cmd/part_find.c b/cmd/part_find.c index 8c071d3c374..38919935641 100644 --- a/cmd/part_find.c +++ b/cmd/part_find.c @@ -107,7 +107,7 @@ static int part_find(int argc, char *const argv[]) &loader_part_no)) { char env[256]; - ret = snprintf(env, sizeof(env), "%s %d:%d", blk_get_if_type_name(desc->if_type), desc->devnum, loader_part_no); + ret = snprintf(env, sizeof(env), "%s %x:%x", blk_get_if_type_name(desc->if_type), desc->devnum, loader_part_no); if (ret < 0 || ret == sizeof(env)) return CMD_RET_FAILURE; if (env_set("target_part", env)) @@ -123,7 +123,7 @@ static int part_find(int argc, char *const argv[]) break; if (strcasecmp(argv[1], info.type_guid) == 0) { char env[256]; - ret = snprintf(env, sizeof(env), "%s %d:%d", blk_get_if_type_name(desc->if_type), desc->devnum, i); + ret = snprintf(env, sizeof(env), "%s %x:%x", blk_get_uclass_name(desc->uclass_id), desc->devnum, i); if (ret < 0 || ret == sizeof(env)) return CMD_RET_FAILURE; env_set("target_part", env); -- 2.34.1

