Lines Matching full:bf

55 	char *(*parse)(char *line, struct bif_entry *bf);
61 int (*add)(struct bif_entry *bf);
110 static char *parse_dest_cpu(char *line, struct bif_entry *bf) in parse_dest_cpu() argument
116 bf->dest_cpu = i << PART_ATTR_DEST_CPU_SHIFT; in parse_dest_cpu()
126 bf->dest_cpu = i << PART_ATTR_DEST_CPU_SHIFT; in parse_dest_cpu()
135 static char *parse_el(char *line, struct bif_entry *bf) in parse_el() argument
142 bf->exp_lvl = i; in parse_el()
150 static char *parse_load(char *line, struct bif_entry *bf) in parse_load() argument
154 bf->load = strtoll(line, &endptr, 0); in parse_load()
159 static char *parse_entry(char *line, struct bif_entry *bf) in parse_entry() argument
163 bf->entry = strtoll(line, &endptr, 0); in parse_entry()
168 static char *parse_offset(char *line, struct bif_entry *bf) in parse_offset() argument
172 bf->offset = strtoll(line, &endptr, 0); in parse_offset()
177 static char *parse_partition_owner(char *line, struct bif_entry *bf) in parse_partition_owner() argument
184 bf->flags |= 1ULL << BIF_FLAG_PART_OWNER_UBOOT; in parse_partition_owner()
298 static int bif_add_pmufw(struct bif_entry *bf, const char *data, size_t len) in bif_add_pmufw() argument
307 r = bif_add_blob(data, len, &bf->offset); in bif_add_pmufw()
314 bif_output.header->image_offset = cpu_to_le32(bf->offset); in bif_add_pmufw()
319 static int bif_add_part(struct bif_entry *bf, const char *data, size_t len) in bif_add_part() argument
328 .entry_point = cpu_to_le64(bf->entry), in bif_add_part()
329 .load_address = cpu_to_le64(bf->load), in bif_add_part()
341 if (bf->flags & (1ULL << BIF_FLAG_PMUFW_IMAGE)) in bif_add_part()
342 return bif_add_pmufw(bf, data, len); in bif_add_part()
344 r = bif_add_blob(data, len, &bf->offset); in bif_add_part()
348 parthdr.offset = cpu_to_le32(bf->offset / 4); in bif_add_part()
350 if (bf->flags & (1ULL << BIF_FLAG_BOOTLOADER)) { in bif_add_part()
357 parthdr.len = cpu_to_le32((bf->offset + len - in bif_add_part()
364 bf->exp_lvl = bf->exp_lvl ? bf->exp_lvl - 1 : 3; in bif_add_part()
365 parthdr.attributes |= bf->exp_lvl << PART_ATTR_TARGET_EL_SHIFT; in bif_add_part()
366 parthdr.attributes |= bf->dest_dev; in bif_add_part()
367 parthdr.attributes |= bf->dest_cpu; in bif_add_part()
368 if (bf->flags & (1ULL << BIF_FLAG_TZ)) in bif_add_part()
370 if (bf->flags & (1ULL << BIF_FLAG_PART_OWNER_UBOOT)) in bif_add_part()
372 switch (bf->dest_cpu) { in bif_add_part()
378 if (bf->flags & (1ULL << BIF_FLAG_AARCH32)) in bif_add_part()
423 if (bf->flags & (1ULL << BIF_FLAG_BOOTLOADER)) { in bif_add_part()
424 bif_output.header->image_load = cpu_to_le32(bf->load); in bif_add_part()
427 cpu_to_le32(bf->offset); in bif_add_part()
432 switch (bf->dest_cpu) { in bif_add_part()
435 if (bf->flags & BIF_FLAG_AARCH32) in bif_add_part()
457 static int bif_add_bit(struct bif_entry *bf) in bif_add_bit() argument
459 char *bit = read_full_file(bf->filename, NULL); in bif_add_bit()
523 if (!bf->dest_dev) in bif_add_bit()
524 bf->dest_dev = PART_ATTR_DEST_DEVICE_PL; in bif_add_bit()
526 bf->load = 0xffffffff; in bif_add_bit()
527 bf->entry = 0; in bif_add_bit()
529 bf->flags |= 1ULL << BIF_FLAG_BIT_FILE; in bif_add_bit()
530 return bif_add_part(bf, bit, bitlen); in bif_add_bit()
534 static int bif_add_bin(struct bif_entry *bf) in bif_add_bin() argument
537 char *bin = read_full_file(bf->filename, &size); in bif_add_bin()
539 if (!bf->dest_dev) in bif_add_bin()
540 bf->dest_dev = PART_ATTR_DEST_DEVICE_PS; in bif_add_bin()
542 bf->flags |= 1ULL << BIF_FLAG_BIN_FILE; in bif_add_bin()
543 return bif_add_part(bf, bin, size); in bif_add_bin()
643 static int bif_add_elf(struct bif_entry *bf) in bif_add_elf() argument
653 elf = read_full_file(bf->filename, &elf_size); in bif_add_elf()
663 bf->entry = le32_to_cpu(ehdr32->e_entry); in bif_add_elf()
664 bf->flags |= 1ULL << BIF_FLAG_AARCH32; in bif_add_elf()
668 bf->entry = le64_to_cpu(ehdr64->e_entry); in bif_add_elf()
678 bf->load = load_addr; in bif_add_elf()
679 if (!bf->dest_dev) in bif_add_elf()
680 bf->dest_dev = PART_ATTR_DEST_DEVICE_PS; in bif_add_elf()
682 bf->flags |= 1ULL << BIF_FLAG_ELF_FILE; in bif_add_elf()
683 return bif_add_part(bf, flat, size); in bif_add_elf()
761 const struct bif_flags *bf; in find_flag() local
765 bf = &bif_flags[i]; in find_flag()
766 if (!strncmp(bf->name, str, strlen(bf->name))) in find_flag()
767 return bf; in find_flag()
870 const struct bif_flags *bf; in zynqmpbif_copy_image() local
873 bf = find_flag(line); in zynqmpbif_copy_image()
874 if (!bf) in zynqmpbif_copy_image()
877 line += strlen(bf->name); in zynqmpbif_copy_image()
878 if (bf->parse) in zynqmpbif_copy_image()
879 line = bf->parse(line, entry); in zynqmpbif_copy_image()
881 entry->flags |= 1ULL << bf->flag; in zynqmpbif_copy_image()