Commit Graph

8750 Commits

Author SHA1 Message Date
Emil Fresk
917f1d1f4d This fixes 2 issues where STM32 BXCAN would hang
1. If one received frames under an `interrupt_free` section, in my case
   `init` in RTIC, the RX IRQ will fire and clear it's enable bit after
   `interrupt_free` is complete. There is no frame to read so RX is now
   unconditionally disabled forever.
2. On clearing of RX IRQ, TX stops silently. This happens due to the use
   of `write` instead of `modify` when modifying IRQ enable bits.

Solution 1: Enable RX IRQs on every call to `try_read` that return no
data. This solution also solves the issue of very delayed handling of
the RX IRQ which would cause the same issue.

Solution 2: Use `modify` instead of `write`.
2024-10-27 10:10:46 +01:00
Henrik Alsér
8f27349745
Merge pull request #3394 from AtoVproject/fix/embassy-sync-sender-typo
docs: fix Sender/Receiver typo
2024-10-06 05:30:43 +00:00
Chris Maniewski
67836f955a
docs: fix Sender/Receiver typo 2024-10-05 14:16:00 +02:00
Dario Nieuwenhuis
b59143a4ab
Merge pull request #3391 from shilga/features/rp235x_clock
rp: Run RP235x at 150 MHz instead of 125
2024-10-05 11:29:08 +00:00
Henrik Alsér
7c3562cee6
Merge pull request #3392 from 1-rafael-1/embassy-sync-README-mention-watch
Add Watch to embassy-sync README
2024-10-05 11:23:48 +00:00
rafael
d643d50f41 Add Watch to embassy-sync README 2024-10-05 12:24:17 +02:00
Sebastian Quilitz
b73b3f2da0 rp: Run RP235x at 150 MHz instead of 125 2024-10-05 12:18:33 +02:00
Henrik Alsér
6e0b08291b
Merge pull request #3387 from paulwrath1223/main
Fixed overflow on `pio_stepper.rs`
2024-10-02 21:17:54 +00:00
Paul Fornage
ce701c3e8e Fixed overflow on pio_stepper.rs 2024-10-02 13:35:59 -07:00
Caleb Jamison
bc0180800d
Remove binary_info blocks from most examples. (#3385) 2024-10-01 16:51:18 +02:00
Ulf Lilleengen
e6ce81018b
Merge pull request #2568 from peterkrull/multi-signal
Add `Watch` sync primitive (similar to `tokio::sync::watch`)
2024-10-01 07:10:46 +00:00
Ulf Lilleengen
a7d1abf6b7
Merge pull request #3378 from dnbln/patch-1
fix: change duplicate reference to `FirmwareUpdaterConfig::from_linkerfile_blocking` in rustdoc
2024-09-27 09:44:16 +00:00
Dinu Blanovschi
3792b14161
fix: change duplicate reference to FirmwareUpdaterConfig::from_linkerfile_blocking in rustdoc 2024-09-27 10:40:24 +02:00
Ulf Lilleengen
eb91089a6c
Merge pull request #3376 from embassy-rs/nrf91-sim-pin
Add config option for setting SIM pin
2024-09-26 13:51:16 +00:00
Ulf Lilleengen
f19718b4f0 Add config option for setting SIM pin 2024-09-26 15:48:10 +02:00
Dario Nieuwenhuis
8a5d1454a4
Merge pull request #3374 from romainreignier/fix_rp23_binary_info
rp23: add missing binary info in linker script
2024-09-26 11:27:10 +00:00
Romain Reignier
6e2c5d0b45 rp23: add missing binary info in linker script
See https://github.com/rp-rs/rp-hal/issues/853

And https://github.com/rp-rs/rp-hal/pull/854
2024-09-26 13:24:50 +02:00
Dario Nieuwenhuis
af6fbb0ee1
Merge pull request #3371 from CBJamo/rp23_pwm_b_pin
rp23: Disable pad isolation on PWM A pins.
2024-09-24 23:04:56 +00:00
Caleb Jamison
b743dce8e4 Only B pins can be inputs. 2024-09-24 18:55:05 -04:00
Caleb Jamison
a498bf11af Disable pad isolation on PWM A pins.
Also fixes minor bug for 2040 where A pins didn't have their pull
up/down enabled.
2024-09-24 18:45:20 -04:00
Peter Krull
5e1912a2d3 Reverse generics order, remove spin_get 2024-09-24 12:37:32 +02:00
Peter Krull
999807f226 Added SealedWatchBehavior to limit access to core functions 2024-09-23 20:29:50 +02:00
Peter Krull
a669611d7c Discontinue peek, add AnonReceiver 2024-09-23 20:09:35 +02:00
Dario Nieuwenhuis
0ede8479dc
Merge pull request #3367 from CBJamo/rp2350_debug_pin_fix
Fix rp2350b pins >31 on debug builds
2024-09-23 17:41:19 +00:00
Caleb Jamison
0b8c4587c2 Fix rp2350b pins >31 on debug builds 2024-09-23 13:38:43 -04:00
Peter Krull
a2c473306f
Merge branch 'embassy-rs:main' into multi-signal 2024-09-23 19:02:59 +02:00
Ulf Lilleengen
2935290a62
Merge pull request #3366 from kingofpayne/main
Fixed signature script in bootloader documentation
2024-09-23 15:08:22 +00:00
Olivier Hériveaux
05d453bfd8 Fixed signature script in bootloader documentation 2024-09-23 16:11:45 +02:00
Ulf Lilleengen
81573b1a6d
Merge pull request #3364 from hansihe/fix-fdcan-preemption-dequeued-frame-return
Fix return value of `fdcan` `write`
2024-09-23 08:09:17 +00:00
Dario Nieuwenhuis
e70b7099f1
Merge pull request #3363 from embassy-rs/spi-word-tests
stm32/spi: fix non-u8 word sizes, add tests.
2024-09-23 00:17:08 +00:00
Dario Nieuwenhuis
a71098d824 stm32/tests: test spi u8 and u16 word sizes. 2024-09-23 02:06:58 +02:00
Dario Nieuwenhuis
fb0afa8a0f stm32: update metapac. Fixes SPI version on L0. 2024-09-23 02:06:58 +02:00
Dario Nieuwenhuis
68b783aedf stm32/spi: fix hang/corruption of word sizes other than 8bit. 2024-09-23 02:06:58 +02:00
Dario Nieuwenhuis
59dcffbc60 stm32/gpdma: clear tr3 just in case. 2024-09-23 02:06:58 +02:00
Dario Nieuwenhuis
f2f96a731c stm32/gpdma: ensure bndt in bytes doesn't overflow. 2024-09-23 02:06:58 +02:00
Dario Nieuwenhuis
9705f3332b
Merge pull request #3337 from doesnotcompete/feature/h7rs-usb
Add OTG_HS support for STM32H7R/S
2024-09-22 23:56:17 +00:00
Dario Nieuwenhuis
b9553badb3
Merge pull request #3362 from showier-drastic/main
stm32/spi: issue correct DMA word length when reading to prevent hang
2024-09-22 19:39:47 +00:00
Hans Josephsen
e2d2b0f362 Currently the return value of write is broken, it never returns the
previous frame even when present.

This happens because a slice of length 64 is always passed to Frame::new
from within the `abort_pending_mailbox` function, causing `Frame::new`
to return None.

The fix is to take a subslice of length `data_length`.
2024-09-22 12:40:46 +02:00
Shaw Drastin
db31e36485 stm32/spi: issue correct DMA word length when reading
Currently, when calling read() of the SPI bus, DMA always transmits u8,
which will cause hang if SPI transfer size > 8bit. Use matching word
size for TX DMA instead.
2024-09-22 11:13:10 +02:00
Dario Nieuwenhuis
233905e18c
Merge pull request #3356 from peterkrull/ringbuffered-uartrx-deadlock
stm32: Fix RingBufferedUartRx hard-resetting DMA after initial error
2024-09-22 08:56:46 +00:00
Kevin
85b7c8957c Add presence check for OTG_HS peripheral on STM32H7R/S series 2024-09-22 01:11:32 +02:00
Kevin
6d9af8304c Add USBPHYC clock configuration for H7RS series 2024-09-22 00:23:07 +02:00
Kevin
2f60d78ea3 Add OTG_HS support for STM32H7R/S 2024-09-22 00:23:07 +02:00
Dario Nieuwenhuis
afd8a86962
Merge pull request #3359 from NZRosto/main
Correctly gate `time` feature of embassy-embedded-hal in embassy-stm32
2024-09-21 01:11:41 +00:00
Reed
3328c5d656
Correctly gate time feature of embassy-embedded-hal in embassy-stm32 2024-09-21 12:31:38 +12:00
Dario Nieuwenhuis
3020bf3662
Merge pull request #3355 from Gerharddc/main
embassy_stm32/eth: support compliance testing
2024-09-20 13:47:25 +00:00
Gerhard de Clercq
5ea934d4ba embassy_stm32/eth: support compliance testing
This change adds the possibility to perform compliance testing with
STM32 systems by directly exposing SMI when needed. Users can
then use this to configure PHY registers for test modes.
2024-09-20 09:57:31 +02:00
Peter Krull
3aeeeb0d78 stm32: Start DMA before clearing, avoid panic in updater ringbuffer impl 2024-09-19 20:07:08 +02:00
Peter Krull
4fcc8e39d6 stm32: Only check errors on running RingBufferedUartRx, reduce number of small one-time functions 2024-09-19 19:21:34 +02:00
Peter Krull
2a9cdaabaa stm32: Moved comment to match request_stop 2024-09-19 18:25:08 +02:00