Commit graph

32 commits

Author SHA1 Message Date
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
onsdagens
906278e310
Adjust esp32c3 codegen, bump pac to 0.21.0 (#906)
* adjust esp32c3 codegen, bump pac to 0.21.0

* add esp32c3 example

* adjust workflow flags

* CI: Fix esp32c3 comment

* esp32c3: Remove commented out git-dep

* CI: Actually check the ESP32-C3 examples

* Autoformat rtic/cargo.toml

---------

Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
2024-04-04 09:35:41 +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
4a23c8d6da
rtic-sync: Remove unstable flag, and add defmt derives (#889) 2024-02-23 07:38:10 +00:00
Finomnis
c227a71d24
Refactor race condition free timer helper (#850)
* Implement half_period_counter in rtic-time

* Rename compute_now to calculate_now, use it in stm32 and imxrt

* Add more tests

* Add some docs

* Fix clippy warning, add imxrt timer to monotonics tests

* Bump dependency version to make sure monotonics will build properly

* Add changelog to rtic-monotonics

* Add more docs

* Add more docs

* Finish documentation

* Fix typos

* Switch from atomic-polyfill to portable-atomic

* Some more doc fixes

* More doc fixes

* Minor doc fix

* Minor doc fix

* Fix Atomics not existing

* Fix example

* Minor example improvement

* Revert back to atomic-polyfill

* Fix cargo.toml formatting

* Remove atomic-polyfill

* Attempt to fix unused macro warning

* Remove atomics completely from half period counter

* Minor doc fix

* Doc fixes

* Doc fixes

* Remove obsolete comment

* Fix ordering in monotonic initialization sequence
2023-12-04 14:53:02 +00:00
Nils Fitinghoff
ff5cad9cd2 rtic-sync: Add SPI bus sharing with arbiter 2023-11-22 19:42:46 +00:00
Nils Fitinghoff
4ea73021d6 rtic-monotonics: Add 64-bit SysTick monotonic
Counting at 1 kHz, 32 bits for counting ticks is not enough to ensure
monotonicity for more than 50 days. Add a feature to change the backing
storage to 64 bits.
2023-08-25 15:16:18 +00:00
datdenkikniet
02215b6972 Check rtic-monotonics with eh-async enabled 2023-04-23 21:46:47 +02:00
datdenkikniet
e4b673646a Tests should always deny warnings 2023-04-16 13:30:23 +02:00
datdenkikniet
2db26c1015 Deny on warnings in xtasks 2023-04-16 13:08:46 +02:00
datdenkikniet
66a3d02b45 Rename cargo_commands -> run
Rename command -> cargo_command
2023-04-16 13:08:46 +02:00
datdenkikniet
404867cdf9 CargoCommand can take any package 2023-04-16 13:08:46 +02:00
datdenkikniet
9dc9f49263 Use chdir() instead of unstable option, also confirm whenver a command succeeds because
why not
2023-04-16 13:08:46 +02:00
datdenkikniet
859cd418f0 Rename some things 2023-04-16 13:08:46 +02:00
datdenkikniet
63b7024cb9 xtask: build usage examples and general improvements 2023-04-16 13:08:46 +02:00
datdenkikniet
c6f4b834c1 Fix fmt 2023-04-15 14:43:40 +02:00
datdenkikniet
feb00a9755 Add support for "feature mixer" 2023-04-15 14:32:32 +02:00
datdenkikniet
461023e3b8 More emojis and correct place for things 2023-04-15 13:45:58 +02:00
datdenkikniet
df69b35c25 More housekeeping and making it work that bit better 2023-04-15 13:21:09 +02:00
datdenkikniet
cefb622cf8 Make all globals actually global 2023-04-15 13:17:59 +02:00
datdenkikniet
525703358b Rework command execution structure and make rayon optional (since it's not necessarily faster
due to workspace wide lockfile contention)
2023-04-15 12:33:46 +02:00
datdenkikniet
480aa21059 Always run stuff for all packages if none is specified 2023-04-15 10:03:52 +02:00
datdenkikniet
4adae80f2d xtask: don't add default arguments if building for a no_std target 2023-04-15 01:08:28 +02:00
datdenkikniet
18522122f1 xtask: forward globals through the chain and add stderr-inheritance flag 2023-04-15 01:08:28 +02:00
datdenkikniet
25c2c59a42 Add feature to xtask test for rtic-time 2023-04-10 10:57:22 +02:00
Henrik Tjäder
a5ede5408c xtask: rtic-monotonics: no tests argument 2023-03-04 21:32:37 +01:00
Henrik Tjäder
62e687242a ci: Add v6 uitest feature 2023-03-04 21:03:46 +01:00
Henrik Tjäder
3789798e33 xtask: clippy fixes 2023-03-04 20:52:29 +01:00
Henrik Tjäder
2e63f5bca3 ci: Add rtic-uitest feature
Fixes the trybuild ui tests for rtic crate
2023-03-04 20:22:45 +01:00
Henrik Tjäder
3908cbf7e8 xtask: Allow passing arguments to book and doc 2023-03-02 22:02:19 +01:00
Henrik Tjäder
39a06368c8 xtask: rtic-sync 2023-03-02 19:40:50 +01:00
Henrik Tjäder
512bab17cc xtask: Split out arg parsing 2023-03-01 00:35:27 +01:00