From 7ecee2b3ee7a1f58858142b61ffcf1d982288349 Mon Sep 17 00:00:00 2001 From: mwojcik Date: Thu, 28 Oct 2021 16:25:29 +0800 Subject: [PATCH] rtio_clocking: warn on unsupported settings --- src/runtime/src/rtio_clocking.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/runtime/src/rtio_clocking.rs b/src/runtime/src/rtio_clocking.rs index fea273a..ff4420c 100644 --- a/src/runtime/src/rtio_clocking.rs +++ b/src/runtime/src/rtio_clocking.rs @@ -99,7 +99,7 @@ fn init_drtio(timer: &mut GlobalTimer) #[cfg(has_si5324)] fn setup_si5324(i2c: &mut I2c, timer: &mut GlobalTimer, clk: RtioClock) { let si5324_settings = match clk { - _ => { // 125MHz output, from crystal, 7 Hz, default, also covers RtioClock::Int_125 + RtioClock::Int_125 => { // 125MHz output, from crystal, 7 Hz info!("using internal 125MHz RTIO clock"); si5324::FrequencySettings { n1_hs : 10, @@ -112,6 +112,19 @@ fn setup_si5324(i2c: &mut I2c, timer: &mut GlobalTimer, clk: RtioClock) { crystal_ref: true } } + _ => { // same setting as Int_125, but fallback to default + warn!("rtio_clock setting '{:x}' is unsupported. Falling back to default internal 125MHz RTIO clock."); + si5324::FrequencySettings { + n1_hs : 10, + nc1_ls : 4, + n2_hs : 10, + n2_ls : 19972, + n31 : 4565, + n32 : 4565, + bwsel : 4, + crystal_ref: true + } + } }; let si5324_ref_input = si5324::Input::Ckin2; si5324::setup(i2c, &si5324_settings, si5324_ref_input, timer).expect("cannot initialize Si5324");