Clock input settings improvements #152
@ -99,7 +99,7 @@ fn init_drtio(timer: &mut GlobalTimer)
|
|||||||
#[cfg(has_si5324)]
|
#[cfg(has_si5324)]
|
||||||
fn setup_si5324(i2c: &mut I2c, timer: &mut GlobalTimer, clk: RtioClock) {
|
fn setup_si5324(i2c: &mut I2c, timer: &mut GlobalTimer, clk: RtioClock) {
|
||||||
let si5324_settings = match clk {
|
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");
|
info!("using internal 125MHz RTIO clock");
|
||||||
si5324::FrequencySettings {
|
si5324::FrequencySettings {
|
||||||
n1_hs : 10,
|
n1_hs : 10,
|
||||||
@ -112,6 +112,19 @@ fn setup_si5324(i2c: &mut I2c, timer: &mut GlobalTimer, clk: RtioClock) {
|
|||||||
crystal_ref: true
|
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;
|
let si5324_ref_input = si5324::Input::Ckin2;
|
||||||
si5324::setup(i2c, &si5324_settings, si5324_ref_input, timer).expect("cannot initialize Si5324");
|
si5324::setup(i2c, &si5324_settings, si5324_ref_input, timer).expect("cannot initialize Si5324");
|
||||||
|
Loading…
Reference in New Issue
Block a user