Add utility to enable debug
This commit is contained in:
parent
4863d5e01e
commit
c3a521066d
@ -6,8 +6,10 @@ use crate::time::U32Ext;
|
|||||||
use core::marker::PhantomData;
|
use core::marker::PhantomData;
|
||||||
use embassy::util::Unborrow;
|
use embassy::util::Unborrow;
|
||||||
use embassy_extras::unborrow;
|
use embassy_extras::unborrow;
|
||||||
use pac::rcc::vals;
|
use pac::dbg::vals::{DbgSleep, DbgStandby, DbgStop};
|
||||||
use vals::{Dbgen, Hpre, Lptimen, Msirange, Plldiv, Pllmul, Pllon, Pllsrc, Ppre, Sw};
|
use pac::rcc::vals::{
|
||||||
|
Crypen, Dbgen, Hpre, Iophen, Lptimen, Msirange, Plldiv, Pllmul, Pllon, Pllsrc, Ppre, Sw,
|
||||||
|
};
|
||||||
|
|
||||||
/// Most of clock setup is copied from stm32l0xx-hal, and adopted to the generated PAC,
|
/// Most of clock setup is copied from stm32l0xx-hal, and adopted to the generated PAC,
|
||||||
/// and with the addition of the init function to configure a system clock.
|
/// and with the addition of the init function to configure a system clock.
|
||||||
@ -258,9 +260,23 @@ impl<'d> Rcc<'d> {
|
|||||||
LSE(())
|
LSE(())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Rcc {
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
pub fn enable_debug_wfe(&mut self, _dbg: &mut peripherals::DBGMCU, enable_dma: bool) {
|
||||||
|
// NOTE(unsafe) We have exclusive access to the RCC and DBGMCU
|
||||||
|
unsafe {
|
||||||
|
if enable_dma {
|
||||||
|
pac::RCC.ahbenr().modify(|w| w.set_dmaen(Crypen::ENABLED));
|
||||||
|
}
|
||||||
|
|
||||||
|
pac::DBGMCU.cr().modify(|w| {
|
||||||
|
w.set_dbg_sleep(DbgSleep::ENABLED);
|
||||||
|
w.set_dbg_standby(DbgStandby::ENABLED);
|
||||||
|
w.set_dbg_stop(DbgStop::ENABLED);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn enable_hsi48(&mut self, _syscfg: &mut SYSCFG, _crs: CRS) -> HSI48 {
|
pub fn enable_hsi48(&mut self, _syscfg: &mut SYSCFG, _crs: CRS) -> HSI48 {
|
||||||
let rcc = pac::RCC;
|
let rcc = pac::RCC;
|
||||||
unsafe {
|
unsafe {
|
||||||
@ -510,7 +526,7 @@ pub struct LSE(());
|
|||||||
|
|
||||||
pub unsafe fn init(config: Config) {
|
pub unsafe fn init(config: Config) {
|
||||||
let rcc = pac::RCC;
|
let rcc = pac::RCC;
|
||||||
let enabled = vals::Iophen::ENABLED;
|
let enabled = Iophen::ENABLED;
|
||||||
rcc.iopenr().write(|w| {
|
rcc.iopenr().write(|w| {
|
||||||
w.set_iopaen(enabled);
|
w.set_iopaen(enabled);
|
||||||
w.set_iopben(enabled);
|
w.set_iopben(enabled);
|
||||||
|
Loading…
Reference in New Issue
Block a user