diff options
| author | JuliDi <[email protected]> | 2023-09-10 11:05:10 +0200 |
|---|---|---|
| committer | JuliDi <[email protected]> | 2023-10-02 09:30:58 +0200 |
| commit | 6ea5aa347db40a0f50b82ff9bc39f2f2c73fb04e (patch) | |
| tree | 34de3d4d40b90e79e33854e8523eb0a45273c12a /embassy-stm32 | |
| parent | 8c13126cff826a20268f695a7b4d0c2588c69252 (diff) | |
feature-gate errata workaround for h7
Diffstat (limited to 'embassy-stm32')
| -rw-r--r-- | embassy-stm32/src/qspi/mod.rs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/embassy-stm32/src/qspi/mod.rs b/embassy-stm32/src/qspi/mod.rs index 92219e018..900dfa832 100644 --- a/embassy-stm32/src/qspi/mod.rs +++ b/embassy-stm32/src/qspi/mod.rs | |||
| @@ -183,14 +183,17 @@ impl<'d, T: Instance, Dma> Qspi<'d, T, Dma> { | |||
| 183 | 183 | ||
| 184 | while T::REGS.sr().read().busy() {} | 184 | while T::REGS.sr().read().busy() {} |
| 185 | 185 | ||
| 186 | // Apply precautionary steps according to the errata... | 186 | #[cfg(stm32h7)] |
| 187 | T::REGS.cr().write_value(Cr(0)); | 187 | { |
| 188 | while T::REGS.sr().read().busy() {} | 188 | // Apply precautionary steps according to the errata... |
| 189 | T::REGS.cr().write_value(Cr(0xFF000001)); | 189 | T::REGS.cr().write_value(Cr(0)); |
| 190 | T::REGS.ccr().write(|w| w.set_frcm(true)); | 190 | while T::REGS.sr().read().busy() {} |
| 191 | T::REGS.ccr().write(|w| w.set_frcm(true)); | 191 | T::REGS.cr().write_value(Cr(0xFF000001)); |
| 192 | T::REGS.cr().write_value(Cr(0)); | 192 | T::REGS.ccr().write(|w| w.set_frcm(true)); |
| 193 | while T::REGS.sr().read().busy() {} | 193 | T::REGS.ccr().write(|w| w.set_frcm(true)); |
| 194 | T::REGS.cr().write_value(Cr(0)); | ||
| 195 | while T::REGS.sr().read().busy() {} | ||
| 196 | } | ||
| 194 | 197 | ||
| 195 | T::REGS.cr().modify(|w| { | 198 | T::REGS.cr().modify(|w| { |
| 196 | w.set_en(true); | 199 | w.set_en(true); |
