summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2017-07-29 01:16:11 -0500
committerGravatar Jorge Aparicio <jorge@japaric.io> 2017-07-29 01:17:54 -0500
commit616054815361642678910ada3b8053ee6352ab12 (patch)
treeb55a9fd3261c58cbe4e797107867e869eed53ee9
parent2d80f3631bc3bf382ae24c25dbf8ff33af2ad430 (diff)
downloadrtic-616054815361642678910ada3b8053ee6352ab12.tar.gz
rtic-616054815361642678910ada3b8053ee6352ab12.tar.zst
rtic-616054815361642678910ada3b8053ee6352ab12.zip
v0.2.0v0.2.0
-rw-r--r--CHANGELOG.md30
-rw-r--r--Cargo.toml4
-rw-r--r--macros/Cargo.toml8
-rw-r--r--macros/src/lib.rs2
-rw-r--r--src/lib.rs22
5 files changed, 58 insertions, 8 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 889863ad..4a0d614d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,33 @@ This project adheres to [Semantic Versioning](http://semver.org/).
## [Unreleased]
+## [v0.2.0] - 2017-07-29
+
+### Added
+
+- The `app!` macro, a macro to declare the tasks and resources of an
+ application.
+
+- The `Resource` trait, which is used to write generic code that deals with
+ resources.
+
+### Changed
+
+- [breaking-change] The signature of the `atomic` function has changed.
+
+- [breaking-change] The threshold token has become a concrete type and lost its
+ `raise` method.
+
+### Removed
+
+- [breaking-change] The `tasks!` and `peripherals!` macros.
+
+- [breaking-change] The ceiling and priority tokens.
+
+- [breaking-change] The `Local`, `Resource` and `Peripheral` structs.
+
+- [breaking-change] The traits related to type level integers.
+
## [v0.1.1] - 2017-06-05
### Changed
@@ -15,5 +42,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Initial release
-[Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.1...HEAD
+[Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.2.0...HEAD
+[v0.2.0]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.1...v0.2.0
[v0.1.1]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.0...v0.1.1
diff --git a/Cargo.toml b/Cargo.toml
index f7fe92ab..f2a63e5d 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -14,12 +14,10 @@ version = "0.2.0"
[dependencies]
cortex-m = "0.3.1"
+cortex-m-rtfm-macros = "=0.2.0"
rtfm-core = "0.1.0"
static-ref = "0.2.1"
-[dependencies.cortex-m-rtfm-macros]
-path = "macros"
-
[target.'cfg(target_arch = "x86_64")'.dev-dependencies]
compiletest_rs = "0.2.8"
diff --git a/macros/Cargo.toml b/macros/Cargo.toml
index a62d2089..eda10c57 100644
--- a/macros/Cargo.toml
+++ b/macros/Cargo.toml
@@ -1,7 +1,13 @@
[package]
authors = ["Jorge Aparicio <jorge@japaric.io>"]
+categories = ["concurrency", "embedded", "no-std"]
+description = "Procedural macros of the cortex-m-rtfm crate"
+documentation = "https://docs.rs/cortex-m-rtfm-macros"
+keywords = ["arm", "cortex-m"]
+license = "MIT OR Apache-2.0"
name = "cortex-m-rtfm-macros"
-version = "0.1.0"
+repository = "https://github.com/japaric/cortex-m-rtfm"
+version = "0.2.0"
[dependencies]
error-chain = "0.10.0"
diff --git a/macros/src/lib.rs b/macros/src/lib.rs
index 2a1f72e4..bef5dcc1 100644
--- a/macros/src/lib.rs
+++ b/macros/src/lib.rs
@@ -1,4 +1,4 @@
-//! Procedural macros for the RTFM framework
+//! Procedural macros of the `cortex-m-rtfm` crate
#![deny(warnings)]
#![feature(proc_macro)]
#![recursion_limit = "128"]
diff --git a/src/lib.rs b/src/lib.rs
index 6188ed31..30a49021 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -30,7 +30,7 @@
//! # Constraints
//!
//! - Tasks must run to completion. That's it, tasks can't contain endless
-//! loops. However, you can run an endless event loop in the `idle` function.
+//! loops. However, you can run an endless event loop in the `idle` *loop*.
//!
//! - Task priorities must remain constant at runtime.
//!
@@ -44,7 +44,7 @@
//! [`svd2rust`]: https://docs.rs/svd2rust/0..0/svd2rust/
//! [`<cpu>`]: https://www.keil.com/pack/doc/CMSIS/SVD/html/elem_cpu.html
//!
-//! # More documentation
+//! # `app!`
//!
//! The `app!` macro is documented [here](../cortex_m_rtfm_macros/fn.app.html).
//!
@@ -52,6 +52,24 @@
//!
//! In increasing grade of complexity. See the [examples](./examples/index.html)
//! module.
+//!
+//! # References
+//!
+//! - Baker, T. P. (1991). Stack-based scheduling of realtime processes.
+//! *Real-Time Systems*, 3(1), 67-99.
+//!
+//! > The original Stack Resource Policy paper. [PDF][srp].
+//!
+//! [srp]: http://www.cs.fsu.edu/~baker/papers/mstacks3.pdf
+//!
+//! - Eriksson, J., Häggström, F., Aittamaa, S., Kruglyak, A., & Lindgren, P.
+//! (2013, June). Real-time for the masses, step 1: Programming API and static
+//! priority SRP kernel primitives. In Industrial Embedded Systems (SIES),
+//! 2013 8th IEEE International Symposium on (pp. 110-113). IEEE.
+//!
+//! > A description of the RTFM task and resource model. [PDF][rtfm]
+//!
+//! [rtfm]: http://www.diva-portal.org/smash/get/diva2:1005680/FULLTEXT01.pdf
#![deny(missing_docs)]
#![deny(warnings)]
#![feature(proc_macro)]