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>
This commit is contained in:
Finomnis 2024-04-11 00:00:38 +02:00 committed by GitHub
parent e4cc5fd17b
commit 8c23e178f3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 2637 additions and 1676 deletions

View file

@ -64,25 +64,28 @@ impl Package {
}
Package::RticMonotonics => {
let features = if partial {
&["cortex-m-systick", "rp2040", "nrf52840"][..]
&[
"cortex-m-systick",
"rp2040",
"nrf52840",
"imxrt_gpt1,imxrt-ral/imxrt1062",
"stm32_tim2,stm32h725ag",
][..]
} else {
&[
"cortex-m-systick,embedded-hal-async",
"cortex-m-systick,systick-100hz,embedded-hal-async",
"cortex-m-systick,systick-10khz,embedded-hal-async",
"cortex-m-systick,embedded-hal-async,systick-64bit",
"cortex-m-systick,systick-100hz,embedded-hal-async,systick-64bit",
"cortex-m-systick,systick-10khz,embedded-hal-async,systick-64bit",
"rp2040,embedded-hal-async",
"nrf52810,embedded-hal-async",
"nrf52811,embedded-hal-async",
"nrf52832,embedded-hal-async",
"nrf52833,embedded-hal-async",
"nrf52840,embedded-hal-async",
"nrf5340-app,embedded-hal-async",
"nrf5340-net,embedded-hal-async",
"nrf9160,embedded-hal-async",
"imxrt_gpt1,imxrt-ral/imxrt1062,embedded-hal-async",
"cortex-m-systick",
"cortex-m-systick,systick-64bit",
"rp2040",
"nrf52810",
"nrf52811",
"nrf52832",
"nrf52833",
"nrf52840",
"nrf5340-app",
"nrf5340-net",
"nrf9160",
"imxrt_gpt1,imxrt_gpt2,imxrt-ral/imxrt1062",
"stm32_tim2,stm32_tim3,stm32_tim4,stm32_tim5,stm32_tim15,stm32h725ag",
][..]
};

View file

@ -299,7 +299,26 @@ pub fn cargo_doc<'c>(
backend: Backends,
arguments: &'c Option<ExtraArguments>,
) -> Vec<FinalRunResult<'c>> {
let features = Some(backend.to_target().and_features(backend.to_rtic_feature()));
let extra_doc_features = [
"rtic-monotonics/cortex-m-systick",
"rtic-monotonics/rp2040",
"rtic-monotonics/nrf52840",
"imxrt-ral/imxrt1011",
"rtic-monotonics/imxrt_gpt1",
"rtic-monotonics/imxrt_gpt2",
"rtic-monotonics/stm32h725ag",
"rtic-monotonics/stm32_tim2",
"rtic-monotonics/stm32_tim3",
"rtic-monotonics/stm32_tim4",
"rtic-monotonics/stm32_tim5",
"rtic-monotonics/stm32_tim15",
];
let features = Some(format!(
"{},{}",
backend.to_target().and_features(backend.to_rtic_feature()),
extra_doc_features.join(",")
));
let command = CargoCommand::Doc {
cargoarg,