embassy/embassy-stm32/src
bors[bot] 5f10eadb8d
Merge #1475 #1478 #1482
1475: Add YieldingAsync adapter r=Dirbaio a=rmja

This PR calls `yield_now()` for long blocking `NorFlash` read and erase operations.
The motivation for this change is to allow for other tasks on the same executor to get something done between these long running operations, for example a task that feeds a watchdog. This will allow the watchdog to have a timer relative to e.g. one sector erase, instead of all sector erase.

1478: stm32: Minor fixes in flash regions for F4 dual bank layout r=Dirbaio a=rmja

This PR has the following fixes:
* Ensure that `FlashRegion` instances can only be created within the embassy-stm32 crate.
* Remove `Drop` trait for `AltFlashLayout`, as it is hard to use, as one cannot take the individual regions out from the struct. Instead of going back to single bank mode on `Drop`, we instead transition to single bank mode when calling `Flash::into_regions()`.
* Add missing `otp_region` to the dual bank layout and implement `NorFlash` for the alternate regions.

1482: Add ConcatFlash utility r=Dirbaio a=rmja

This PR adds a `ConcatFlash` utility that can be used to concatenate two `NorFlash` flashes. This is especially useful when concatenating multiple flash regions with unequal erase size.


Co-authored-by: Rasmus Melchior Jacobsen <rmja@laesoe.org>
2023-05-25 01:05:32 +00:00
..
adc Change ADC1 to ADC 2023-04-05 16:52:32 -05:00
can Add non blocking Bxcan constructor. 2022-09-21 22:29:57 -04:00
crc Rename Unborrowed -> PeripheralRef, Unborrow -> Peripheral 2022-07-23 14:00:19 +02:00
dma stm32/dma: solve overlapping impl on DmaCtrl on stm32h7 2023-05-01 23:20:51 +02:00
eth stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
flash Add missing set_default_layout() in "other" family 2023-05-23 23:01:55 +02:00
i2c stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
pwm stm32/pwm: improve dead-time api 2023-05-01 16:42:03 -05:00
qspi stm32/dma: refactor. 2023-04-18 16:37:35 +02:00
rcc Improve readability 2023-05-05 19:04:58 +02:00
rtc stm32/rtc: fix datetime and add f4 test 2023-04-25 17:35:01 -05:00
sdmmc stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
spi Merge #1340 #1474 2023-05-25 00:42:10 +00:00
timer Revert "Make advanced timer trait not require general purpose timer trait as the timers are too different." 2022-07-12 15:11:57 +03:00
tl_mbox stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
usart stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
usb stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
usb_otg stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
wdg stm32: Fix watchdog timeout computation 2023-05-22 14:22:27 +02:00
dac.rs Use RccPeripheral for DAC and add a hackfix for H7 2022-08-04 03:31:47 +03:00
dcmi.rs stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
exti.rs stm32: add H5 support. 2023-04-06 18:59:37 +02:00
fmc.rs stm32: fix fmc-related build failures on some F4's 2023-02-13 02:22:06 +01:00
fmt.rs fmt: Add dunmy use to avoid "unused variable" errors when no log is enabled. 2021-06-07 03:21:37 +02:00
gpio.rs common/peripheral: do not require mut in PeripheralRef clone_unchecked. 2023-04-11 23:09:02 +02:00
i2s.rs stm32/i2s: add module and example for f4 2023-05-03 18:17:57 -05:00
ipcc.rs stm32/ipcc: remove constrain 2023-05-20 10:23:57 -05:00
lib.rs Merge #1340 #1474 2023-05-25 00:42:10 +00:00
rng.rs rustfmt 2023-02-09 13:01:44 +02:00
time_driver.rs stm32: move to bind_interrupts 2023-05-24 17:29:56 -05:00
time.rs Make Hertz constructors const 2023-04-13 00:06:14 +02:00
traits.rs stm32/dma: refactor. 2023-04-18 16:37:35 +02:00