9638 Commits

Author SHA1 Message Date
Alix ANNERAUD
5568478225 Fix module references in blocking read-write lock implementation 2025-02-28 16:41:41 +01:00
Alix ANNERAUD
33cf27adf6 Refactor blocking read-write lock module structure and improve assertions in ThreadModeRawRwLock 2025-02-28 16:32:12 +01:00
Alix ANNERAUD
a7ecf14259 Add blocking read-write lock implementation and remove obsolete tests 2025-02-28 16:28:10 +01:00
Alix ANNERAUD
114cfdd86b Add RawRwLock trait and RawRwLockImpl struct implementation
* Implement `RawRwLock` trait with methods for read and write locking
* Implement `RawRwLockImpl` struct with atomic state and waker
* Implement `RawRwLockImpl::lock_read`, `RawRwLockImpl::try_lock_read`, and `RawRwLockImpl::unlock_read` methods
* Implement `RawRwLockImpl::lock_write`, `RawRwLockImpl::try_lock_write`, and `RawRwLockImpl::unlock_write` methods
2025-02-28 16:22:16 +01:00
Alix ANNERAUD
6904b0cc64 2025-02-28 16:10:15 +01:00
Alix ANNERAUD
025d9f6e98 Add RwLock to embassy-sync
Fixes #1394

