diff options
author | Tom Rini | 2024-07-16 17:09:36 -0600 |
---|---|---|
committer | Tom Rini | 2024-07-18 07:40:30 -0600 |
commit | 0c7c9494d61bd6c2284a57e29ffd3729e5c9d8d3 (patch) | |
tree | 6d9edb79ad5208d35000070e71409bc0d9bfd203 | |
parent | defe30a78b76700d05745f438b635c400dbf8fe2 (diff) | |
parent | 1b1b1e7f6038047d425a75756333cadd037b3f64 (diff) |
Merge patch series "Respin bootstd cros patch into a series of two"
Vincent Stehlé <vincent.stehle@arm.com> says:
Hi,
This is a respin of this patch [1] after discussion [2]. Thanks to
Simon and Heinrich for their reviews.
To use the guidcmp() function, as suggested by Heinrich, we need to
make it available to bootmeth_cros.c and I think that the cleanest way
to do that is (arguably) to move the guid helper functions to efi.h
near the efi_guid_t definition; this is why the original patch has now
become a series of two patches.
The alternative would be to include efi_loader.h from bootmeth_cros.c
but I think this does not sound "right". If this is in fact the
preferred approach just let me know and I will respin.
There is no difference in the sandbox binaries before/after this
series on Arm and on PC, and all the tests I have run on the sandbox
are unchanged.
-rw-r--r-- | boot/bootmeth_cros.c | 2 | ||||
-rw-r--r-- | include/efi.h | 10 | ||||
-rw-r--r-- | include/efi_loader.h | 10 |
3 files changed, 11 insertions, 11 deletions
diff --git a/boot/bootmeth_cros.c b/boot/bootmeth_cros.c index 1d5fd8b193d..676f550ca25 100644 --- a/boot/bootmeth_cros.c +++ b/boot/bootmeth_cros.c @@ -163,7 +163,7 @@ static int scan_part(struct udevice *blk, int partnum, 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 */ diff --git a/include/efi.h b/include/efi.h index c3c4b93f860..d5af2139946 100644 --- a/include/efi.h +++ b/include/efi.h @@ -78,6 +78,16 @@ typedef struct { u8 b[16]; } efi_guid_t __attribute__((aligned(4))); +static inline int guidcmp(const void *g1, const void *g2) +{ + return memcmp(g1, g2, sizeof(efi_guid_t)); +} + +static inline void *guidcpy(void *dst, const void *src) +{ + return memcpy(dst, src, sizeof(efi_guid_t)); +} + #define EFI_BITS_PER_LONG (sizeof(long) * 8) /* Bit mask for EFI status code with error */ diff --git a/include/efi_loader.h b/include/efi_loader.h index 6c993e1a694..ca8fc0820f6 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h @@ -21,16 +21,6 @@ struct blk_desc; struct jmp_buf_data; -static inline int guidcmp(const void *g1, const void *g2) -{ - return memcmp(g1, g2, sizeof(efi_guid_t)); -} - -static inline void *guidcpy(void *dst, const void *src) -{ - return memcpy(dst, src, sizeof(efi_guid_t)); -} - #if CONFIG_IS_ENABLED(EFI_LOADER) /** |