10194 Commits

Author SHA1 Message Date
Åke Amcoff
ac4f4ee807 disable critical-section/std for arch-std in embassy-executor 2025-04-05 18:36:04 +02:00
Ulf Lilleengen
b1179c5090
Merge pull request #3983 from mgomez0/topic/buffered-uart-take-pins-before-interrupts
BufferedUart initialization
2025-04-05 05:36:27 +00:00
Michael Gomez
f1feedf190 BufferedUart initialization
This change modifies UART initialization throughout Embassy to take pins
before interrupts.

Related to #1304.
2025-04-04 21:54:36 -07:00
Kaspar Schleiser
89f3566419 embassy_executor: introduce Spawner::executor_id() 2025-04-04 22:32:55 +02:00
Kaspar Schleiser
3f87ce6f50 embassy-executor: introduce Executor::id() 2025-04-04 22:32:55 +02:00
Kaspar Schleiser
e1e7a5ddb5 embassy-time: don't select critical-section impl for std 2025-04-04 22:07:02 +02:00
Gabriel Smith
f8e5c90266 stm32/timer: Support one pulse mode
Currently does not support output pins so it really is only useful to
create delayed interrupts based on external signals.
2025-04-04 17:40:22 +00:00
Gabriel Smith
eee2d8c84d stm32/timer: Merge channel typestate structs 2025-04-04 17:40:15 +00:00
James Munns
61b7762421
Merge pull request #4043 from embassy-rs/james/wake-race
embassy-rp: defensive change to ensure wakers are registered
2025-04-04 11:45:13 +00:00
Matt Johnston
43ef76b1b6 Add stm32h7rs xpi_memory_mapped example
Based on ospi_memory_mapped, targetting stm32h7s3 nucleo board.

This works in single mode, no octo mode yet.
2025-04-04 17:41:53 +08:00
Matt Johnston
5f7da4cfc8 stm32: xspi fixes and consistency
Fix some incorrect DTR flags, fix _bit vs _Bit inconsistency (copied
from qspi and ospi).

Use the same NCS pullup for all constructors.

xspi is now enabled in PWR register
2025-04-04 17:41:53 +08:00
Matt Johnston
6b80f3bada stm32: xspi: rework switching between ncs1 and ncs2 2025-04-04 17:41:53 +08:00
Matt Johnston
e22fe7cbcf stm32: xspi wait for prescaler change
This is documented as being required (and is done by stm32cube),
hasn't been observed as a problem though.
2025-04-04 17:41:53 +08:00
Matt Johnston
65f849a589 stm32: xspi update for Peri 2025-04-04 17:41:53 +08:00
Matt Johnston
36a5b02774 stm32: Update xspi for stm32-metapac changes
This is now closer to the original ospi, using more idiomatic naming.

Some dead code is removed (previously was hidden by [allow(dead_code)]).
2025-04-04 17:41:52 +08:00
Rick Rogers
6d384a1a39 introduce stm32h7rs xspi 2025-04-04 15:36:33 +08:00
Matt Johnston
b2d9203af7 Bump stm32-data 2025-04-04 15:22:32 +08:00
James Munns
72832c1550 embassy-rp: defensive change to ensure wakers are registered
This change ensures that wakers are registered PRIOR to checking status
in i2c `wait_on` helpers.
2025-04-03 19:01:00 +02:00
James Munns
99536219a3
Merge pull request #4040 from jamesmunns/james/fix-doc-links
[embassy-executor]: Fix some intra-doc links
2025-04-03 08:44:20 +00:00
James Munns
b7e1b1ca94 Fix some intra-doc links 2025-04-03 10:35:00 +02:00
i509VCB
45c4f0cb05
Merge pull request #4022 from i509VCB/mspm0-uart
mspm0: blocking uart driver
2025-04-03 04:46:36 +00:00
i509VCB
a10de5f408
Merge pull request #4037 from optlink/mspm0-pf
mspm0: Fix `set_pf_unchecked()` assertion
2025-04-03 04:00:37 +00:00
Kelsey Maes
03061a0817 mspm0: Fix set_pf_unchecked() assertion 2025-04-02 08:33:12 -07:00
Dario Nieuwenhuis
a137a16067
Merge pull request #4033 from jamesmunns/james/upstream-trace
[embassy-executor] Add two new `trace` hooks, improve docs
2025-04-02 00:34:05 +00:00
Dario Nieuwenhuis
3bc809eb3e
Merge pull request #4036 from Fredrik-Reinholdsen/main
fix: Fix for #3888 async I2C read bug for introduced in #3887
2025-04-01 20:55:27 +00:00
Fredrik Reinholdsen
47869d122a fix: Fix for #3888 async I2C read bug for introduced in #3887 in STM32 I2C v2 driver
In fixing a different timing related bug, #3887, a new bug was introduced causing I2C reads longer than 255 bytes to timeout for some I2C devices, #3888.
The issue was caused by incorrect branch order, and poll function being called unnecessarily.

