Lines Matching refs:e

109 	struct image_element *e;  in update_cleanup()  local
113 e = list_entry(node, struct image_element, node); in update_cleanup()
114 free(e); in update_cleanup()
134 struct image_element *e; in update_populate_image() local
159 e = malloc(sizeof(*e)); in update_populate_image()
160 if (!e) in update_populate_image()
163 e->remain_tries = MAX_REMAIN_TRIES; in update_populate_image()
164 e->buf = hdr->shared_buf; in update_populate_image()
165 e->size = fdtdec_get_uint(fit, noffset, "data-size", -ENODATA); in update_populate_image()
166 if (e->size == -ENODATA) in update_populate_image()
170 strcpy(e->file_name, name); in update_populate_image()
171 strcat(e->file_name, ".part.img"); in update_populate_image()
180 strlcpy(e->part_name, noseq_name, strlen(noseq_name) - strlen(dp)); in update_populate_image()
181 ret = part_get_info_by_name_strict(dev_desc, e->part_name, &part); in update_populate_image()
183 TFTPUD_E("No partition '%s'\n", e->part_name); in update_populate_image()
188 if (!strcmp(last_part_name, e->part_name)) in update_populate_image()
193 e->lba_start = part.start; in update_populate_image()
194 e->lba_offset = lba_offset; in update_populate_image()
195 e->lba_cnt = DIV_ROUND_UP(e->size, 512); in update_populate_image()
196 e->hash_noffset = fdt_subnode_offset(fit, noffset, "hash"); in update_populate_image()
197 if (e->hash_noffset < 0) in update_populate_image()
198 return e->hash_noffset; in update_populate_image()
200 list_add_tail(&e->node, &hdr->images); in update_populate_image()
201 last_part_name = e->part_name; in update_populate_image()
204 printf(" file: %s\n", e->file_name); in update_populate_image()
205 printf(" partition: %s\n", e->part_name); in update_populate_image()
206 printf(" buf: 0x%08lx\n", (ulong)e->buf); in update_populate_image()
207 printf(" size: 0x%08x\n", e->size); in update_populate_image()
208 printf(" lba_start: 0x%08x\n", e->lba_start); in update_populate_image()
209 printf(" lba_offset: 0x%08x\n", e->lba_offset); in update_populate_image()
210 printf(" lba_cnt: 0x%08x\n", e->lba_cnt); in update_populate_image()
211 printf(" remain_tries: %d\n", e->remain_tries); in update_populate_image()
212 printf(" hash_noffset: 0x%08x\n\n", e->hash_noffset); in update_populate_image()
427 struct image_element *e) in update_ignore_image() argument
433 slot_suffix = (char *)e->part_name + strlen(e->part_name) - 2; in update_ignore_image()
438 if (hdr->spec_partition && strcmp(e->part_name, hdr->spec_partition)) in update_ignore_image()
444 static int download_image(void *fit, struct image_element *e) in download_image() argument
453 e->file_name, (ulong)e->buf); in download_image()
455 ret = tftp_download(e->buf, e->file_name); in download_image()
466 if (filesize != e->size) { in download_image()
467 TFTPUD_E("Expected filesize 0x%08lx != 0x%08x\n", filesize, e->size); in download_image()
473 ret = fit_image_check_hash(fit, e->hash_noffset, e->buf, e->size, &msg); in download_image()
479 static int update_flash_image(struct image_element *e) in update_flash_image() argument
492 e->part_name, e->lba_offset, e->lba_cnt); in update_flash_image()
496 ret = blk_dwrite(dev_desc, e->lba_start + e->lba_offset, in update_flash_image()
497 e->lba_cnt, (void *)e->buf); in update_flash_image()
500 ret = blk_dwrite(dev_desc, e->lba_start + e->lba_offset, in update_flash_image()
501 e->lba_cnt, (void *)e->buf); in update_flash_image()
504 if (ret != e->lba_cnt) in update_flash_image()
512 static int update_download_image(void *fit, struct image_element *e) in update_download_image() argument
516 for (i = 0; i < e->remain_tries; i++) { in update_download_image()
517 ret = download_image(fit, e); in update_download_image()
530 struct image_element *e; in update_write_gpt() local
550 e = malloc(sizeof(*e)); in update_write_gpt()
551 if (!e) in update_write_gpt()
554 e->remain_tries = MAX_REMAIN_TRIES; in update_write_gpt()
555 e->buf = hdr->shared_buf; in update_write_gpt()
556 e->size = fdtdec_get_uint(fit, noffset, "data-size", -ENODATA); in update_write_gpt()
557 if (e->size == -ENODATA) { in update_write_gpt()
562 strcpy(e->file_name, name); in update_write_gpt()
563 e->hash_noffset = fdt_subnode_offset(fit, noffset, "hash"); in update_write_gpt()
564 if (e->hash_noffset < 0) in update_write_gpt()
565 return e->hash_noffset; in update_write_gpt()
567 printf("\n# %s:\n", e->file_name); in update_write_gpt()
568 printf(" buf: 0x%08lx\n", (ulong)e->buf); in update_write_gpt()
569 printf(" size: 0x%08x\n", e->size); in update_write_gpt()
570 printf(" remain_tries: %d\n", e->remain_tries); in update_write_gpt()
571 printf(" hash_noffset: 0x%08x\n\n", e->hash_noffset); in update_write_gpt()
574 ret = update_download_image(fit, e); in update_write_gpt()
577 e->file_name, ret); in update_write_gpt()
582 gpt_parts = (char *)e->buf; in update_write_gpt()
583 p = gpt_parts + e->size - 1; in update_write_gpt()
604 free(e); in update_write_gpt()
614 struct image_element *e; in do_tftp_full_update() local
688 e = list_entry(node, struct image_element, node); in do_tftp_full_update()
692 if (update_ignore_image(fit, hdr, e)) in do_tftp_full_update()
695 ret = update_download_image(fit, e); in do_tftp_full_update()
698 e->file_name, ret); in do_tftp_full_update()
702 ret = update_flash_image(e); in do_tftp_full_update()
705 e->file_name, ret); in do_tftp_full_update()