Lines Matching refs:fw
13 static bool va_in_fwm_image_range(void *va, uint8_t *fw, size_t fw_size) in va_in_fwm_image_range() argument
17 return vaddr >= fw && vaddr < fw + fw_size; in va_in_fwm_image_range()
20 TEE_Result e32_parse_ehdr(uint8_t *fw, size_t size) in e32_parse_ehdr() argument
22 Elf32_Ehdr *ehdr = (Elf32_Ehdr *)(void *)fw; in e32_parse_ehdr()
24 if (!fw || !IS_ALIGNED_WITH_TYPE(fw, uint32_t)) { in e32_parse_ehdr()
50 TEE_Result e32_parser_load_elf_image(uint8_t *fw, size_t fw_size, in e32_parser_load_elf_image() argument
58 Elf32_Ehdr *ehdr = (Elf32_Ehdr *)(void *)fw; in e32_parser_load_elf_image()
63 if (!load_seg || fw + fw_size <= fw) in e32_parser_load_elf_image()
67 !va_in_fwm_image_range(phdr, fw, fw_size)) in e32_parser_load_elf_image()
78 fw, fw_size)) in e32_parser_load_elf_image()
81 src = (uint8_t *)fw + phdr->p_offset; in e32_parser_load_elf_image()
83 if (!va_in_fwm_image_range(src, fw, fw_size) || in e32_parser_load_elf_image()
84 !va_in_fwm_image_range(src + phdr->p_filesz, fw, fw_size)) in e32_parser_load_elf_image()
96 TEE_Result e32_parser_find_rsc_table(uint8_t *fw, size_t fw_size, in e32_parser_find_rsc_table() argument
104 Elf32_Ehdr *ehdr = (Elf32_Ehdr *)(void *)fw; in e32_parser_find_rsc_table()
105 uint8_t *elf_data = fw; in e32_parser_find_rsc_table()
107 if (fw + fw_size <= fw || fw + ehdr->e_shoff < fw) in e32_parser_find_rsc_table()
110 shdr = (void *)(fw + ehdr->e_shoff); in e32_parser_find_rsc_table()
112 !va_in_fwm_image_range(shdr, fw, fw_size)) in e32_parser_find_rsc_table()
116 if (!va_in_fwm_image_range(name_table, fw, fw_size)) in e32_parser_find_rsc_table()
124 if (!va_in_fwm_image_range(shdr, fw, fw_size)) in e32_parser_find_rsc_table()