diff --git a/espflash/src/chip/esp32.rs b/espflash/src/chip/esp32.rs index 0cb5857c..280643c0 100644 --- a/espflash/src/chip/esp32.rs +++ b/espflash/src/chip/esp32.rs @@ -83,7 +83,7 @@ impl ChipType for Esp32 { addr: PARTION_ADDR, data: Cow::Owned(partition_table), }))) - .chain(once(get_data(image, 0))), + .chain(once(get_data(image, 0, Chip::Esp32))), ) } } @@ -111,6 +111,7 @@ fn test_esp32_rom() { pub(crate) fn get_data<'a>( image: &'a FirmwareImage, chip_id: u16, + chip: Chip, ) -> Result, Error> { let mut data = Vec::new(); @@ -137,10 +138,8 @@ pub(crate) fn get_data<'a>( let mut checksum = ESP_CHECKSUM_MAGIC; - let _ = image.segments().collect::>(); - - let flash_segments: Vec<_> = merge_segments(image.rom_segments(Chip::Esp32s2).collect()); - let mut ram_segments: Vec<_> = merge_segments(image.ram_segments(Chip::Esp32s2).collect()); + let flash_segments: Vec<_> = merge_segments(image.rom_segments(chip).collect()); + let mut ram_segments: Vec<_> = merge_segments(image.ram_segments(chip).collect()); let mut segment_count = 0; diff --git a/espflash/src/chip/esp32c3.rs b/espflash/src/chip/esp32c3.rs index 4d253f80..e11c1f60 100644 --- a/espflash/src/chip/esp32c3.rs +++ b/espflash/src/chip/esp32c3.rs @@ -2,7 +2,7 @@ use crate::chip::esp32::get_data; use crate::{ chip::{ChipType, SpiRegisters}, elf::{FirmwareImage, RomSegment}, - Error, PartitionTable, + Chip, Error, PartitionTable, }; use std::{borrow::Cow, iter::once}; @@ -78,7 +78,7 @@ impl ChipType for Esp32c3 { addr: PARTITION_ADDR, data: Cow::Owned(partition_table), }))) - .chain(once(get_data(image, 5))), + .chain(once(get_data(image, 5, Chip::Esp32c3))), ) } } diff --git a/espflash/src/chip/esp32s2.rs b/espflash/src/chip/esp32s2.rs index cde4edde..74c9fc6b 100644 --- a/espflash/src/chip/esp32s2.rs +++ b/espflash/src/chip/esp32s2.rs @@ -2,7 +2,7 @@ use crate::chip::esp32::get_data; use crate::{ chip::{ChipType, SpiRegisters}, elf::{FirmwareImage, RomSegment}, - Error, PartitionTable, + Chip, Error, PartitionTable, }; use std::{borrow::Cow, iter::once}; @@ -77,7 +77,7 @@ impl ChipType for Esp32s2 { addr: PARTITION_ADDR, data: Cow::Owned(partition_table), }))) - .chain(once(get_data(image, 2))), + .chain(once(get_data(image, 2, Chip::Esp32s2))), ) } } diff --git a/espflash/tests/data/esp32.bin b/espflash/tests/data/esp32.bin index 53c517f0..4d5eb322 100644 Binary files a/espflash/tests/data/esp32.bin and b/espflash/tests/data/esp32.bin differ