Lines Matching refs:image
105 void pt_image_init(struct pt_image *image, const char *name) in pt_image_init() argument
107 if (!image) in pt_image_init()
110 memset(image, 0, sizeof(*image)); in pt_image_init()
112 image->name = dupstr(name); in pt_image_init()
115 void pt_image_fini(struct pt_image *image) in pt_image_fini() argument
117 if (!image) in pt_image_fini()
120 pt_section_list_free_tail(image->sections); in pt_image_fini()
121 free(image->name); in pt_image_fini()
123 memset(image, 0, sizeof(*image)); in pt_image_fini()
128 struct pt_image *image; in pt_image_alloc() local
130 image = malloc(sizeof(*image)); in pt_image_alloc()
131 if (image) in pt_image_alloc()
132 pt_image_init(image, name); in pt_image_alloc()
134 return image; in pt_image_alloc()
137 void pt_image_free(struct pt_image *image) in pt_image_free() argument
139 pt_image_fini(image); in pt_image_free()
140 free(image); in pt_image_free()
143 const char *pt_image_name(const struct pt_image *image) in pt_image_name() argument
145 if (!image) in pt_image_name()
148 return image->name; in pt_image_name()
151 int pt_image_add(struct pt_image *image, struct pt_section *section, in pt_image_add() argument
158 if (!image || !section) in pt_image_add()
173 list = &(image->sections); in pt_image_add()
263 int pt_image_remove(struct pt_image *image, struct pt_section *section, in pt_image_remove() argument
268 if (!image || !section) in pt_image_remove()
271 for (list = &image->sections; *list; list = &((*list)->next)) { in pt_image_remove()
303 int pt_image_add_file(struct pt_image *image, const char *filename, in pt_image_add_file() argument
311 if (!image || !filename) in pt_image_add_file()
322 errcode = pt_image_add(image, section, &asid, vaddr, 0); in pt_image_add_file()
336 int pt_image_copy(struct pt_image *image, const struct pt_image *src) in pt_image_copy() argument
341 if (!image || !src) in pt_image_copy()
349 if (image == src) in pt_image_copy()
356 errcode = pt_image_add(image, list->section.section, in pt_image_copy()
367 int pt_image_remove_by_filename(struct pt_image *image, const char *filename, in pt_image_remove_by_filename() argument
374 if (!image || !filename) in pt_image_remove_by_filename()
382 for (list = &image->sections; *list;) { in pt_image_remove_by_filename()
417 int pt_image_remove_by_asid(struct pt_image *image, in pt_image_remove_by_asid() argument
424 if (!image) in pt_image_remove_by_asid()
432 for (list = &image->sections; *list;) { in pt_image_remove_by_asid()
459 int pt_image_set_callback(struct pt_image *image, in pt_image_set_callback() argument
462 if (!image) in pt_image_set_callback()
465 image->readmem.callback = callback; in pt_image_set_callback()
466 image->readmem.context = context; in pt_image_set_callback()
471 static int pt_image_read_callback(struct pt_image *image, int *isid, in pt_image_read_callback() argument
477 if (!image || !isid) in pt_image_read_callback()
480 callback = image->readmem.callback; in pt_image_read_callback()
486 return callback(buffer, size, asid, addr, image->readmem.context); in pt_image_read_callback()
530 static int pt_image_fetch_section(struct pt_image *image, in pt_image_fetch_section() argument
535 if (!image) in pt_image_fetch_section()
538 start = &image->sections; in pt_image_fetch_section()
569 int pt_image_read(struct pt_image *image, int *isid, uint8_t *buffer, in pt_image_read() argument
577 if (!image || !isid) in pt_image_read()
580 errcode = pt_image_fetch_section(image, asid, addr); in pt_image_read()
585 return pt_image_read_callback(image, isid, buffer, size, asid, in pt_image_read()
589 slist = image->sections; in pt_image_read()
612 return pt_image_read_callback(image, isid, buffer, size, asid, in pt_image_read()
619 int pt_image_add_cached(struct pt_image *image, in pt_image_add_cached() argument
628 if (!image || !iscache) in pt_image_add_cached()
639 status = pt_image_add(image, section, &asid, vaddr, isid); in pt_image_add_cached()
651 int pt_image_find(struct pt_image *image, struct pt_mapped_section *usec, in pt_image_find() argument
659 if (!image || !usec) in pt_image_find()
662 errcode = pt_image_fetch_section(image, asid, vaddr); in pt_image_find()
666 slist = image->sections; in pt_image_find()
682 int pt_image_validate(const struct pt_image *image, in pt_image_validate() argument
690 if (!image || !usec) in pt_image_validate()
706 slist = image->sections; in pt_image_validate()