Dario Nieuwenhuis
4d71f432ad
Update manifests to satisfy new checks.
2025-09-22 00:47:08 +02:00
Dario Nieuwenhuis
55b3c5c6e8
ci: use devtool to build.
2025-09-11 21:52:47 +02:00
Dario Nieuwenhuis
6ec9bcb1c4
executor: add priority scheduler.
2025-09-11 16:33:48 +02:00
Dario Nieuwenhuis
e1209c5563
executor: make Deadline actually private.
2025-09-11 15:40:33 +02:00
Dion Dokter
2e21dcf2e6
Fix metadata
2025-09-11 14:45:41 +02:00
Dion Dokter
401fac6ea9
Make requested API changes
2025-09-11 14:45:40 +02:00
Dion Dokter
adb0c3e947
Add more metadata
2025-09-11 14:45:27 +02:00
diondokter
52d1785605
Introduce metadata-deadline and let the EDF scheduler use it
2025-09-11 14:45:27 +02:00
James Munns
20b56b0fe0
Update to use critical-section::Mutex instead of mutex::BlockingMutex
...
This allows the scheduler to better collaborate with existing critical sections
2025-09-11 14:45:06 +02:00
James Munns
db063945e7
Inline the "MutexTransferStack" impl as it is unclear whether it will be merged upstream
2025-09-11 14:45:06 +02:00
James Munns
d88ea8dd2a
Update with cordyceps changes
2025-09-11 14:45:06 +02:00
James Munns
7af8f35a50
There can be only one (run queue)
2025-09-11 14:45:06 +02:00
James Munns
0e28ba1091
"Deadline Rank Sorted Scheduler" -> "Earliest Deadline First Scheduler"
2025-09-11 14:45:06 +02:00
James Munns
b1b2955b60
Switch to released version of cordyceps
, add error if used w/o atomics
2025-09-11 14:45:06 +02:00
James Munns
08a57b1cb0
Update with changes from the PR
2025-09-11 14:45:06 +02:00
James Munns
ed2e51bfa4
Dependency enablement trickery
2025-09-11 14:45:06 +02:00
James Munns
8c70aafd4b
Make some things more consistent
2025-09-11 14:45:06 +02:00
James Munns
1f50e4d496
Implement Deadline Ranked Scheduling
...
This implements a minimal version of Deadline Rank Scheduling, as well as ways to access and set Deadlines.
This still needs some UX improvements, but is likely Enough for testing.
2025-09-11 14:45:06 +02:00
James Munns
535c80e61f
Add initial DRS scheduler placeholder
...
* Start hacking in cordyceps
This adds a third kind of runqueue, for now it should work the same as the
current "atomics" runqueue, but uses a cordyceps TransferStack instead of
the existing home-rolled linked list.
* Clean up, use new cordyceps feature
* A bit more cleanup
* Update docs to be more clear
2025-09-11 14:45:06 +02:00
Gabriel Smith
86aff0e63e
chore: bump embassy-executor to 0.9.1 to match released version
2025-09-08 14:48:06 -04:00
Dario Nieuwenhuis
286d887529
executor: always name main task main
, not just with rtos-trace.
...
Also fixes the warning about the `rtos-trace` feature not existing in embassy-executor-macros.
2025-09-05 14:57:05 +02:00
Dániel Buga
219cf09aab
Remove features, fix changelog
2025-09-02 08:34:07 +02:00
Florian Grandel
47e45c9821
rtos-trace: upgraded feature support
...
Upgrade rtos-trace for start/stop and marker support.
These methods are not used in embassy code but can be useful in client
code.
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
2025-08-30 17:54:03 +02:00
Dario Nieuwenhuis
da9cdf0c53
executor: add "task metadata" concept, make name a task metadata.
2025-08-29 13:22:59 +02:00
Dario Nieuwenhuis
2ba34ce217
executor: allow trace and rtos-trace to coexist additively.
...
Before, enabling `trace` would enable embassy-native tracing, and
enabling *both* would *disable* embassy-native tracing.
2025-08-29 13:22:01 +02:00
Ulf Lilleengen
83f2557eac
chore: prepare embassy crate releases
2025-08-26 16:05:09 +02:00
Dario Nieuwenhuis
9f12852c38
Read crate configs from metadata.
2025-08-25 19:44:50 +02:00
Dániel Buga
74037f0493
Make TimerQueueItem opaque
2025-08-18 12:50:51 +02:00
Ulf Lilleengen
afc8be91a8
chore: Release embassy-executor version 0.8.0
2025-07-31 10:34:07 +02:00
Ulf Lilleengen
3f1ddaf60e
chore: prepare embassy-executor 0.8 release
2025-07-31 10:33:14 +02:00
Matthew Tran
3cef4f0c04
Update tests
2025-06-01 12:36:46 -05:00
Robin Mueller
5a07ea5d85
Add support for Cortex-A/R
2025-05-28 17:00:42 +02:00
Yuri Astrakhan
ef0f29f0ed
Update defmt dependencies
2025-05-18 20:52:09 +02:00
Phil-hacker
1a4b1a9476
update avr_device
2025-04-08 22:07:36 +02:00
Dániel Buga
c04b433991
embassy-sync, executor/wasm: don't select critical-section impl for std
2025-04-06 22:43:32 +02:00
Åke Amcoff
ac4f4ee807
disable critical-section/std for arch-std in embassy-executor
2025-04-05 18:36:04 +02:00
Dario Nieuwenhuis
695a6da322
Statically allocate task pools on stable Rust.
...
Thanks @0e4ef622 for the awesome idea of how to do it and the first implementation.
Co-Authored-By: Matthew Tran <0e4ef622@gmail.com>
2025-03-28 19:11:53 +01:00
Dániel Buga
9a238e6ad8
Prepare new embassy-time-*driver, embassy-executor, embassy-time
2024-12-22 20:27:15 +01:00
Dániel Buga
c6ca46c825
Set RUN_QUEUED unconditionally
2024-12-17 16:52:13 +01:00
Dániel Buga
c9f32b7e36
Attach payload to TimerQueueItem
2024-12-16 20:36:59 +01:00
Dario Nieuwenhuis
2f2e2c6031
Make integrated-timers
the default, remove Cargo feature.
2024-12-15 18:49:57 +01:00
Dániel Buga
5a5495aac4
Refactor integrated-timers
2024-12-10 21:31:42 +01:00
Ulf Lilleengen
f0be2fdce4
Extend tracing api to support executor id and end task
...
Allow applications to provide a trace implementation that only needs to
implement APIs used by the embassy executor, and provide more context in
the event of multiple executors being used.
2024-12-09 15:16:03 +01:00
Dario Nieuwenhuis
796f6c034a
Release embassy-executor 0.6.3.
2024-11-12 18:07:50 +01:00
Dario Nieuwenhuis
baeb59b5b8
executor: use WakerHack unconditionally even if nightly
feature is enabled. ( #3528 )
...
This ensures the executor compiles with all recent nightly versions,
including the stable-but-with-nightly-features-enabled xtensa rustc.
2024-11-12 16:28:26 +01:00
Dániel Buga
aeb85454e9
Also bump macros
2024-11-06 14:09:41 +01:00
Dániel Buga
94659325ab
Prep executor 0.6.2
2024-11-06 13:58:02 +01:00
Dániel Buga
1e850ae791
Detect and allow older nightlies
2024-11-06 10:48:59 +01:00
Dario Nieuwenhuis
1a24b4f018
Release embassy-executor v0.6.1, embassy-executor-macros v0.6.1
2024-10-21 01:26:02 +02:00
Dario Nieuwenhuis
8f98268723
executor: add compile-fail / ui tests.
2024-10-20 23:54:17 +02:00