retry RTIO PLL lock
This commit is contained in:
parent
0ce45b145e
commit
26874030fc
@ -112,22 +112,21 @@ fn init_rtio(timer: &mut GlobalTimer, cfg: &config::Config) {
|
|||||||
0
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
|
loop {
|
||||||
unsafe {
|
unsafe {
|
||||||
pl::csr::rtio_crg::pll_reset_write(1);
|
pl::csr::rtio_crg::pll_reset_write(1);
|
||||||
pl::csr::rtio_crg::clock_sel_write(clock_sel);
|
pl::csr::rtio_crg::clock_sel_write(clock_sel);
|
||||||
}
|
|
||||||
|
|
||||||
timer.delay_ms(2);
|
|
||||||
|
|
||||||
unsafe {
|
|
||||||
pl::csr::rtio_crg::pll_reset_write(0);
|
pl::csr::rtio_crg::pll_reset_write(0);
|
||||||
}
|
}
|
||||||
|
timer.delay_ms(1);
|
||||||
timer.delay_ms(2);
|
|
||||||
|
|
||||||
let locked = unsafe { pl::csr::rtio_crg::pll_locked_read() != 0 };
|
let locked = unsafe { pl::csr::rtio_crg::pll_locked_read() != 0 };
|
||||||
if !locked {
|
if locked {
|
||||||
panic!("RTIO PLL failed to lock");
|
info!("RTIO PLL locked");
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
warn!("RTIO PLL failed to lock, retrying...");
|
||||||
|
timer.delay_ms(500);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
unsafe {
|
unsafe {
|
||||||
|
Loading…
Reference in New Issue
Block a user