Commit graph

67 commits

Author SHA1 Message Date
Emil Fresk
f076b33bb9 Namespace cleanup 2020-10-21 20:25:13 +02:00
Emil Fresk
f96b25fdf2 Updated examples
More work
2020-10-21 20:25:05 +02:00
Emil Fresk
6808cc7cdf Merge branch 'master' into spawn_experiment 2020-10-15 18:27:48 +02:00
bors[bot]
1cda9eaecc
Merge #371
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-15 16:01:07 +00:00
Henrik Tjäder
37ee3a47af Create Enum containing all tasks 2020-10-15 15:56:20 +00:00
Emil Fresk
5ac16f6aae Merge branch 'master' into spawn_experiment 2020-10-15 17:55:00 +02:00
Emil Fresk
48abc26e85 Detect if the rt flag is defined in the PAC/HAL
Better error message

Improved error string

Update UI tests
2020-10-15 16:06:30 +02:00
Emil Fresk
5b8e6a22ab Fixing examples and tests, modules now import user imports correctly
Fmt

Correct syntax crate

UI test fix

Fix build script

Cleanup

More cleanup
2020-10-11 20:35:50 +02:00
Emil Fresk
524273c96a Now with spawn/schedule from anywhere 2020-10-11 18:38:38 +02:00
Per Lindgren
aac97a2109 spawn POC works, likely unsound, cleanup 2020-10-05 22:02:04 +02:00
Per Lindgren
6bd168d711 spawn POC works, likely unsound 2020-10-05 21:57:44 +02:00
Henrik Tjäder
96e6350c0d Rename const_app to mod_app 2020-10-01 16:22:37 +00:00
Henrik Tjäder
3ab2c049c5 Remove stale comment 2020-09-29 11:56:56 +00:00
Henrik Tjäder
487fea45ce Keep user code as-is within the module, add example 2020-09-29 11:56:56 +00:00
Henrik Tjäder
a151974245 cfg_core is gone, cargo fmt 2020-09-25 14:33:02 +00:00
Henrik Tjäder
0c7a619432 Compose the use-statements, reduce debug-printouts 2020-09-25 14:29:34 +00:00
Henrik Tjäder
46bf583cc2 Handle user hardware and software tasks and some resources 2020-09-25 14:29:34 +00:00
Henrik Tjäder
c718413cb5 Generate mod instead of const, handle import of idle and init 2020-09-25 14:29:34 +00:00
Henrik Tjäder
d06cf91acc Remove stale code, fix comment styling 2020-09-01 17:48:53 +00:00
Henrik Tjäder
f151d5871c Cargo fmt 2020-09-01 14:50:06 +00:00
Henrik Tjäder
76cf14c520 Brutally yank out multicore 2020-09-01 14:50:06 +00:00
Henrik Tjäder
602a5b4374 Rename RTFM to RTIC 2020-06-11 17:18:29 +00:00
bors[bot]
8898224950
Merge #314
314: do not optimize build deps r=korken89 a=japaric

this may make CI faster

Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2020-06-11 16:33:39 +00:00
Henrik Tjäder
137283959c Run cargo fmt 2020-06-03 10:34:01 +00:00
Jorge Aparicio
3ed4fe3771 TODO(remove) codegen no-op 2020-05-26 22:21:32 +02:00
Henrik Tjäder
f58f37b2b9 Retain cfg-attributes on resources 2020-04-22 09:26:13 +00:00
Jorge Aparicio
0e146f8d11 adapt to changes in rtfm-syntax 2019-08-20 15:17:37 +02:00
Jorge Aparicio
be92041a59 WIP 2019-06-29 09:11:57 +02:00
Jorge Aparicio
df4a7fd3e5 check that the app is not compiled for more cores than were specified 2019-06-24 14:15:00 +02:00
Jorge Aparicio
596cf585ea Monotonic trait is safe; add MultiCore trait 2019-06-24 14:09:12 +02:00
Jorge Aparicio
9897728709 add homogeneous multi-core support 2019-06-18 10:31:31 +02:00
Jorge Aparicio
81275bfa4f rtfm-syntax refactor + heterogeneous multi-core support 2019-06-13 23:56:59 +02:00
Jorge Aparicio
30d6327001 bump heapless dependency to v0.5.0; remove "nightly" feature
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-21 15:22:25 +02:00
Jorge Aparicio
fafc94ccfb removes the maybe_uninit feature gate
and stop newtyping `core::mem::MaybeUninit`
2019-05-21 14:18:43 +02:00
Jorge Aparicio
36073a6342 generate resource proxies only when needed
only `static mut` resources need proxies
2019-05-09 18:25:34 +02:00
Jorge Aparicio
a452700628 implement RFCs 147 and 155, etc.
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-05-01 20:49:25 +02:00
Jorge Aparicio
a562fb3232 v0.4.3 2019-04-21 18:20:57 +02:00
bors[bot]
77def32454 Merge #170
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-16 22:54:18 +00:00
Jorge Aparicio
210921e06c now fix the fix 2019-04-17 00:18:02 +02:00
Jorge Aparicio
53f0ca1504 more nightly fixes 2019-04-16 23:41:00 +02:00
Jorge Aparicio
10d2638488 [NFC] fix nightly ci 2019-04-16 23:17:28 +02:00
Jorge Aparicio
aa7eec0299 check task priority at compile time
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-04-16 23:04:24 +02:00
Jorge Aparicio
8eccef7d9c refactor: make binds harder to misuse 2019-02-26 23:25:16 +01:00
Jorge Aparicio
11f795aaf6 add binds example and make it work 2019-02-26 23:22:34 +01:00
Jorge Aparicio
d0f33add0a add binds argument to the interrupt and exception attributes 2019-02-26 23:22:31 +01:00
Jorge Aparicio
88078e7770 add "nightly" feature 2019-02-19 12:37:25 +01:00
Jorge Aparicio
e5e54ee8f1 rebase fix 2019-02-16 00:28:12 +01:00
Jorge Aparicio
2b8e743f35 make debug builds reproducible 2019-02-16 00:25:48 +01:00
Hugo van der Wijst
577d188f72 Make generated names stable when sorting. 2019-02-16 00:23:01 +01:00
Hugo van der Wijst
a654d13eef Seed RNG with package name and prepend string to full random name. 2019-02-16 00:23:01 +01:00