---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/embassy-rs/embassy/issues/1394?shareId=XXXX-XXXX-XXXX-XXXX).
2025-02-28 15:52:07 +01:00
Dario Nieuwenhuis
17301c00e9
Merge pull request #3925 from gmarino2048/gmarino/core-error
Implement `core::error::Error` for STM32 Serial Devices
2025-02-26 22:17:20 +00:00
Guy Marino
27709df94a
Implement core::error::Error for STM32 Serial Devices 2025-02-26 14:14:16 -08:00
Dario Nieuwenhuis
00ef474b94
Merge pull request #3915 from embedded-rust-iml/fix/BufferedUartRx-nb-read
fix: BufferedUartRx embedded_hal_nb::serial::Read impl
2025-02-24 14:34:13 +00:00
Maximilian Rozwora
519bd86467 fix: Check buffer full before pop_done() 2025-02-24 15:11:14 +01:00
Maximilian Rozwora
c52f56785f Apply cargo format 2025-02-24 14:48:32 +01:00
Maximilian Rozwora
76756ee702 fix: BufferedUartRx embedded_hal_nb::serial::Read impl 2025-02-24 14:34:41 +01:00
Dario Nieuwenhuis
6b04942ab7
Merge pull request #3911 from 0e4ef622/nrf5340-lfclk
nrf5340: configure LFCLK
2025-02-23 21:26:35 +00:00
Dario Nieuwenhuis
29af39c233
Merge pull request #3913 from U007D/rpi-pico-2-w
Add blinky example for RPi Pico 2W board
2025-02-23 22:25:46 +01:00
Curly
9d92d03c82
rename Pimoroni Pico Plus 2 example to group alphabetically with other blinky projects 2025-02-23 07:39:25 -08:00
Curly
2d0e0f51f8
add rp235x blinky_wifi.rs` to support RPi Pico 2 W 2025-02-23 07:37:34 -08:00
Curly
3932835998
rename rp23 (?) folder to rp235x; fix ci.sh to use rp235x folder 2025-02-23 07:33:58 -08:00
Curly
c3c67db93e add JetBrains editor artifacts to .gitignore 2025-02-22 18:17:52 -08:00
Matthew Tran
def1cf58ab remove redundant cfg 2025-02-22 13:11:38 -06:00
Matthew Tran
1b4f788427 nrf5340: configure LFCLK 2025-02-22 00:02:43 -06:00
Dario Nieuwenhuis
2e7a2b6127
Merge pull request #3903 from rxwb/fix-the-the
doc: Fix "the the"
2025-02-19 18:01:26 +01:00
Ronald Weber
7a2f038800 doc: Fix "the the" 2025-02-19 17:29:21 +01:00
Dario Nieuwenhuis
a1e75841f8
Merge pull request #3797 from stargazing-dino/add-channel-stream
Add stream impl for embassy-sync Channels
2025-02-19 15:46:45 +01:00
Dario Nieuwenhuis
fcee67a0d2
Merge pull request #3901 from CBJamo/rp23_testing
Inital rp23 ci tests
2025-02-19 14:48:01 +01:00
Caleb Jamison
28e2789aeb
Forgot to actually skip the adc test.
It worked once, which is very surprising.
2025-02-18 22:17:49 -05:00
Dario Nieuwenhuis
f3b98a8748
Merge pull request #3865 from embassy-rs/pio2
rp/pio: update pio-rs, reexport, move instr methods to SM.
2025-02-18 22:02:20 +01:00
Dario Nieuwenhuis
52dfefb632 rp/pio: update pio-rs crate, reexport it so users don't get version mismatches. 2025-02-18 18:14:57 +01:00
Dario Nieuwenhuis
dcf0868dd0 rp: remove typo'd feature that was doing nothing. 2025-02-18 18:14:35 +01:00
Dario Nieuwenhuis
e3edd671b6 rp/pio: move instructions to methods of the SM. 2025-02-18 18:14:35 +01:00
Caleb Jamison
f1e6b70279
rustfmt again 2025-02-18 10:39:58 -05:00
Caleb Jamison
52f64827be
rustfmt fixup 2025-02-18 10:38:19 -05:00
Caleb Jamison
9e785438ee
Inital rp23 ci tests
Some tests need more work.
* The adc test builds, but isn't set up correctly for the 2350 hardware
  yet.
* The multicore and gpio_multicore tests only work from flash,
  seems to be a probe-rs issue.
* The i2c and flash tests also only works from flash, these are probably
  bugs but I don't have time to run them down now.
* The 2350 gpio test skips anything with pull downs. I think these fail
  because of E9.

The float, bootsel, cyw43, and ethernet tests don't have 2350 equivalents.
There's no reason to use the float romfuncs, use the FPU.
Bootsel as a button isn't supported on the 2350 yet.
The wifi and eth tests don't have appropriate hardware.

The i2c test has also been tweaked to run on one core.
2025-02-18 10:32:20 -05:00
Dario Nieuwenhuis
1780f8479e
Merge pull request #3878 from showier-drastic/i2c-v2-add-nack
stm32: i2c-v2: Add error handling
2025-02-17 19:52:41 +01:00
Dario Nieuwenhuis
1fa874ef07
Merge pull request #3896 from embassy-rs/update-nightly-234
Update Rust nightly.
2025-02-17 18:39:14 +01:00
Dario Nieuwenhuis
89b5efc900 Update cargo-batch. 2025-02-17 17:57:50 +01:00
Dario Nieuwenhuis
489abb1f8f Update Rust nightly. 2025-02-17 17:41:17 +01:00
Dario Nieuwenhuis
ac6e8d0ad9
Merge pull request #3895 from embassy-rs/rust-update-184
Update to Rust 1.84
2025-02-17 17:40:53 +01:00
Dario Nieuwenhuis
5050b2fe88 Update to Rust 1.84 2025-02-17 16:52:29 +01:00
Dario Nieuwenhuis
f6b480ef1c
Merge pull request #3894 from Flamenco/patch-1
Fix function name
2025-02-17 13:29:59 +00:00
Flamenco
6f795d976c
Update control.rs
Fix function name
2025-02-17 08:15:09 -05:00
Dario Nieuwenhuis
fbdd2e7a77
Merge pull request #3892 from mkj/pr/otg-outbuf
otg: Allow exact out buffer size
2025-02-17 10:56:57 +00:00
Matt Johnston
5d6877cbc6 otg: Allow exact out buffer size
The existing check required N+1 buffer size.
2025-02-17 13:38:31 +08:00
Dario Nieuwenhuis
897d42e012
Merge pull request #3880 from nikvoid/stm32-rtc-subsecond
STM32: RTC subsecond support
2025-02-16 23:22:50 +00:00
Dario Nieuwenhuis
0453f7ddb2
Merge pull request #3888 from Fredrik-Reinholdsen/main
fix: Fix for async I2C v2 driver sequential read/write reads. Fixes #3887
2025-02-16 23:07:10 +00:00
Dario Nieuwenhuis
d01a299321
Merge pull request #3890 from 9names/imagedef-feature
rp: add ImageDef features
2025-02-16 22:47:08 +00:00
Dario Nieuwenhuis
a785bd09fc
Merge pull request #3889 from 9names/rp23-runner-probers
Use probe-rs as default runner for rp23 examples
2025-02-16 22:43:59 +00:00
9names
9495ec8ae4 Don't try to run doc-example for imagedef-none 2025-02-16 15:50:21 +11:00
9names
6b1706434d Remove ImageDef from rp23 examples 2025-02-16 15:43:08 +11:00
9names
4cc5ab9474 Add rp235x imagedef features (based on rp2040 boot2 features)
rp235x firmwares need an Image Definition if they want to be called
from the rp235x bootrom.

Currently this Image Definition is manually added to each project/example,
but for most users it will always be the default (Secure Exe).

This commit adds crate features to allow users to configure this, with the
default of including a Secure Exe Image Definition in.
Just like the boot2-* features, this includes an opt-out (imagedef-none)
to allow the user to not make use of this included Image Definition.
2025-02-16 15:43:01 +11:00
9names
cb4fb66424 Use probe-rs as default runner for rp23 examples 2025-02-16 13:08:10 +11:00