mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-16 01:44:34 +00:00
bootstd: cros: store partition type in an efi_guid_t
The scan_part() function uses a struct uuid to store the little-endian partition type GUID, but this structure should be used only to contain a big-endian UUID. Use an efi_guid_t instead and use guidcmp() for the comparison. Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com>
This commit is contained in:
parent
0a1bf35f5f
commit
1b1b1e7f60
1 changed files with 3 additions and 3 deletions
|
@ -147,7 +147,7 @@ static int scan_part(struct udevice *blk, int partnum,
|
|||
{
|
||||
struct blk_desc *desc = dev_get_uclass_plat(blk);
|
||||
struct vb2_keyblock *hdr;
|
||||
struct uuid type;
|
||||
efi_guid_t type;
|
||||
ulong num_blks;
|
||||
int ret;
|
||||
|
||||
|
@ -160,10 +160,10 @@ static int scan_part(struct udevice *blk, int partnum,
|
|||
|
||||
/* Check for kernel partition type */
|
||||
log_debug("part %x: type=%s\n", partnum, info->type_guid);
|
||||
if (uuid_str_to_bin(info->type_guid, (u8 *)&type, UUID_STR_FORMAT_GUID))
|
||||
if (uuid_str_to_bin(info->type_guid, type.b, UUID_STR_FORMAT_GUID))
|
||||
return log_msg_ret("typ", -EINVAL);
|
||||
|
||||
if (memcmp(&cros_kern_type, &type, sizeof(type)))
|
||||
if (guidcmp(&cros_kern_type, &type))
|
||||
return log_msg_ret("typ", -ENOEXEC);
|
||||
|
||||
/* Make a buffer for the header information */
|
||||
|
|
Loading…
Add table
Reference in a new issue