Lines Matching refs:fw

78 ssize_t qcom_mdt_get_size(const struct firmware *fw)  in qcom_mdt_get_size()  argument
87 ehdr = (struct elf32_hdr *)fw->data; in qcom_mdt_get_size()
126 void *qcom_mdt_read_metadata(const struct firmware *fw, size_t *data_len, in qcom_mdt_read_metadata() argument
139 ehdr = (struct elf32_hdr *)fw->data; in qcom_mdt_read_metadata()
168 memcpy(data, fw->data, ehdr_size); in qcom_mdt_read_metadata()
170 if (ehdr_size + hash_size == fw->size) { in qcom_mdt_read_metadata()
173 memcpy(data + ehdr_size, fw->data + hash_offset, hash_size); in qcom_mdt_read_metadata()
174 } else if (phdrs[hash_segment].p_offset + hash_size <= fw->size) { in qcom_mdt_read_metadata()
177 memcpy(data + ehdr_size, fw->data + hash_offset, hash_size); in qcom_mdt_read_metadata()
204 int qcom_mdt_pas_init(struct device *dev, const struct firmware *fw, in qcom_mdt_pas_init() argument
219 ehdr = (struct elf32_hdr *)fw->data; in qcom_mdt_pas_init()
238 metadata = qcom_mdt_read_metadata(fw, &metadata_len, fw_name, dev); in qcom_mdt_pas_init()
267 static bool qcom_mdt_bins_are_split(const struct firmware *fw, const char *fw_name) in qcom_mdt_bins_are_split() argument
274 ehdr = (struct elf32_hdr *)fw->data; in qcom_mdt_bins_are_split()
288 if (seg_start > fw->size || seg_end > fw->size) in qcom_mdt_bins_are_split()
295 static int __qcom_mdt_load(struct device *dev, const struct firmware *fw, in __qcom_mdt_load() argument
312 if (!fw || !mem_region || !mem_phys || !mem_size) in __qcom_mdt_load()
315 is_split = qcom_mdt_bins_are_split(fw, fw_name); in __qcom_mdt_load()
316 ehdr = (struct elf32_hdr *)fw->data; in __qcom_mdt_load()
371 if (phdr->p_offset + phdr->p_filesz > fw->size) { in __qcom_mdt_load()
378 memcpy(ptr, fw->data + phdr->p_offset, phdr->p_filesz); in __qcom_mdt_load()
409 int qcom_mdt_load(struct device *dev, const struct firmware *fw, in qcom_mdt_load() argument
416 ret = qcom_mdt_pas_init(dev, fw, firmware, pas_id, mem_phys, NULL); in qcom_mdt_load()
420 return __qcom_mdt_load(dev, fw, firmware, pas_id, mem_region, mem_phys, in qcom_mdt_load()
438 int qcom_mdt_load_no_init(struct device *dev, const struct firmware *fw, in qcom_mdt_load_no_init() argument
443 return __qcom_mdt_load(dev, fw, firmware, pas_id, mem_region, mem_phys, in qcom_mdt_load_no_init()