aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-06-24Monotonic trait is safe; add MultiCore traitJorge Aparicio
2019-06-20RFC #207Jorge Aparicio
2019-06-18homogeneous mode doesn't depend on microampJorge Aparicio
2019-06-18add homogeneous multi-core supportJorge Aparicio
2019-06-13rtfm-syntax refactor + heterogeneous multi-core supportJorge Aparicio
2019-05-21Merge #194bors[bot]
194: bump heapless dependency to v0.5.0; remove "nightly" feature r=japaric a=japaric with the upcoming version of heapless we are able to initialize all internal queues in const context removing the need for late initialization this commit also removes the "nightly" feature because all the optimization provided by it are now enabled by default Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-21Merge #193bors[bot]
193: remove unused check r=japaric a=japaric that was added in #140 but it's no longer required this PR also adds some cfail tests to test the updated code Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-21bump heapless dependency to v0.5.0; remove "nightly" featureJorge Aparicio
with the upcoming version of heapless we are able to initialize all internal queues in const context removing the need for late initialization this commit also removes the "nightly" feature because all the optimization provided by it are now enabled by default
2019-05-21remove unused checkJorge Aparicio
that was added in #140 but it's no longer required
2019-05-21Merge #192bors[bot]
192: removes the maybe_uninit feature gate r=japaric a=japaric and stop newtyping `core::mem::MaybeUninit` this also fixes CI on nightly Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-21removes the maybe_uninit feature gateJorge Aparicio
and stop newtyping `core::mem::MaybeUninit`
2019-05-09Merge #189bors[bot]
189: write generated code to disk for easier inspection r=japaric a=japaric now that the generated code is actually readable let's make it easier to access this commit also documents how to inspect the generated code via `rtfm-expansion.rs` and `cargo-expand` Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-09Merge #191bors[bot]
191: generate resource proxies only when needed r=japaric a=japaric only `static mut` resources need proxies just a codegen optimization Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-09Merge #175bors[bot]
175: document internals r=japaric a=japaric note that this assumes that RFC #155 has been implemented [Rendered text](https://japaric.github.io/rtfm5/book/en/internals.html) Do not merge this before PR #176 Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-09generate resource proxies only when neededJorge Aparicio
only `static mut` resources need proxies
2019-05-08document resolution and range of Instant and DurationJorge Aparicio
2019-05-08fix typoJorge Aparicio
2019-05-08write generated code to disk for easier inspectionJorge Aparicio
now that the generated code is actually readable let's make it easier to access this commit also documents how to inspect the generated code via `rtfm-expansion.rs` and `cargo-expand`
2019-05-01document internalsJorge Aparicio
note that this assumes that RFC #155 has been implemented
2019-05-01Merge #176bors[bot]
176: implement RFCs 147 and 155, fix #141, etc. r=japaric a=japaric This PR: - Implements RFC 147: "all functions must be safe" - Implements RFC 155: "explicit Context parameter" - Implements the pending breaking change #141: reject assign syntax in `init` (which was used to initialize late resources) - Refactors code generation to make it more readable -- there are no more random identifiers in the output -- and align it with the book description of RTFM internals (see PR #175). - Makes the framework hard depend on `core::mem::MaybeUninit` and thus will require nightly until that API is stabilized. - Fixes a ceiling analysis bug where the priority of the system timer was not considered in the analysis (TODO backport this into the v0.4.x branch). - Shrinks the size of all the internal queues by turning `AtomicUsize` indices into `AtomicU8`s. - Removes the integration with `owned_singleton`. closes #141 closes #147 closes #155 Additionally: - This changes CI to push v0.5.x docs to https://japaric.github.io/rtfm5/book/en/ -- we need to do this because our official docs are hosted on https://japaric.github.io/cortex-m-rtfm and we need to keep them on v0.4.x until we release v0.5.0 - I propose that we use the master branch to develop the upcoming v0.5.0. - I have created a branch v0.4.x for backports; new v0.4.x releases will come from that branch. r? @korken89 @texitoi, sorry for doing all the impl work in a single commit -- I know that makes things harder to review for you. Suggestions for compile-pass and compile-fail tests are welcome Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-01book: indirection for faster message passingJorge Aparicio
2019-05-01rtfm::app: update error messageJorge Aparicio
2019-05-01push docs to another repo & update READMEJorge Aparicio
2019-05-01travis: disable builds on stableJorge Aparicio
2019-05-01ci: the singleton example has been removedJorge Aparicio
2019-05-01update the bookJorge Aparicio
2019-05-01test RFC 147Jorge Aparicio
2019-05-01update compile-fail testsJorge Aparicio
2019-05-01update compile-pass testsJorge Aparicio
2019-05-01update examplesJorge Aparicio
2019-05-01implement RFCs 147 and 155, etc.Jorge Aparicio
This commit: - Implements RFC 147: "all functions must be safe" - Implements RFC 155: "explicit Context parameter" - Implements the pending breaking change #141: reject assign syntax in `init` (which was used to initialize late resources) - Refactors code generation to make it more readable -- there are no more random identifiers in the output -- and align it with the book description of RTFM internals. - Makes the framework hard depend on `core::mem::MaybeUninit` and thus will require nightly until that API is stabilized. - Fixes a ceiling analysis bug where the priority of the system timer was not considered in the analysis. - Shrinks the size of all the internal queues by turning `AtomicUsize` indices into `AtomicU8`s. - Removes the integration with `owned_singleton`.
2019-04-21bors: do not merge PRs labeled S-blockedJorge Aparicio
2019-04-21Merge #174bors[bot]
174: v0.4.3 r=japaric a=japaric prepares a new release Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-04-21v0.4.3Jorge Aparicio
2019-04-21Merge pull request #169 from japaric/late-must-be-sendJorge Aparicio
book: note that late resources must be Send
2019-04-21add .run fileJorge Aparicio
2019-04-21book: resources shared with init must also be `Send`Jorge Aparicio
2019-04-21note that late resources must be SendJorge Aparicio
2019-04-16Merge #170bors[bot]
170: check task priority at compile time r=TeXitoi a=japaric before we were checking the priority at runtime. The compile time error message when the priority is too high is kind of awful though. Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-04-16Merge #171bors[bot]
171: [NFC] fix nightly ci r=japaric a=japaric Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-04-17now fix the fixJorge Aparicio
2019-04-16more nightly fixesJorge Aparicio
2019-04-16[NFC] fix nightly ciJorge Aparicio
2019-04-16check task priority at compile timeJorge Aparicio
before we were checking the priority at runtime. The compile time error message when the priority is too high is kind of awful though.
2019-02-27Merge #162bors[bot]
162: v0.4.2 r=TeXitoi a=japaric this PR prepares a new release r? @korken89 || @TeXitoi Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-02-27v0.4.2Jorge Aparicio
2019-02-26Merge #161bors[bot]
161: (ru) binds r=japaric a=japaric resubmitting PR #160 Co-authored-by: Andrey Zgarbul <zgarbul.andrey@gmail.com>
2019-02-27(ru) bindsAndrey Zgarbul
2019-02-26Merge #158bors[bot]
158: implement RFC #128: #[interrupt(binds = ..)] r=korken89 a=japaric closes #128 r? @korken89 or @TeXitoi suggestions for tests are welcome! (2 of the 3 tests I added hit bugs in my implementation) Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-02-26refactor: make `binds` harder to misuseJorge Aparicio