Sebastian Gabrielli
d8631f96d9
Disable SPI before changing config, then re-enable SPI on STM32
...
Fixes #2259
2025-04-22 12:47:33 +02:00
Dario Nieuwenhuis
d41eeeae79
Remove Peripheral trait, rename PeripheralRef->Peri.
2025-03-27 15:18:06 +01:00
Dario Nieuwenhuis
db86aba841
stm32/hash: remove DMA generic param.
2025-03-25 21:57:37 +01:00
Guy Marino
27709df94a
Implement core::error::Error for STM32 Serial Devices
2025-02-26 14:14:16 -08:00
elagil
eba8089601
chore: fix build
2025-01-03 18:18:00 +01:00
Anatol Ulrich
7743c8fb9a
more cfg gating
2024-12-19 19:16:38 +01:00
Anatol Ulrich
26fe834c09
fix imports
2024-12-19 18:48:07 +01:00
Anatol Ulrich
8d98844312
embassy-stm32: make SPI slew rate/speed configurable and change default to Medium
2024-12-19 18:35:42 +01:00
Alexandros Liarokapis
9f1b6b4791
Revise I2S interface to ring-buffered.
2024-10-16 18:45:27 +03:00
Dario Nieuwenhuis
68b783aedf
stm32/spi: fix hang/corruption of word sizes other than 8bit.
2024-09-23 02:06:58 +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
2d678d6956
Update to Rust 1.80, make check-cfg unconditional.
2024-07-25 15:53:00 +02:00
Jan Špaček
94007ce6e0
stm32/gpio: refactor AfType
2024-06-16 21:11:55 +02:00
Dario Nieuwenhuis
7ad76f5f60
Use raw slices .len() method instead of unsafe hacks.
...
Stabilized in 1.79.
2024-06-13 20:41:08 +02:00
dvdsk
871fe3a549
Add Clone and Copy to Error types
...
None of them are `non-exaustative`, they are all small enough to be copy
(I estimate none are larger than 4 bytes).
2024-06-06 23:19:07 +02:00
Dario Nieuwenhuis
9856d21693
Merge pull request #3006 from honzasp/harmonize-new
...
stm32: Make initialization of I2C and USART consistent with SPI
2024-06-03 21:26:43 +00:00
Dario Nieuwenhuis
348c87fc2f
stm32/spi: fix blocking_write on nosck spi.
...
Fixes #2902 .
2024-06-03 00:57:53 +02:00
Jan Špaček
ca3c15658d
stm32/spi: move init code to function that's not generic in T
2024-06-01 19:46:39 +02:00
Dario Nieuwenhuis
339dd85968
stm32/spi: restrict txonly_nosck to SPIv1, it hangs in other versions.
2024-05-31 22:58:53 +02:00
Dario Nieuwenhuis
da197b6016
stm32/spi: fix spiv1 rxonly hanging.
2024-05-31 21:54:42 +02:00
Dario Nieuwenhuis
39c5a6c3f7
Merge pull request #3002 from honzasp/rcc-info
...
stm32/rcc: replace generated enable/disable code with runtime info
2024-05-30 11:50:40 +00:00
Alexandros Liarokapis
4d1fbcd9cd
address review comments
2024-05-28 13:38:27 +03:00
Alexandros Liarokapis
46fc15783d
add spi_v4 and spi_v5 support but block i2scfg rx-only configuration
2024-05-28 12:50:24 +03:00
Alexandros Liarokapis
9a6ed79ad1
remove rx-only support for new spi versions with missing I2SCFGR register
2024-05-27 20:51:50 +03:00
Alexandros Liarokapis
1d05015a1c
broaden tsize read support to other spi versions
2024-05-27 20:47:24 +03:00
Alexandros Liarokapis
76fbec74da
fix spi panic on read due to i2s configuration conversion check
2024-05-27 20:43:24 +03:00
Alexandros Liarokapis
f9324201b1
add proper rxonly support for spi_v3 and force tx dma stream requirement on others
2024-05-27 17:49:47 +03:00
Jan Špaček
081afca3f0
stm32/rcc: replace generated enable/disable code with runtime info
2024-05-25 18:44:55 +02:00
Joël Schulz-Ansres
5cba97821f
Naming: Change pullup to pull
2024-05-24 01:05:56 +02:00
Joël Schulz-Ansres
f285a545be
Change bool to Pull
2024-05-23 23:52:59 +02:00
Joel Schulz-Andres
0a5820e3ed
Merge branch 'embassy-rs:main' into add-miso-pullup
2024-05-23 15:34:16 +02:00
Joël Schulz-Ansres
27e8ef6e7e
Remove Speed::Input in order to move it into separate PR
2024-05-22 23:49:48 +02:00
Dario Nieuwenhuis
6a508b3210
stm32: use funcs for info/state, const for ENABLE_BIT.
2024-05-21 01:24:10 +02:00
Dario Nieuwenhuis
ca2eef5387
stm32/spi: remove peripheral generic param.
2024-05-20 23:43:10 +02:00
Joël Schulz-Ansres
cc6998be30
Cargo format
2024-05-15 14:12:44 +02:00
Joël Schulz-Ansres
db56c4fe6f
Add miso pullup to spi configuration, add input as field for speed
2024-05-15 12:54:30 +02:00
Dario Nieuwenhuis
2eab099b85
stm32/spi: rename rxdma, txdma -> rx_dma, tx_dma.
2024-04-15 21:56:08 +02:00
Dario Nieuwenhuis
02da66aec8
stm32/dma: add ChannelAndRequest helper.
2024-04-15 21:52:40 +02:00
Dario Nieuwenhuis
be087e5d43
stm32/spi: remove DMA generic params.
2024-04-15 21:23:49 +02:00
Michael Zill
ffc61f78b0
stm32/spi,crc: update for new PAC
2024-04-14 22:06:41 +02:00
Dario Nieuwenhuis
2bca875b5f
stm32: use private_bounds for sealed traits.
2024-03-23 01:38:51 +01:00
Dominic
b6a383811a
Improve panic message when requesting frequency higher than clock
...
Previously it would panic with message "unreachable", which isn't
particularly clear about what the problem is and how to fix it.
2024-03-11 17:52:18 +01:00
Dario Nieuwenhuis
c83ab20526
stm32: update metapac.
2024-02-26 03:02:58 +01:00
eZio Pan
d90a97aa4c
update metapac after stm32-data PR323
...
and refactor a few code with cargo clippy
2023-12-25 22:03:32 +08:00
Dario Nieuwenhuis
1ea87ec6e7
stm32: document hrtim, qspi, sdmmc, spi.
2023-12-19 16:21:51 +01:00
Dario Nieuwenhuis
49534cd405
stm32: more docs.
2023-12-19 00:10:36 +01:00
Dario Nieuwenhuis
c6989dfbca
Remove nightly and unstable-traits features in preparation for 1.75.
2023-11-29 17:26:33 +01:00
Scott Mabin
a6bbb130c5
make set_config concrete methods public again
2023-10-12 23:03:33 +01:00
pbert
ecdd7c0e2f
enable clock first
2023-10-12 11:04:44 +02:00
pbert
f65a96c541
STM32: combine RccPeripherals reset() and enable() to reset_and_enable()
2023-10-12 11:04:19 +02:00