Lines Matching refs:head

73 static int is_binary_header_invalid(struct mcu_image_head *head,  in is_binary_header_invalid()  argument
77 if ((head->image_size == 0) || in is_binary_header_invalid()
78 (head->image_size > length) || in is_binary_header_invalid()
79 (head->secs_num > MCU_SECTION_MAX) || in is_binary_header_invalid()
80 (head->secs_num == 0)) in is_binary_header_invalid()
87 struct mcu_image_head *head) in is_binary_section_invalid() argument
91 if ((sec->serial >= head->secs_num) || in is_binary_section_invalid()
92 (sec->src_offset + sec->size > head->image_size)) in is_binary_section_invalid()
160 struct mcu_image_head *head; in hisi_mcu_load_image() local
163 head = (struct mcu_image_head *)image_base; in hisi_mcu_load_image()
164 if (is_binary_header_invalid(head, image_size)) { in hisi_mcu_load_image()
165 ERROR("Invalid %s image header.\n", head->time_stamp); in hisi_mcu_load_image()
169 buf = (char *)head; in hisi_mcu_load_image()
170 for (i = 0; i < head->secs_num; i++) { in hisi_mcu_load_image()
175 if (is_binary_section_invalid(&head->secs[i], head)) { in hisi_mcu_load_image()
181 if (head->secs[i].load_attr != MCU_IMAGE_SEC_LOAD_STATIC) in hisi_mcu_load_image()
185 src = (int *)(intptr_t)(buf + head->secs[i].src_offset); in hisi_mcu_load_image()
186 dst = (int *)(intptr_t)mcu2ap_addr(head->secs[i].dst_offset); in hisi_mcu_load_image()
188 memcpy((void *)dst, (void *)src, head->secs[i].size); in hisi_mcu_load_image()
195 INFO("%s: size = %d\n", __func__, head->secs[i].size); in hisi_mcu_load_image()