Commit Graph

7494 Commits

Author SHA1 Message Date
Sebastian Goll
3133201724 Merge remote-tracking branch 'upstream/main' into i2c-async-transaction 2024-03-27 18:58:59 +01:00
Dario Nieuwenhuis
a678b4850c
Merge pull request #2739 from adri326/adri326/nodma-embedded-io
Provide embedded_io impls for Uart with and without Dma
2024-03-27 14:47:19 +00:00
Dario Nieuwenhuis
289c5edb9b
Merge pull request #2738 from eZioPan/h5-lse-low-drive
stm32 H5: LSE low drive mode is not functional
2024-03-27 14:34:22 +00:00
Emilie Burgun
e3ef7cd99f Document why embedded_io::Read cannot be implemented for the base Uart 2024-03-27 11:10:16 +01:00
Sebastian Goll
bb5fcce0a0 Use named imports within function to make code easier to read 2024-03-27 10:42:38 +01:00
Sebastian Goll
b52e9a60eb Add missing check for empty buffer in asynchronous read_write() 2024-03-27 10:39:33 +01:00
Sebastian Goll
13636556d9 Mark shared data structure as dead_code for I2C v2 branch 2024-03-27 01:41:13 +01:00
Sebastian Goll
0cfb65abc2 Add transaction stub to I2C v2 2024-03-27 01:36:06 +01:00
Sebastian Goll
54d7d49513 Refactor DMA implementation of I2C v1, clarify flow of code 2024-03-27 01:07:42 +01:00
Sebastian Goll
7e44db099c Move FrameOptions and related function to module itself 2024-03-27 00:35:30 +01:00
Sebastian Goll
b299266cd2 It is not necessary to enable interrupts before registering waker 2024-03-27 00:32:06 +01:00
Sebastian Goll
2e2986c67b It is not necessary to wait for SB and MSL sequentially 2024-03-27 00:32:06 +01:00
Sebastian Goll
c1175bf7d8 It is not necessary to wait for STOP to be fully generated 2024-03-27 00:32:06 +01:00
Sebastian Goll
accec7a840 Implement asynchronous transaction for I2C v1 2024-03-27 00:32:06 +01:00
Sebastian Goll
9c00a40e73 Extract frame options generation into iterator to reuse in async 2024-03-26 22:53:14 +01:00
Sebastian Goll
0885c102d3 Refactor async I2C transfers to use frame options 2024-03-26 22:53:14 +01:00
Sebastian Goll
746ded94b1 Fix minor typos 2024-03-26 22:53:14 +01:00
eZio Pan
cf11d28d62 stm32 H5: LSE low drive mode is not functional 2024-03-27 00:55:44 +08:00
Emilie Burgun
1acc34bfaa Remove the need for TxDma to be a DMA channel in the blocking UartTx impl 2024-03-26 17:45:38 +01:00
Dario Nieuwenhuis
f3a0bcb15e
Merge pull request #2737 from adri326/adri326/add-iosv-option
Add a config option to make the VDDIO2 supply line valid
2024-03-26 16:29:45 +00:00
Emilie Burgun
402def86ee Remove ad-hoc fixes for setting the IOSV bit to true 2024-03-26 17:27:02 +01:00
Emilie Burgun
ca998c170f Missing half of the implementation detail comment 2024-03-26 16:33:41 +01:00
Emilie Burgun
64964bd614 Add a config option to make the VDDIO2 supply line valid
On STM32L4[7-A]xx, STM32L5xxx and STM32U5xxx chips, the GPIOG[2..15] pins are only available
once the IOSV bit has been set in PWR->CR2 (U5 chips have the bit in a funkier register).

This is meant to allow the user to have control over this power supply, so the GPIOG pins
are initially insulated, until the user wishes to un-insulate them (or something like that?).
For most applications, though, the VDDIO2 is connected to the VDD line, and this behavior only
gets in the way and causes confusing issues.

