Commit graph

31 commits

Author SHA1 Message Date
onsdagens
805ea267a8
Add SYSTIMER based ESP32-C3 monotonic (#972)
* add esp32c3 monotonic

* fix tests
2024-09-29 04:21:14 +00:00
Finomnis
8c23e178f3
Monotonic rewrite (#874)
* Rework timer_queue and monotonic architecture

Goals:
 * make Monotonic purely internal
 * make Monotonic purely tick passed, no fugit involved
 * create a wrapper struct in the user's code via a macro that then
   converts the "now" from the tick based monotonic to a fugit based
   timestamp

We need to proxy the delay functions of the timer queue anyway,
so we could simply perform the conversion in those proxy functions.

* Update cargo.lock

* Update readme of rtic-time

* CI: ESP32: Redact esp_image: Too volatile

* Fixup: Changelog double entry rebase mistake

---------

Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2024-04-10 22:00:38 +00:00
Henrik Tjäder
e4cc5fd17b
CI: Add ESP32-C3 QEMU support (#914)
* CI: ESP32-C3: QEMU support

* CI: ESP32C3: Script for preparing and running

* CI: gitignore qemu.log

* ESP32-C3: Example sw_and_hw output
2024-04-10 18:35:14 +00:00
Román Cárdenas Rodríguez
4060c3def8
RISC-V support over CLINT (#815)
* Rebase to master

* using interrupt_mod

* bug fixes

* fix other backends

* Add changelog

* forgot about rtic-macros

* backend-specific configuration

* core peripherals optional over macro argument

* pre_init_preprocessing binding

* CI for RISC-V (WIP)

* separation of concerns

* add targets for RISC-V examples

* remove qemu feature

* prepare examples folder

* move examples all together

* move ci out of examples

* minor changes

* add cortex-m

* new xtask: proof of concept

* fix build.yml

* feature typo

* clean rtic examples

* reproduce weird issue

* remove unsafe code in user app

* update dependencies

* allow builds on riscv32imc

* let's fix QEMU

* Update .github/workflows/build.yml

Co-authored-by: Henrik Tjäder <henrik@tjaders.com>

* New build.rs

* removing test features

* adapt ui test to new version of clippy

* add more examples to RISC-V backend

* proper configuration of heapless for riscv32imc

* opt-out examples for riscv32imc

* point to new version of riscv-slic

* adapt new macro bindings

* adapt examples and CI to stable

* fix cortex-m CI

* Review

---------

Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2024-03-20 20:06:47 +00:00
Emil Fresk
306aa47170 Add rtic-timer (timerqueue + monotonic) and rtic-monotonics (systick-monotonic) 2023-03-01 00:33:31 +01:00
Emil Fresk
d6d58b0eb8 Async tasks can now take arguments at spawn again 2023-03-01 00:33:30 +01:00
Emil Fresk
6d252785e8 Support 0 prio tasks 2023-03-01 00:33:28 +01:00
Emil Fresk
35c97b61c1 All examples pass with cargo xtask --target all 2023-03-01 00:33:28 +01:00
Emil Fresk
582c602912 Old xtask test pass 2023-03-01 00:31:01 +01:00
Henrik Tjäder
dbc6964f88 example: pool: Do not print the addr
Unstable and prone to fail CI
2023-02-26 17:30:09 +01:00
Henrik Tjäder
be74469ab7 Enable at least masking out a Monotonic
Simplest case working, but leaves a lot to ask
as shown by examples/cfg-monotonic.rs

Current `rtic-syntax` is unable to validate and
handle the `cfgs[]` which limits the usefulness
of this.
2023-01-22 12:00:08 +01:00
Per Lindgren
f86dab5ff3 Added support for SRP based scheduling for armv6m 2022-03-02 13:23:47 +01:00
Henrik Tjäder
7af09cb126 book: Restore accidentally removed files 2022-02-08 19:08:29 +01:00
Per Lindgren
305e8295d5 Drift free timing examples 2022-01-04 22:21:57 +01:00
Emil Fresk
ef4e4aaaa3 cargo xtask is now ~40x faster 2021-12-26 11:05:35 +01:00
Henrik Tjäder
8c8f7f12c3 Idle: Switch to NOP instead of WFI
Add example how to get old WFI behaviour
2021-12-14 22:18:17 +01:00
Emil Fresk
b71df58f2f The great docs update 2021-09-23 16:11:04 +02:00
Jorge Aparicio
5805a05fac book/resources: rm #[task_local] mention; add #[lock_free] example
the #[task_local] attribute was removed
2021-07-22 09:17:39 +02:00
Jorge Aparicio
f9a7efb235 update expected example output (take 2) 2021-07-22 08:58:17 +02:00
Jorge Aparicio
af631719f4 update expected example output 2021-07-22 08:42:44 +02:00
Emil Fresk
f111c825ba Added multilock to CI 2020-11-14 17:06:03 +01:00
Per Lindgren
0cb7cb0ba8 resources 2020-11-12 18:55:11 +01:00
Emil Fresk
d9e8b68662 Fixes an issue where one could double take the cortex_m Peripheral
Added qemu test

Added comment

Typo

Add cfg for homogeneous

More cfg

Now multicore working

Add .run file
2020-06-30 22:06:57 +02:00
Jorge Aparicio
7ca5bbf404 fix preempt example 2019-08-21 10:53:13 +02:00
Jorge Aparicio
07b2b4d830 doc up 2019-08-21 10:17:27 +02:00
Jorge Aparicio
9195038c87 implement RFC #212 2019-07-10 22:42:44 +02:00
Jorge Aparicio
ccd7f4586b book: indirection for faster message passing 2019-05-01 21:32:00 +02:00
Jorge Aparicio
473a0e7bb5 add .run file 2019-04-21 18:05:24 +02:00
Jorge Aparicio
11f795aaf6 add binds example and make it work 2019-02-26 23:22:34 +01:00
Jorge Aparicio
37a0692a0f impl Mutex on all shared resources
document how to write generic code that operates on resources
2018-11-04 18:50:42 +01:00
Jorge Aparicio
c631049efc v0.4.0
closes #32
closes #33
2018-11-03 17:16:55 +01:00