part: Add accessors for struct disk_partition type_uuid

This field is only present when a CONFIG is set. To avoid annoying #ifdefs
in the source code, add accessors. Update all code to use it.

Note that the accessor is optional. It can be omitted if it is known that
the option is enabled.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2023-08-24 13:55:32 -06:00
committed by Tom Rini
parent c5f1d005f5
commit bcd645428c
3 changed files with 35 additions and 10 deletions

View File

@@ -370,9 +370,7 @@ int part_get_info_by_type(struct blk_desc *desc, int part, int part_type,
if (blk_enabled()) {
/* The common case is no UUID support */
disk_partition_clr_uuid(info);
#ifdef CONFIG_PARTITION_TYPE_GUID
info->type_guid[0] = 0;
#endif
disk_partition_clr_type_guid(info);
if (part_type == PART_TYPE_UNKNOWN) {
drv = part_driver_lookup_type(desc);
@@ -415,9 +413,7 @@ int part_get_info_whole_disk(struct blk_desc *desc,
strcpy((char *)info->type, BOOT_PART_TYPE);
strcpy((char *)info->name, "Whole Disk");
disk_partition_clr_uuid(info);
#ifdef CONFIG_PARTITION_TYPE_GUID
info->type_guid[0] = 0;
#endif
disk_partition_clr_type_guid(info);
return 0;
}

View File

@@ -294,10 +294,11 @@ int part_get_info_efi(struct blk_desc *desc, int part,
(char *)disk_partition_uuid(info),
UUID_STR_FORMAT_GUID);
}
#ifdef CONFIG_PARTITION_TYPE_GUID
uuid_bin_to_str(gpt_pte[part - 1].partition_type_guid.b,
info->type_guid, UUID_STR_FORMAT_GUID);
#endif
if (IS_ENABLED(CONFIG_PARTITION_TYPE_GUID)) {
uuid_bin_to_str(gpt_pte[part - 1].partition_type_guid.b,
(char *)disk_partition_type_uuid(info),
UUID_STR_FORMAT_GUID);
}
log_debug("start 0x" LBAF ", size 0x" LBAF ", name %s\n", info->start,
info->size, info->name);