sftool_lib/sf32lb52/
erase_flash.rs

1use super::SF32LB52Tool;
2use crate::erase_flash::EraseFlashTrait;
3use crate::{EraseFlashParams, EraseRegionParams};
4
5impl EraseFlashTrait for SF32LB52Tool {
6    fn erase_flash(&mut self, params: &EraseFlashParams) -> Result<(), std::io::Error> {
7        self.internal_erase_all(params.address)
8    }
9
10    fn erase_region(&mut self, params: &EraseRegionParams) -> Result<(), std::io::Error> {
11        // 处理每个区域
12        for region in params.regions.iter() {
13            self.internal_erase_region(region.address, region.size)?;
14        }
15        Ok(())
16    }
17}