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
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
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
Tobias Naumann
c29fc3532b
Merge branch 'main' into fix/ringbuffered-error-handling to resolve merge conflicts
2025-03-31 16:48:13 +02: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
elagil
ca8be1c976
fix: stm32g4 calibration delays
2025-03-29 22:01:54 +01:00
Dario Nieuwenhuis
3a3ab6cded
Merge pull request #3928 from agrif/stm32-i2c-set-config
...
Fix SetConfig implementation for STM32 I2C v2
2025-03-28 15:17:21 +00:00
techmccat
ce578b62b8
stm32: run cargo fmt
2025-03-28 10:45:14 +01:00
techmccat
0621087f6f
stm32: allow using LSI/LSE as SYSCLK on g0/c0
2025-03-28 10:35:05 +01:00
Dario Nieuwenhuis
d41eeeae79
Remove Peripheral trait, rename PeripheralRef->Peri.
2025-03-27 15:18:06 +01:00
Tobias Naumann
14d079ae84
Cleanup stm32_metapac register usage in usart module
2025-03-27 12:03:52 +01:00
Tobias Naumann
9e31a45134
Fix unused imports
2025-03-27 11:58:51 +01:00
Dario Nieuwenhuis
a592acb806
stm32/cryp: remove DMA generic param.
2025-03-25 22:18:21 +01:00
Dario Nieuwenhuis
db86aba841
stm32/hash: remove DMA generic param.
2025-03-25 21:57:37 +01:00
Dario Nieuwenhuis
9a0afa7bf4
stm32/sdmmc: remove DMA generic param.
2025-03-25 21:43:47 +01:00
Dario Nieuwenhuis
73ec3a7506
stm32/dac: remove DMA generic params.
2025-03-25 21:31:28 +01:00
Dario Nieuwenhuis
f007b53db3
stm32/dac: dedup pin and DMA traits, demacrofify.
2025-03-25 20:49:09 +01:00
Dario Nieuwenhuis
17cce79807
Merge pull request #3992 from elagil/usb_fixes
...
Small USB-related fixes
2025-03-25 11:03:53 +00:00
John Kjellberg
3e63a2e5df
Clarified ADC API documentation for some STM32s.
2025-03-25 11:10:51 +01:00
elagil
15394ae5fa
fix(usb): blocking wait
2025-03-24 19:49:44 +01:00
elagil
e34b4d69ee
fix: build
2025-03-22 11:58:50 +01:00
elagil
07387ea405
fix: apply STM32H5 USB errata (OUT transfer delay)
2025-03-22 11:47:36 +01:00
Tobias Naumann
402b78138b
Check and clear idle and error flags together
2025-03-21 14:23:25 +01:00
Tobias Naumann
ac7c44c1d1
Use write closure to clear idle flag, only read rdr on usart versions which need it
2025-03-21 14:22:26 +01:00
Tobias Naumann
1e6192ffa5
Add embedded_hal_nb::serial::Read impl for RingBufferedUartRx
2025-03-21 11:20:28 +01:00
Rasmus Melchior Jacobsen
5e762e8cf4
Fix compile error in ospi
2025-03-20 01:58:44 +01:00
Rasmus Melchior Jacobsen
97ed7f085a
feat(stm32): Add OTP flash region (again)
2025-03-20 01:58:44 +01:00
Timofei Korostelev
8c6fa83006
Added ADC support for STM32C0.
2025-03-20 01:58:44 +01:00
Dario Nieuwenhuis
9407ac67d3
Update stm32-data.
2025-03-20 01:58:44 +01:00
Tobias Naumann
71d94ad5e7
Recover from errors in ringbuffered usart
2025-03-20 00:43:38 +01:00
dimi
e9b842082d
embassy-stm32::hspi
: gate derive(defmt::Format) behind feature flag
2025-03-18 17:19:11 +01:00
Dario Nieuwenhuis
86572bf009
Merge pull request #3964 from elagil/sof_out_usb
...
Add optional USB driver SOF output
2025-03-16 21:10:27 +00:00
elagil
63f7a5da09
fix: disable new_with_sof
for STM32L1
2025-03-16 22:02:43 +01:00
elagil
cecbe082ff
fix: only ISO EP is always double buffered
2025-03-16 16:34:09 +01:00
elagil
0ff6184723
refactor: fix build warnings
2025-03-15 20:28:23 +01:00
elagil
8fef488738
refactor: USB read function restructure
2025-03-15 20:24:14 +01:00