aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2023-10-18 03:23:47 +0000
committerGitHub <[email protected]>2023-10-18 03:23:47 +0000
commit4f7b8316769d4b0ca59e8501cecfaed0de5a3000 (patch)
tree6a61685dc05bb97e2345c68ccc93969e4ec317ef /tests
parent51708c8ed1962618ac7bc244a3f5e7ceced28182 (diff)
parentf20f170b1fa97a86e9d9258ac5cea248203580fb (diff)
Merge pull request #2088 from embassy-rs/rcc-no-spaghetti
stm32: rcc no spaghetti
Diffstat (limited to 'tests')
-rw-r--r--tests/stm32/src/common.rs40
1 files changed, 34 insertions, 6 deletions
diff --git a/tests/stm32/src/common.rs b/tests/stm32/src/common.rs
index 9f1307ce5..8dde71fb3 100644
--- a/tests/stm32/src/common.rs
+++ b/tests/stm32/src/common.rs
@@ -224,16 +224,44 @@ pub fn config() -> Config {
224 224
225 #[cfg(feature = "stm32f429zi")] 225 #[cfg(feature = "stm32f429zi")]
226 { 226 {
227 // TODO: stm32f429zi can do up to 180mhz, but that makes tests fail. 227 use embassy_stm32::rcc::*;
228 // perhaps we have some bug w.r.t overdrive. 228 config.rcc.hse = Some(Hse {
229 config.rcc.sys_ck = Some(Hertz(168_000_000)); 229 freq: Hertz(8_000_000),
230 config.rcc.pclk1 = Some(Hertz(42_000_000)); 230 mode: HseMode::Bypass,
231 config.rcc.pclk2 = Some(Hertz(84_000_000)); 231 });
232 config.rcc.pll_src = PllSource::HSE;
233 config.rcc.pll = Some(Pll {
234 prediv: PllPreDiv::DIV4,
235 mul: PllMul::MUL180,
236 divp: Some(Pllp::DIV2), // 8mhz / 4 * 180 / 2 = 180Mhz.
237 divq: None,
238 divr: None,
239 });
240 config.rcc.ahb_pre = AHBPrescaler::DIV1;
241 config.rcc.apb1_pre = APBPrescaler::DIV4;
242 config.rcc.apb2_pre = APBPrescaler::DIV2;
243 config.rcc.sys = Sysclk::PLL1_P;
232 } 244 }
233 245
234 #[cfg(feature = "stm32f767zi")] 246 #[cfg(feature = "stm32f767zi")]
235 { 247 {
236 config.rcc.sys_ck = Some(Hertz(200_000_000)); 248 use embassy_stm32::rcc::*;
249 config.rcc.hse = Some(Hse {
250 freq: Hertz(8_000_000),
251 mode: HseMode::Bypass,
252 });
253 config.rcc.pll_src = PllSource::HSE;
254 config.rcc.pll = Some(Pll {
255 prediv: PllPreDiv::DIV4,
256 mul: PllMul::MUL216,
257 divp: Some(Pllp::DIV2), // 8mhz / 4 * 216 / 2 = 216Mhz.
258 divq: None,
259 divr: None,
260 });
261 config.rcc.ahb_pre = AHBPrescaler::DIV1;
262 config.rcc.apb1_pre = APBPrescaler::DIV4;
263 config.rcc.apb2_pre = APBPrescaler::DIV2;
264 config.rcc.sys = Sysclk::PLL1_P;
237 } 265 }
238 266
239 #[cfg(feature = "stm32h563zi")] 267 #[cfg(feature = "stm32h563zi")]