Lines Matching +full:data +full:- +full:out

1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
6 #include "iwl-drv.h"
8 #include "iwl-prph.h"
9 #include "iwl-io.h"
22 void *data; in iwl_uefi_get_pnvm() local
30 return ERR_PTR(-ENOMEM); in iwl_uefi_get_pnvm()
32 memcpy(&pnvm_efivar->var.VariableName, IWL_UEFI_OEM_PNVM_NAME, in iwl_uefi_get_pnvm()
34 pnvm_efivar->var.VendorGuid = IWL_EFI_VAR_GUID; in iwl_uefi_get_pnvm()
43 data = kmalloc(package_size, GFP_KERNEL); in iwl_uefi_get_pnvm()
44 if (!data) { in iwl_uefi_get_pnvm()
45 data = ERR_PTR(-ENOMEM); in iwl_uefi_get_pnvm()
46 goto out; in iwl_uefi_get_pnvm()
49 err = efivar_entry_get(pnvm_efivar, NULL, &package_size, data); in iwl_uefi_get_pnvm()
54 kfree(data); in iwl_uefi_get_pnvm()
55 data = ERR_PTR(err); in iwl_uefi_get_pnvm()
56 goto out; in iwl_uefi_get_pnvm()
62 out: in iwl_uefi_get_pnvm()
65 return data; in iwl_uefi_get_pnvm()
69 const u8 *data, size_t len) in iwl_uefi_reduce_power_section() argument
80 len -= sizeof(*tlv); in iwl_uefi_reduce_power_section()
81 tlv = (void *)data; in iwl_uefi_reduce_power_section()
83 tlv_len = le32_to_cpu(tlv->length); in iwl_uefi_reduce_power_section()
84 tlv_type = le32_to_cpu(tlv->type); in iwl_uefi_reduce_power_section()
89 reduce_power_data = ERR_PTR(-EINVAL); in iwl_uefi_reduce_power_section()
90 goto out; in iwl_uefi_reduce_power_section()
93 data += sizeof(*tlv); in iwl_uefi_reduce_power_section()
101 IWL_DEBUG_FW(trans, "Adding data (size %d)\n", tlv_len); in iwl_uefi_reduce_power_section()
108 reduce_power_data = ERR_PTR(-ENOMEM); in iwl_uefi_reduce_power_section()
109 goto out; in iwl_uefi_reduce_power_section()
114 memcpy(reduce_power_data + size, data, tlv_len); in iwl_uefi_reduce_power_section()
130 len -= ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_section()
131 data += ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_section()
137 reduce_power_data = ERR_PTR(-ENOENT); in iwl_uefi_reduce_power_section()
138 goto out; in iwl_uefi_reduce_power_section()
143 out: in iwl_uefi_reduce_power_section()
148 const u8 *data, size_t len) in iwl_uefi_reduce_power_parse() argument
153 IWL_DEBUG_FW(trans, "Parsing REDUCE_POWER data\n"); in iwl_uefi_reduce_power_parse()
158 len -= sizeof(*tlv); in iwl_uefi_reduce_power_parse()
159 tlv = (void *)data; in iwl_uefi_reduce_power_parse()
161 tlv_len = le32_to_cpu(tlv->length); in iwl_uefi_reduce_power_parse()
162 tlv_type = le32_to_cpu(tlv->type); in iwl_uefi_reduce_power_parse()
167 return ERR_PTR(-EINVAL); in iwl_uefi_reduce_power_parse()
172 (void *)(data + sizeof(*tlv)); in iwl_uefi_reduce_power_parse()
178 le32_to_cpu(sku_id->data[0]), in iwl_uefi_reduce_power_parse()
179 le32_to_cpu(sku_id->data[1]), in iwl_uefi_reduce_power_parse()
180 le32_to_cpu(sku_id->data[2])); in iwl_uefi_reduce_power_parse()
182 data += sizeof(*tlv) + ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_parse()
183 len -= ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_parse()
185 if (trans->sku_id[0] == le32_to_cpu(sku_id->data[0]) && in iwl_uefi_reduce_power_parse()
186 trans->sku_id[1] == le32_to_cpu(sku_id->data[1]) && in iwl_uefi_reduce_power_parse()
187 trans->sku_id[2] == le32_to_cpu(sku_id->data[2])) { in iwl_uefi_reduce_power_parse()
189 data, in iwl_uefi_reduce_power_parse()
197 data += sizeof(*tlv) + ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_parse()
198 len -= ALIGN(tlv_len, 4); in iwl_uefi_reduce_power_parse()
202 return ERR_PTR(-ENOENT); in iwl_uefi_reduce_power_parse()
209 void *data = NULL; in iwl_uefi_get_reduced_power() local
217 return ERR_PTR(-ENOMEM); in iwl_uefi_get_reduced_power()
219 memcpy(&reduce_power_efivar->var.VariableName, IWL_UEFI_REDUCED_POWER_NAME, in iwl_uefi_get_reduced_power()
221 reduce_power_efivar->var.VendorGuid = IWL_EFI_VAR_GUID; in iwl_uefi_get_reduced_power()
232 package = ERR_PTR(-ENOMEM); in iwl_uefi_get_reduced_power()
233 goto out; in iwl_uefi_get_reduced_power()
242 data = ERR_PTR(err); in iwl_uefi_get_reduced_power()
243 goto out; in iwl_uefi_get_reduced_power()
251 package->rev, package->total_size, package->n_skus); in iwl_uefi_get_reduced_power()
253 data = iwl_uefi_reduce_power_parse(trans, package->data, in iwl_uefi_get_reduced_power()
254 *len - sizeof(*package)); in iwl_uefi_get_reduced_power()
258 out: in iwl_uefi_get_reduced_power()
261 return data; in iwl_uefi_get_reduced_power()