[U-Boot] [PATCH 1/1] efi_loader: use const efi_guid_t * for variable services
Heinrich Schuchardt
xypron.glpk at gmx.de
Sun Dec 30 19:53:51 UTC 2018
The runtime variable services never change GUIDs. So we should declare
the GUID parameters as constant.
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
include/efi_api.h | 8 +++++---
include/efi_loader.h | 14 +++++++-------
lib/efi_loader/efi_variable.c | 16 ++++++++--------
lib/efi_selftest/efi_selftest_variables.c | 4 ++--
4 files changed, 22 insertions(+), 20 deletions(-)
diff --git a/include/efi_api.h b/include/efi_api.h
index 0e5c6e92d0..30deafcbac 100644
--- a/include/efi_api.h
+++ b/include/efi_api.h
@@ -221,13 +221,15 @@ struct efi_runtime_services {
struct efi_mem_desc *virtmap);
efi_status_t (*convert_pointer)(unsigned long dbg, void **address);
efi_status_t (EFIAPI *get_variable)(u16 *variable_name,
- efi_guid_t *vendor, u32 *attributes,
+ const efi_guid_t *vendor,
+ u32 *attributes,
efi_uintn_t *data_size, void *data);
efi_status_t (EFIAPI *get_next_variable_name)(
efi_uintn_t *variable_name_size,
- u16 *variable_name, efi_guid_t *vendor);
+ u16 *variable_name, const efi_guid_t *vendor);
efi_status_t (EFIAPI *set_variable)(u16 *variable_name,
- efi_guid_t *vendor, u32 attributes,
+ const efi_guid_t *vendor,
+ u32 attributes,
efi_uintn_t data_size, void *data);
efi_status_t (EFIAPI *get_next_high_mono_count)(
uint32_t *high_count);
diff --git a/include/efi_loader.h b/include/efi_loader.h
index bd76078e94..84c8ce15d4 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -510,15 +510,15 @@ efi_status_t EFIAPI efi_selftest(efi_handle_t image_handle,
struct efi_system_table *systab);
#endif
-efi_status_t EFIAPI efi_get_variable(u16 *variable_name, efi_guid_t *vendor,
- u32 *attributes, efi_uintn_t *data_size,
- void *data);
+efi_status_t EFIAPI efi_get_variable(u16 *variable_name,
+ const efi_guid_t *vendor, u32 *attributes,
+ efi_uintn_t *data_size, void *data);
efi_status_t EFIAPI efi_get_next_variable_name(efi_uintn_t *variable_name_size,
u16 *variable_name,
- efi_guid_t *vendor);
-efi_status_t EFIAPI efi_set_variable(u16 *variable_name, efi_guid_t *vendor,
- u32 attributes, efi_uintn_t data_size,
- void *data);
+ const efi_guid_t *vendor);
+efi_status_t EFIAPI efi_set_variable(u16 *variable_name,
+ const efi_guid_t *vendor, u32 attributes,
+ efi_uintn_t data_size, void *data);
/**
* struct efi_load_option - EFI load option
diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c
index 19d9cb865f..4e6a04e614 100644
--- a/lib/efi_loader/efi_variable.c
+++ b/lib/efi_loader/efi_variable.c
@@ -99,7 +99,7 @@ static char *mem2hex(char *hexstr, const u8 *mem, int count)
}
static efi_status_t efi_to_native(char **native, const u16 *variable_name,
- efi_guid_t *vendor)
+ const efi_guid_t *vendor)
{
size_t len;
char *pos;
@@ -163,9 +163,9 @@ static const char *parse_attr(const char *str, u32 *attrp)
}
/* http://wiki.phoenix.com/wiki/index.php/EFI_RUNTIME_SERVICES#GetVariable.28.29 */
-efi_status_t EFIAPI efi_get_variable(u16 *variable_name, efi_guid_t *vendor,
- u32 *attributes, efi_uintn_t *data_size,
- void *data)
+efi_status_t EFIAPI efi_get_variable(u16 *variable_name,
+ const efi_guid_t *vendor, u32 *attributes,
+ efi_uintn_t *data_size, void *data)
{
char *native_name;
efi_status_t ret;
@@ -244,7 +244,7 @@ efi_status_t EFIAPI efi_get_variable(u16 *variable_name, efi_guid_t *vendor,
/* http://wiki.phoenix.com/wiki/index.php/EFI_RUNTIME_SERVICES#GetNextVariableName.28.29 */
efi_status_t EFIAPI efi_get_next_variable_name(efi_uintn_t *variable_name_size,
u16 *variable_name,
- efi_guid_t *vendor)
+ const efi_guid_t *vendor)
{
EFI_ENTRY("%p \"%ls\" %pUl", variable_name_size, variable_name, vendor);
@@ -252,9 +252,9 @@ efi_status_t EFIAPI efi_get_next_variable_name(efi_uintn_t *variable_name_size,
}
/* http://wiki.phoenix.com/wiki/index.php/EFI_RUNTIME_SERVICES#SetVariable.28.29 */
-efi_status_t EFIAPI efi_set_variable(u16 *variable_name, efi_guid_t *vendor,
- u32 attributes, efi_uintn_t data_size,
- void *data)
+efi_status_t EFIAPI efi_set_variable(u16 *variable_name,
+ const efi_guid_t *vendor, u32 attributes,
+ efi_uintn_t data_size, void *data)
{
char *native_name = NULL, *val = NULL, *s;
efi_status_t ret = EFI_SUCCESS;
diff --git a/lib/efi_selftest/efi_selftest_variables.c b/lib/efi_selftest/efi_selftest_variables.c
index e4c389a872..ffc8cad329 100644
--- a/lib/efi_selftest/efi_selftest_variables.c
+++ b/lib/efi_selftest/efi_selftest_variables.c
@@ -15,10 +15,10 @@
static struct efi_boot_services *boottime;
static struct efi_runtime_services *runtime;
-static efi_guid_t guid_vendor0 =
+static const efi_guid_t guid_vendor0 =
EFI_GUID(0x67029eb5, 0x0af2, 0xf6b1,
0xda, 0x53, 0xfc, 0xb5, 0x66, 0xdd, 0x1c, 0xe6);
-static efi_guid_t guid_vendor1 =
+static const efi_guid_t guid_vendor1 =
EFI_GUID(0xff629290, 0x1fc1, 0xd73f,
0x8f, 0xb1, 0x32, 0xf9, 0x0c, 0xa0, 0x42, 0xea);
--
2.19.2
More information about the U-Boot
mailing list