This submission adds an option in `embassy_stm32::Config`, called `enable_independent_io_supply`,
which simply enables the IOSV bit. It is only available on chips for which I could find a mention
of IOSV (STM32L4 and STM32L5) or IO2SV (STM32U5).
2024-03-26 16:22:05 +01:00
Dario Nieuwenhuis
cdd1c671e9
Merge pull request #2707 from barafael/barafael/minor_clippy_lints_rp
fix minor clippy lints in embassy_rp
2024-03-25 14:31:52 +00:00
Rafael Bachmann
e139a4e076 fix: CI 2024-03-25 15:09:41 +01:00
Rafael Bachmann
cf789be420
Merge branch 'embassy-rs:main' into barafael/minor_clippy_lints_rp 2024-03-25 14:43:18 +01:00
Ulf Lilleengen
133a753e49
Merge pull request #2733 from cumthugo/bootloader-comment
boot: update comments
2024-03-24 17:43:57 +00:00
Dario Nieuwenhuis
a009275875
Merge pull request #2732 from CBJamo/sharedbus_setconfig
embassy-embedded-hal: Allow changing Spi/I2cDeviceWithConfig's config at runtime
2024-03-24 11:36:19 +00:00
ZhangYong
9bc00e68fa update comments
use 4/5/6 as new firmware for better understanding
2024-03-24 18:25:04 +08:00
Caleb Jamison
8f1bed3d95 Allow changing Spi/I2cDeviceWithConfig's config at runtime 2024-03-23 12:21:13 -04:00
Dario Nieuwenhuis
1171e11655
Merge pull request #2730 from embassy-rs/stm32-sealed
stm32: use private_bounds for sealed traits.
2024-03-23 01:55:42 +01:00
Dario Nieuwenhuis
2fd6f0e718
Merge pull request #2731 from embassy-rs/sealed4
use private_bounds for sealed traits.
2024-03-23 01:55:13 +01:00
Dario Nieuwenhuis
4aa4ea99c2 use private_bounds for sealed traits. 2024-03-23 01:45:19 +01:00
Dario Nieuwenhuis
cb1e4e684e
Merge pull request #2729 from adamgreig/usb-no-dd-buf
usb: remove device_descriptor buffer, store bytes in UsbDevice.inner instead
2024-03-23 00:39:04 +00:00
Dario Nieuwenhuis
2bca875b5f stm32: use private_bounds for sealed traits. 2024-03-23 01:38:51 +01:00
Dario Nieuwenhuis
389cbc0a77 stm32/timer: simplify traits, convert from trait methods to struct. 2024-03-23 01:37:28 +01:00
Adam Greig
7cf6490fba
usb: remove device_descriptor buffer, store bytes in UsbDevice.inner instead 2024-03-23 00:35:15 +00:00
Dario Nieuwenhuis
c2aa95016a
Merge pull request #2727 from de-vri-es/forward-std-feature-to-critical-section
Forward the "std" feature to the critical-section crate in embassy-sync.
2024-03-22 11:34:45 +00:00
Maarten de Vries
a85e9c6e68 Forward the "std" feature to the critical-section crate in embassy-sync.
Otherwise, using embassy-sync in unit tests will result in linker errors
when using the CriticalSectionRawMutex.
2024-03-22 12:29:01 +01:00
Ulf Lilleengen
3668ace35c
Merge pull request #2651 from peterkrull/once_lock
Add `OnceLock` sync primitive
2024-03-22 08:40:27 +00:00
Dario Nieuwenhuis
7cf5cf4580
Merge pull request #2725 from DeepSOIC/regout0
nRF52840/config: add dcdc voltage parameter
2024-03-21 23:01:45 +00:00
DeepSOIC
10597e3b4d nRF52840/config: add dcdc voltage parameter
address #2700
2024-03-21 23:56:35 +01:00
Dario Nieuwenhuis
ee1aa80e30
Merge pull request #2724 from embassy-rs/update-rust
Update stable Rust to 1.77
2024-03-21 14:27:36 +00:00
Dario Nieuwenhuis
3ae19bb8f9 Update stable Rust to 1.77 2024-03-21 15:15:51 +01:00
Ulf Lilleengen
29d388042c
Merge pull request #2722 from jr-oss/stm32_buffered_uart_wake_receive_task_on_time
STM32 BufferedUart: wake receive task for each received byte
2024-03-21 07:52:18 +00:00
Ralf
08e2ba9d74 STM32 BufferedUart: wake receive task for each received byte
Fixes https://github.com/embassy-rs/embassy/issues/2719
2024-03-21 08:35:41 +01:00
Dario Nieuwenhuis
562152c43c
Merge pull request #2721 from flelchuk/main
usb-logger: avoid data loss at pipe wraparound
2024-03-20 20:24:34 +00:00
Felix Lelchuk
53ed4b8b2e usb-logger: avoid data loss at pipe wraparound 2024-03-20 21:15:22 +01:00
Dario Nieuwenhuis
c3dedfe3dc
Merge pull request #2720 from vDorst/stm32_psc_fix
stm32: Fix psc compile error with current stm32-data
2024-03-20 19:49:35 +00:00
René van Dorst
92fa49f502 Also fix time_driver.rs 2024-03-20 20:42:03 +01:00