aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2024-04-13 02:55:15 +0200
committerDario Nieuwenhuis <[email protected]>2024-04-14 22:06:41 +0200
commit1f3b690f76b6732e1ff152091040cec833da25cf (patch)
treede8e0ee187f24786d0eeeeb26c1049e420c68875
parentffc61f78b0226b1898eb7aca66a759b76e0407af (diff)
stm32/flash: remove otp flash regions (removed in newer metapacs).
-rw-r--r--embassy-stm32/build.rs2
-rw-r--r--embassy-stm32/src/flash/f4.rs5
-rw-r--r--embassy-stm32/src/flash/h50.rs6
-rw-r--r--embassy-stm32/src/flash/mod.rs2
4 files changed, 3 insertions, 12 deletions
diff --git a/embassy-stm32/build.rs b/embassy-stm32/build.rs
index 38b6c480c..0f87dd8ac 100644
--- a/embassy-stm32/build.rs
+++ b/embassy-stm32/build.rs
@@ -272,8 +272,6 @@ fn main() {
272 "Bank1" 272 "Bank1"
273 } else if region.name.starts_with("BANK_2") { 273 } else if region.name.starts_with("BANK_2") {
274 "Bank2" 274 "Bank2"
275 } else if region.name == "OTP" {
276 "Otp"
277 } else { 275 } else {
278 continue; 276 continue;
279 } 277 }
diff --git a/embassy-stm32/src/flash/f4.rs b/embassy-stm32/src/flash/f4.rs
index 00e61f2d2..90f13ff29 100644
--- a/embassy-stm32/src/flash/f4.rs
+++ b/embassy-stm32/src/flash/f4.rs
@@ -16,7 +16,7 @@ mod alt_regions {
16 use embassy_hal_internal::PeripheralRef; 16 use embassy_hal_internal::PeripheralRef;
17 use stm32_metapac::FLASH_SIZE; 17 use stm32_metapac::FLASH_SIZE;
18 18
19 use crate::_generated::flash_regions::{OTPRegion, BANK1_REGION1, BANK1_REGION2, BANK1_REGION3, OTP_REGION}; 19 use crate::_generated::flash_regions::{BANK1_REGION1, BANK1_REGION2, BANK1_REGION3};
20 use crate::flash::{asynch, Async, Bank1Region1, Bank1Region2, Blocking, Error, Flash, FlashBank, FlashRegion}; 20 use crate::flash::{asynch, Async, Bank1Region1, Bank1Region2, Blocking, Error, Flash, FlashBank, FlashRegion};
21 use crate::peripherals::FLASH; 21 use crate::peripherals::FLASH;
22 22
@@ -62,7 +62,6 @@ mod alt_regions {
62 pub bank2_region1: AltBank2Region1<'d, MODE>, 62 pub bank2_region1: AltBank2Region1<'d, MODE>,
63 pub bank2_region2: AltBank2Region2<'d, MODE>, 63 pub bank2_region2: AltBank2Region2<'d, MODE>,
64 pub bank2_region3: AltBank2Region3<'d, MODE>, 64 pub bank2_region3: AltBank2Region3<'d, MODE>,
65 pub otp_region: OTPRegion<'d, MODE>,
66 } 65 }
67 66
68 impl<'d> Flash<'d> { 67 impl<'d> Flash<'d> {
@@ -79,7 +78,6 @@ mod alt_regions {
79 bank2_region1: AltBank2Region1(&ALT_BANK2_REGION1, unsafe { p.clone_unchecked() }, PhantomData), 78 bank2_region1: AltBank2Region1(&ALT_BANK2_REGION1, unsafe { p.clone_unchecked() }, PhantomData),
80 bank2_region2: AltBank2Region2(&ALT_BANK2_REGION2, unsafe { p.clone_unchecked() }, PhantomData), 79 bank2_region2: AltBank2Region2(&ALT_BANK2_REGION2, unsafe { p.clone_unchecked() }, PhantomData),
81 bank2_region3: AltBank2Region3(&ALT_BANK2_REGION3, unsafe { p.clone_unchecked() }, PhantomData), 80 bank2_region3: AltBank2Region3(&ALT_BANK2_REGION3, unsafe { p.clone_unchecked() }, PhantomData),
82 otp_region: OTPRegion(&OTP_REGION, unsafe { p.clone_unchecked() }, PhantomData),
83 } 81 }
84 } 82 }
85 83
@@ -96,7 +94,6 @@ mod alt_regions {
96 bank2_region1: AltBank2Region1(&ALT_BANK2_REGION1, unsafe { p.clone_unchecked() }, PhantomData), 94 bank2_region1: AltBank2Region1(&ALT_BANK2_REGION1, unsafe { p.clone_unchecked() }, PhantomData),
97 bank2_region2: AltBank2Region2(&ALT_BANK2_REGION2, unsafe { p.clone_unchecked() }, PhantomData), 95 bank2_region2: AltBank2Region2(&ALT_BANK2_REGION2, unsafe { p.clone_unchecked() }, PhantomData),
98 bank2_region3: AltBank2Region3(&ALT_BANK2_REGION3, unsafe { p.clone_unchecked() }, PhantomData), 96 bank2_region3: AltBank2Region3(&ALT_BANK2_REGION3, unsafe { p.clone_unchecked() }, PhantomData),
99 otp_region: OTPRegion(&OTP_REGION, unsafe { p.clone_unchecked() }, PhantomData),
100 } 97 }
101 } 98 }
102 } 99 }
diff --git a/embassy-stm32/src/flash/h50.rs b/embassy-stm32/src/flash/h50.rs
index db05bef5d..5b15be261 100644
--- a/embassy-stm32/src/flash/h50.rs
+++ b/embassy-stm32/src/flash/h50.rs
@@ -55,7 +55,6 @@ pub(crate) unsafe fn blocking_write(start_address: u32, buf: &[u8; WRITE_SIZE])
55} 55}
56 56
57pub(crate) unsafe fn blocking_erase_sector(sector: &FlashSector) -> Result<(), Error> { 57pub(crate) unsafe fn blocking_erase_sector(sector: &FlashSector) -> Result<(), Error> {
58 assert!(sector.bank != FlashBank::Otp);
59 assert!(sector.index_in_bank < 8); 58 assert!(sector.index_in_bank < 8);
60 59
61 while busy() {} 60 while busy() {}
@@ -63,9 +62,8 @@ pub(crate) unsafe fn blocking_erase_sector(sector: &FlashSector) -> Result<(), E
63 interrupt::free(|_| { 62 interrupt::free(|_| {
64 pac::FLASH.nscr().modify(|w| { 63 pac::FLASH.nscr().modify(|w| {
65 w.set_bksel(match sector.bank { 64 w.set_bksel(match sector.bank {
66 FlashBank::Bank1 => Bksel::B_0X0, 65 FlashBank::Bank1 => Bksel::BANK1,
67 FlashBank::Bank2 => Bksel::B_0X1, 66 FlashBank::Bank2 => Bksel::BANK2,
68 _ => unreachable!(),
69 }); 67 });
70 w.set_snb(sector.index_in_bank); 68 w.set_snb(sector.index_in_bank);
71 w.set_ser(true); 69 w.set_ser(true);
diff --git a/embassy-stm32/src/flash/mod.rs b/embassy-stm32/src/flash/mod.rs
index 1d8031e82..9d7861816 100644
--- a/embassy-stm32/src/flash/mod.rs
+++ b/embassy-stm32/src/flash/mod.rs
@@ -89,8 +89,6 @@ pub enum FlashBank {
89 Bank1 = 0, 89 Bank1 = 0,
90 /// Bank 2 90 /// Bank 2
91 Bank2 = 1, 91 Bank2 = 1,
92 /// OTP region
93 Otp,
94} 92}
95 93
96#[cfg_attr(any(flash_l0, flash_l1, flash_l4, flash_wl, flash_wb), path = "l.rs")] 94#[cfg_attr(any(flash_l0, flash_l1, flash_l4, flash_wl, flash_wb), path = "l.rs")]