At least the USB peripheral needs this, but probably others do, too.
const SIM_BASE: u32 = 0x40047000;
+const SIM_SOPT2: u32 = SIM_BASE + 0x1004;
+
const SIM_CLKDIV1: u32 = SIM_BASE + 0x1044;
+const SIM_SOPT2_PLLFLLSEL: u32 = 1 << 16;
+
const SIM_CLKDIV1_OUTDIV4_SHIFT: u32 = 16;
const SIM_CLKDIV1_OUTDIV1_SHIFT: u32 = 28;
switch_to_fbe();
switch_to_pbe();
switch_to_pee();
+
+ let mut sopt2 = Reg32::new(SIM_SOPT2);
+
+ sopt2.modify(|v| {
+ v | SIM_SOPT2_PLLFLLSEL
+ });
}