Lines Matching refs:image

172     image = LoadFirmwareImage(esp.CHIP_NAME, args.filename)
175 for seg in image.segments:
190 print("All segments done, executing at %08x" % image.entrypoint)
191 esp.mem_finish(image.entrypoint)
243 def _update_image_flash_params(esp, address, args, image): argument
247 if len(image) < 8:
248 return image # not long enough to be a bootloader image
251 magic, _, flash_mode, flash_size_freq = struct.unpack("BBBB", image[:4])
253 return image # not flashing bootloader offset, so don't modify this
256 return image # all settings are 'keep', not modifying anything
264 return image
270 test_image = esp.BOOTLOADER_IMAGE(io.BytesIO(image))
277 return image
282 sha_appended = args.chip != "esp8266" and image[8 + 15] == 1
296 if flash_params != image[2:4]:
298 image = image[0:2] + flash_params + image[4:]
305 image_object = esp.BOOTLOADER_IMAGE(io.BytesIO(image))
307 image_data_before_sha = image[: image_object.data_length]
309 image_data_after_sha = image[
314 image = bytes(
321 image_stored_sha = image[
335 return image
359 image = LoadFirmwareImage(esp.CHIP_NAME, argfile)
364 if image.chip_id != esp.IMAGE_CHIP_ID:
371 if image.max_rev_full == 0: # image does not have max/min_rev_full fields
373 elif image.max_rev_full == 65535: # image has default value of max_rev_full
376 image.min_rev_full == 0 and image.min_rev != 0
384 if rev < image.min_rev_full or rev > image.max_rev_full:
389 if image.max_rev_full == 65535:
405 if rev < image.min_rev:
576 image = argfile.read()
578 if len(image) == 0:
582 image = pad_to(image, esp.FLASH_ENCRYPTED_WRITE_ALIGN if encrypted else 4)
592 image = b"\xFF" * bytes_over + image
595 image = _update_image_flash_params(esp, address, args, image)
600 calcmd5 = hashlib.md5(image).hexdigest()
601 uncsize = len(image)
603 uncimage = image
604 image = zlib.compress(uncimage, 9)
605 original_image = image # Save the whole image in case retry is needed
613 blocks = esp.flash_defl_begin(uncsize, len(image), address)
626 while len(image) > 0:
632 block = image[0 : esp.FLASH_WRITE_SIZE]
660 image = image[esp.FLASH_WRITE_SIZE :]
681 image = original_image
777 print("Image version: {}".format(image.version))
779 "Entry point: {:#8x}".format(image.entrypoint)
780 if image.entrypoint != 0
784 print("Segments: {}".format(len(image.segments)))
787 flash_s_bits = image.flash_size_freq & 0xF0 # high four bits
788 flash_s = get_key_from_value(image.ROM_LOADER.FLASH_SIZES, flash_s_bits)
796 flash_fr_bits = image.flash_size_freq & 0x0F # low four bits
797 flash_fr = get_key_from_value(image.ROM_LOADER.FLASH_FREQUENCY, flash_fr_bits)
805 flash_mode = get_key_from_value(FLASH_MODES, image.flash_mode)
809 else "WARNING: Invalid flash mode ({})".format(image.flash_mode)
820 *["(disabled)"] if image.wp_pin == image.WP_PIN_DISABLED else [],
826 image.clk_drv,
827 image.q_drv,
828 image.d_drv,
829 image.cs_drv,
830 image.hd_drv,
831 image.wp_drv,
838 if getattr(chip, "IMAGE_CHIP_ID", None) == image.chip_id
870 for idx, seg in enumerate(image.segments):
871 segs = seg.get_memory_type(image)
888 calc_checksum = image.calculate_checksum()
891 image.checksum,
894 if image.checksum == calc_checksum
901 if image.append_digest:
902 is_valid = image.stored_digest == image.calc_digest
904 hexify(image.calc_digest, uppercase=False),
994 image = LoadFirmwareImage(args.chip, args.filename)
1000 print("Image version: {}".format(image.version))
1002 "Entry point: {:8x}".format(image.entrypoint)
1003 if image.entrypoint != 0
1006 print("{} segments".format(len(image.segments)))
1009 for seg in image.segments:
1011 segs = seg.get_memory_type(image)
1014 calc_checksum = image.calculate_checksum()
1017 image.checksum,
1020 if image.checksum == calc_checksum
1027 if image.append_digest:
1028 is_valid = image.stored_digest == image.calc_digest
1030 hexify(image.calc_digest, uppercase=False),
1040 image = ESP8266ROMFirmwareImage()
1050 image.segments.append(ImageSegment(addr, data))
1051 image.entrypoint = args.entrypoint
1052 image.save(args.output)
1064 image = CHIP_DEFS[args.chip].BOOTLOADER_IMAGE()
1066 image.secure_pad = "1"
1068 image.secure_pad = "2"
1069 image.min_rev = args.min_rev
1070 image.min_rev_full = args.min_rev_full
1071 image.max_rev_full = args.max_rev_full
1072 image.ram_only_header = args.ram_only_header
1073 if image.ram_only_header:
1074 image.append_digest = False
1076 image.append_digest = args.append_digest
1078 image = ESP8266ROMFirmwareImage()
1080 image = ESP8266V2FirmwareImage()
1082 image = ESP8266V3FirmwareImage()
1083 image.entrypoint = e.entrypoint
1084 image.flash_mode = FLASH_MODES[args.flash_mode]
1087 image.set_mmu_page_size(flash_size_bytes(args.flash_mmu_page_size))
1090 image.segments = e.segments if args.use_segments else e.sections
1092 image.pad_to_size = flash_size_bytes(args.pad_to_size)
1093 image.flash_size_freq = image.ROM_LOADER.parse_flash_size_arg(args.flash_size)
1094 image.flash_size_freq += image.ROM_LOADER.parse_flash_freq_arg(args.flash_freq)
1097 image.elf_sha256 = e.sha256()
1098 image.elf_sha256_offset = args.elf_sha256_offset
1105 image.sort_segments()
1107 before = len(image.segments)
1108 image.merge_adjacent_segments()
1109 if len(image.segments) != before:
1110 delta = before - len(image.segments)
1113 image.verify()
1116 args.output = image.default_output_name(args.input)
1117 image.save(args.output)
1240 image = pad_to(argfile.read(), 4)
1243 image = _update_image_flash_params(esp, address, args, image)
1245 image_size = len(image)
1252 expected_digest = hashlib.md5(image).hexdigest()
1263 assert flash != image
1264 diff = [i for i in range(image_size) if flash[i] != image[i]]
1271 image_byte = image[d]
1423 image = argfile.read()
1424 image = _update_image_flash_params(chip_class, addr, args, image)
1425 writer.add_file(addr, image)
1440 image = argfile.read()
1441 image = _update_image_flash_params(chip_class, addr, args, image)
1442 of.write(image)
1460 image = argfile.read()
1461 image = _update_image_flash_params(chip_class, addr, args, image)
1462 ihex.frombytes(image, addr)