Merge #838
838: embassy-boot touchups r=lulf a=FrozenDroid Co-authored-by: Vincent Stakenburg <v.stakenburg@cosinuss.nl>
This commit is contained in:
		| @@ -587,22 +587,13 @@ impl FirmwareUpdater { | ||||
|     ) -> Result<(), F::Error> { | ||||
|         flash.read(self.state.from as u32, aligned).await?; | ||||
|  | ||||
|         let mut is_set = true; | ||||
|         for b in 0..aligned.len() { | ||||
|             if aligned[b] != magic { | ||||
|                 is_set = false; | ||||
|             } | ||||
|         } | ||||
|         if !is_set { | ||||
|             for i in 0..aligned.len() { | ||||
|                 aligned[i] = 0; | ||||
|             } | ||||
|         if aligned.iter().find(|&&b| b != magic).is_some() { | ||||
|             aligned.fill(0); | ||||
|  | ||||
|             flash.write(self.state.from as u32, aligned).await?; | ||||
|             flash.erase(self.state.from as u32, self.state.to as u32).await?; | ||||
|  | ||||
|             for i in 0..aligned.len() { | ||||
|                 aligned[i] = magic; | ||||
|             } | ||||
|             aligned.fill(magic); | ||||
|             flash.write(self.state.from as u32, aligned).await?; | ||||
|         } | ||||
|         Ok(()) | ||||
|   | ||||
| @@ -9,6 +9,7 @@ description = "Bootloader lib for STM32 chips" | ||||
| [dependencies] | ||||
| defmt = { version = "0.3", optional = true } | ||||
| defmt-rtt = { version = "0.3", optional = true } | ||||
| log = { version = "0.4", optional = true } | ||||
|  | ||||
| embassy = { path = "../../embassy", default-features = false } | ||||
| embassy-stm32 = { path = "../../embassy-stm32", default-features = false, features = ["nightly"] } | ||||
| @@ -25,6 +26,11 @@ defmt = [ | ||||
|     "embassy-boot/defmt", | ||||
|     "embassy-stm32/defmt", | ||||
| ] | ||||
| log = [ | ||||
|     "dep:log", | ||||
|     "embassy-boot/log", | ||||
|     "embassy-stm32/log", | ||||
| ] | ||||
| debug = ["defmt-rtt"] | ||||
|  | ||||
| [profile.dev] | ||||
|   | ||||
		Reference in New Issue
	
	Block a user