aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bors[bot] <26634292+bors[bot]@users.noreply.github.com> 2020-01-24 15:45:14 +0000
committerGravatar GitHub <noreply@github.com> 2020-01-24 15:45:14 +0000
commit60c14ef680c68593b2cadb24aa086d62973dcad5 (patch)
treee17a95288ca1373436307b76ed1b99bafbe6bf38
parent03ac76a0a209f4af2baaf4bb56057b96a672e391 (diff)
parent60639b3a9ca22b89067124651ff86ab3c81756c1 (diff)
downloadrtic-60c14ef680c68593b2cadb24aa086d62973dcad5.tar.gz
rtic-60c14ef680c68593b2cadb24aa086d62973dcad5.tar.zst
rtic-60c14ef680c68593b2cadb24aa086d62973dcad5.zip
Merge #294
294: use the safe DWT::unlock API r=korken89 a=japaric instead of a unsafe write_volatile call Co-authored-by: Jorge Aparicio <jorge@japaric.io>
-rw-r--r--Cargo.toml2
-rw-r--r--examples/schedule.rs6
2 files changed, 5 insertions, 3 deletions
diff --git a/Cargo.toml b/Cargo.toml
index ce371f93..01b3ede3 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -47,7 +47,7 @@ name = "types"
required-features = ["__v7"]
[dependencies]
-cortex-m = "0.6.0"
+cortex-m = "0.6.2"
cortex-m-rtfm-macros = { path = "macros", version = "0.5.0" }
rtfm-core = "0.3.0"
cortex-m-rt = "0.6.9"
diff --git a/examples/schedule.rs b/examples/schedule.rs
index a1c41ca5..d5de9dbf 100644
--- a/examples/schedule.rs
+++ b/examples/schedule.rs
@@ -1,9 +1,11 @@
//! examples/schedule.rs
+#![deny(unsafe_code)]
#![deny(warnings)]
#![no_main]
#![no_std]
+use cortex_m::peripheral::DWT;
use cortex_m_semihosting::hprintln;
use panic_halt as _;
use rtfm::cyccnt::{Instant, U32Ext as _};
@@ -15,8 +17,8 @@ const APP: () = {
fn init(mut cx: init::Context) {
// Initialize (enable) the monotonic timer (CYCCNT)
cx.core.DCB.enable_trace();
- // required on devices that software lock the DWT (e.g. STM32F7)
- unsafe { cx.core.DWT.lar.write(0xC5ACCE55) }
+ // required on Cortex-M7 devices that software lock the DWT (e.g. STM32F7)
+ DWT::unlock();
cx.core.DWT.enable_cycle_counter();
// semantically, the monotonic timer is frozen at time "zero" during `init`