Lines Matching +full:entry +full:- +full:name
1 // SPDX-License-Identifier: GPL-2.0
4 * Copyright (c) 2013-2016, Intel Corporation.
24 static int efibc_set_variable(const char *name, const char *value) in efibc_set_variable() argument
28 struct efivar_entry *entry; in efibc_set_variable() local
31 if (size > sizeof(entry->var.Data)) { in efibc_set_variable()
32 pr_err("value is too large (%zu bytes) for '%s' EFI variable\n", size, name); in efibc_set_variable()
33 return -EINVAL; in efibc_set_variable()
36 entry = kmalloc(sizeof(*entry), GFP_KERNEL); in efibc_set_variable()
37 if (!entry) { in efibc_set_variable()
38 pr_err("failed to allocate efivar entry for '%s' EFI variable\n", name); in efibc_set_variable()
39 return -ENOMEM; in efibc_set_variable()
42 efibc_str_to_str16(name, entry->var.VariableName); in efibc_set_variable()
43 efibc_str_to_str16(value, (efi_char16_t *)entry->var.Data); in efibc_set_variable()
44 memcpy(&entry->var.VendorGuid, &guid, sizeof(guid)); in efibc_set_variable()
46 ret = efivar_entry_set_safe(entry->var.VariableName, in efibc_set_variable()
47 entry->var.VendorGuid, in efibc_set_variable()
51 false, size, entry->var.Data); in efibc_set_variable()
55 name, ret); in efibc_set_variable()
57 kfree(entry); in efibc_set_variable()
88 return -ENODEV; in efibc_init()