aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-10-19async haxx (public Priority)async_experimentGravatar Per Lindgren 3-2/+7
2020-10-15Merge #397Gravatar bors[bot] 1-2/+2
397: Use latest GHA mdBook action r=korken89 a=AfoHT Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-15Use latest GHA mdBook actionGravatar Henrik Tjäder 1-2/+2
2020-10-15Merge #393Gravatar bors[bot] 11-29/+61
393: Implement all clippy suggestions r=korken89 a=AfoHT Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-15Implement all clippy suggestionsGravatar Henrik Tjäder 11-29/+61
2020-10-15Merge #390Gravatar bors[bot] 37-894/+418
390: Spawn and schedule from anywhere r=AfoHT a=korken89 This PR moves RTIC to the spawn and schedule from anywhere syntax. Notable changes: * We do no longer support non-`Send` types. * Some extra code is generated as any task may spawn/schedule any task. However Rust/LLVM does a great job optimizing away non used instantiations (no real code-size difference observed). * Worst case priority inversion has increased, but it is now predictable. Upsides: * With this we should be able to support async/await. * RTIC tasks can now be callbacks (spawned and scheduled). * RTIC tasks can be stored. Needs the following PR to land first: https://github.com/rtic-rs/rtic-syntax/pull/34 The following now works: ```rust #[rtic::app(device = lm3s6965, monotonic = rtic::cyccnt::CYCCNT)] mod app { #[init] fn init(mut cx: init::Context) -> init::LateResources { // Init stuff... // New spawn syntax foo::spawn().unwrap(); // New schedule syntax bar::schedule(now + 4_000_000.cycles()).unwrap(); init::LateResources {} } #[task] fn foo(_: foo::Context) {} #[task] fn bar(_: bar::Context) {} extern "C" { fn SSI0(); } } ``` Co-authored-by: Per Lindgren <per.lindgren@ltu.se> Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
2020-10-15Merge branch 'master' into spawn_experimentGravatar Emil Fresk 10-3/+443
2020-10-15Use master branch on syntaxGravatar Emil Fresk 1-1/+1
2020-10-15Fix comments in examplesGravatar Emil Fresk 2-2/+2
2020-10-15Merge #395Gravatar bors[bot] 1-3/+6
395: Made relation between priority and number explicit r=korken89 a=diondokter When quickly reading through the priorities chapter, I couldn't find in which order the priorities were, so I assumed it was the same as in the hardware. In the cortex-m hardware, interrupts with the **lower** priority number will preempt the other interrupts. RTIC does the reverse, so I think it's good to be more explicit about it. Co-authored-by: Dion Dokter <diondokter@gmail.com>
2020-10-15Merge #371Gravatar bors[bot] 9-1/+439
371: task_local and lock_free r=korken89 a=AfoHT Getting this going to test with GHA For further discussion see https://github.com/rtic-rs/rfcs/issues/30 Co-authored-by: Per <Per Lindgren> Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-15Updated syntax crateGravatar Emil Fresk 1-1/+1
2020-10-15Create Enum containing all tasksGravatar Henrik Tjäder 1-0/+17
2020-10-15Changed branch for rtic-syntaxGravatar Henrik Tjäder 1-2/+2
2020-10-15Updated examples and rtic-nameGravatar Henrik Tjäder 11-342/+141
2020-10-15Add example with features on all resources combined with lock_free and ↵Gravatar Henrik Tjäder 2-0/+192
task_local
2020-10-15Print module name and priorityGravatar Henrik Tjäder 1-74/+61
2020-10-15task_local and lock_free analysis (take 1)Gravatar Per 7-1/+444
2020-10-15Merge branch 'master' into spawn_experimentGravatar Emil Fresk 8-18/+58
2020-10-15Made relation between priority and number explicitGravatar Dion Dokter 1-3/+6
When quickly reading through the priorities chapter, I couldn't find in which order the priorities were, so I assumed it was the same as in the hardware. In the cortex-m hardware, interrupts with the **lower** priority number will preempt the other interrupts. RTIC does the reverse, so I think it's good to be more explicit about it.
2020-10-15Merge #394Gravatar bors[bot] 6-15/+7
394: Detect if the rt flag is defined in the PAC/HAL r=AfoHT a=korken89 This stops RTIC applications from compiling if one has forgotten to set the `rt` flag in the PAC/HAL. The error: ``` error[E0433]: failed to resolve: could not find `interrupt` in `you_must_enable_the_rt_feature_for_the_pac_in_your_cargo_toml` --> src/main.rs:8:1 | 8 | #[rtic::app(device = stm32l4xx_hal::pac)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `interrupt` in `you_must_enable_the_rt_feature_for_the_pac_in_your_cargo_toml` | = note: this error originates in an attribute macro (in Nightly builds, run with -Z macro-backtrace for more info) ``` Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
2020-10-15Detect if the rt flag is defined in the PAC/HALGravatar Emil Fresk 6-15/+7
Better error message Improved error string Update UI tests
2020-10-13Merge #392Gravatar bors[bot] 2-6/+25
392: device path must be absolute; clarify r=AfoHT a=dcarosone feel free to nitpick path terminology Co-authored-by: Daniel Carosone <Daniel.Carosone@gmail.com>
2020-10-13device path must be absolute; clarifyGravatar Daniel Carosone 2-6/+25
2020-10-12Merge #388Gravatar bors[bot] 4-8/+36
388: Now core contains the same `Peripherals` type based on monotonic r=AfoHT a=korken89 Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
2020-10-12UI fixGravatar Emil Fresk 2-6/+6
2020-10-11Fixing examples and tests, modules now import user imports correctlyGravatar Emil Fresk 28-246/+148
Fmt Correct syntax crate UI test fix Fix build script Cleanup More cleanup
2020-10-11Now with spawn/schedule from anywhereGravatar Emil Fresk 19-693/+171
2020-10-08Merge branch 'master' into spawn_experimentGravatar Emil Fresk 51-468/+650
2020-10-08Added critical sectionsGravatar Emil Fresk 1-17/+11
2020-10-07Now core contains the same `Peripherals` type based on monotonicGravatar Emil Fresk 2-2/+30
2020-10-07Merge #384Gravatar bors[bot] 1-6/+14
384: Fix MD-lints, add Matrix and meeting notes badges r=korken89 a=AfoHT Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-07Merge #385Gravatar bors[bot] 5-17/+17
385: Doclints r=korken89 a=dcarosone Some minor doc lints and wording cleanup Co-authored-by: Daniel Carosone <Daniel.Carosone@gmail.com>
2020-10-07minor md lints and wording clarificationGravatar Daniel Carosone 2-11/+12
2020-10-07Merge branch 'master'Gravatar Daniel Carosone 87-660/+1149
of https://github.com/rtic-rs/cortex-m-rtic
2020-10-06Fix MD-lints, add Matrix and meeting notes badgesGravatar Henrik Tjäder 1-6/+14
2020-10-06Merge #173Gravatar bors[bot] 1-0/+8
173: add sandbox example r=AfoHT a=etrombly Added a real world example for my sandbox project. Co-authored-by: Eric Trombly <etrombly@yahoo.com>
2020-10-06Merge #346Gravatar bors[bot] 1-3/+3
346: fix badges / clean up README r=AfoHT a=fuchsnj Co-authored-by: Nathan Fox <fuchsnj@gmail.com> Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-06Restore links to docsGravatar Henrik Tjäder 1-0/+4
2020-10-05spawn examples updatedGravatar Per Lindgren 2-1/+40
2020-10-05spawn POC works, likely unsound, cleanupGravatar Per Lindgren 3-81/+0
2020-10-05spawn POC works, likely unsoundGravatar Per Lindgren 9-10/+202
2020-10-05Merge #370Gravatar bors[bot] 1-3/+2
370: Use latest mdBook r=korken89 a=AfoHT Test to see if latest mdBook works with current formatting, see #369 Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-05Merge #383Gravatar bors[bot] 5-332/+335
383: Split up migration guides into its own sections r=AfoHT a=korken89 Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
2020-10-05Split up migration guides into its own sectionsGravatar Emil Fresk 5-332/+335
2020-10-05Merge #382Gravatar bors[bot] 1-0/+54
382: Run the macro tests r=korken89 a=AfoHT Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2020-10-05Run the macro testsGravatar Henrik Tjäder 1-0/+54
2020-10-05Merge #372Gravatar bors[bot] 41-110/+170
372: Now late resources are always used r=AfoHT a=korken89 Awaits the PR in `rtic-syntax`: https://github.com/rtic-rs/rtic-syntax/pull/32 Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
2020-10-05Added back accidentally removed blockGravatar Emil Fresk 2-2/+7
2020-10-05Move to master of rtic-syntaxGravatar Emil Fresk 1-1/+1