Async I2C read poll function now only looks for I2C transfer complete reload (TCR) interrupts, intead of TCR and transfer complete (TC) interrupts,
since TC interrupts are not raised when AUTOEND bit is set.
2025-04-01 21:28:07 +02:00
James Munns
ef3c1b87d1 Minor docs improvements 2025-04-01 14:35:21 +02:00
James Munns
2e474b7df2 Remove notes about stability 2025-04-01 14:30:36 +02:00
James Munns
3e25a7be86 Small grammar fixes 2025-04-01 14:27:32 +02:00
James Munns
c3efb85b85 Fix task_end callback 2025-04-01 14:23:39 +02:00
James Munns
8a8e450053 Reorder doc comments for format reasons 2025-04-01 14:12:58 +02:00
James Munns
84cd416bed Finish trailing sentence 2025-04-01 14:11:42 +02:00
James Munns
882e2180a4 Add docs, add task_end trace point 2025-04-01 14:06:04 +02:00
Anton Lazarev
dc31bfd829
refactor to reduce code duplication 2025-03-31 12:47:41 -07:00
Anton Lazarev
0a231505d8
support 8 lane data bus 2025-03-31 12:47:41 -07:00
Anton Lazarev
b92eb948b5
fix d6->d7 typo from build.rs 2025-03-31 12:47:41 -07:00
Anton Lazarev
57731a7896
support eMMC 2025-03-31 12:47:41 -07:00
Anton Lazarev
5325f1d911
scaffold eMMC support 2025-03-31 12:47:41 -07:00
Anton Lazarev
14bb4ee9e4
use ready_for_data status to determine when write has finished
`read_sd_status` works, but it's somewhat of a hack, but also won't work
on eMMC devices. The official spec for both SD and eMMC recommends using
this method.
2025-03-31 12:47:41 -07:00
Anton Lazarev
5d01712d84
use upstream command definitions 2025-03-31 12:47:41 -07:00
Anton Lazarev
d22a7a3a96
update sdio-host to 0.9 2025-03-31 12:47:41 -07:00
Anton Lazarev
280d21a6b4
update sdio-host to 0.6 2025-03-31 12:47:41 -07:00
Dario Nieuwenhuis
a44abaf7e4
Merge pull request #3989 from embedded-rust-iml/fix/ringbuffered-error-handling
Rework status handling (idle and errors) in ringbuffered uart
2025-03-31 15:09:01 +00:00
Tobias Naumann
c29fc3532b Merge branch 'main' into fix/ringbuffered-error-handling to resolve merge conflicts 2025-03-31 16:48:13 +02:00
Dániel Buga
aa5ecbdb56
Remove task arena FAQ 2025-03-31 13:16:11 +02:00
Dario Nieuwenhuis
4d9b41714d
Merge pull request #4026 from cyril-marpaud/patch-3
docs: fix a typo
2025-03-31 11:13:30 +00:00
Cyril Marpaud
f396579dff
docs: fix a typo 2025-03-31 13:07:03 +02:00
Ulf Lilleengen
154870b2c3
Merge pull request #3978 from avsaase/blocking-mutex-lock-mut
embassy-sync: add `lock_mut` to `blocking_mutex::Mutex`
2025-03-31 07:34:11 +00:00
Ulf Lilleengen
aadd4e5513
Merge pull request #3968 from embedded-rust-iml/feature/ringbuffered-embedded-hal-nb
Add embedded_hal_nb::serial::Read impl for RingBufferedUartRx
2025-03-31 07:05:19 +00:00
Dario Nieuwenhuis
553f8924cc
Merge pull request #4024 from elagil/g4_adc_cal
Fix STM32G4 ADC calibration stability
2025-03-30 23:15:23 +02:00