aboutsummaryrefslogtreecommitdiff
path: root/embassy-stm32/src/i2c
Commit message (Collapse)AuthorAgeFilesLines
* stm32: block stop2 for wle and misc fixesxoviat2025-12-151-1/+1
|
* Merge branch 'main' into mainxoviat2025-12-113-2/+17
|\
| * low-power: use scoped block stopxoviat2025-12-083-1/+16
| | | | | | | | Co-authored-by: hjeldin <[email protected]>
| * low-power: improve debug logicxoviat2025-12-061-1/+1
| |
* | stm32/i2c: Add blocking_listenTrAyZeN2025-12-011-16/+49
| |
* | stm32/i2c: Restrict listen to async I2c modeTrAyZeN2025-12-011-16/+16
|/
* fix i2c slave RX early termination handlingElias Hanelt2025-11-261-1/+2
|
* low_power: remove device busys for wlexoviat2025-11-221-11/+0
|
* stm32: Run cargo fmtHybridChild2025-11-131-7/+11
|
* stm32/i2c: Implement async DMA for transaction write groupsHybridChild2025-11-131-3/+47
|
* stm32/i2c: Fix async write_vectored and restore DMA implementationHybridChild2025-11-131-7/+34
|
* stm32/i2c: Run cargo fmtHybridChild2025-11-131-22/+69
|
* stm32/i2c: Add comprehensive v2 Master API tests and fix async issuesHybridChild2025-11-131-21/+7
|
* stm32/i2c: Fix v2 async transaction implementationHybridChild2025-11-121-108/+153
|
* stm32/i2c_v2: Refactor transaction implementationHybridChild2025-11-121-54/+33
|
* stm32/i2c_v2: Add initial transaction implementationHybridChild2025-11-121-28/+474
|
* Added TXDR flush via TXE set to the drop guard for write_dma_internal_slave; ↵WillaWillNot2025-11-101-1/+8
| | | | factored in remaining DMA transfers for the return values for write_dma_internal_slave and read_dma_internal_slave
* Pause DMA before awaiting DMA not-running at end of I2C target DMA read/write.WillaWillNot2025-11-051-1/+3
|
* stm32/stop: move stop_with_rtc into initxoviat2025-11-041-1/+1
|
* stm32/low-power: cleanup and improvexoviat2025-11-041-5/+5
|
* Merge branch 'main' into i2cxoviat2025-11-041-0/+15
|\
| * use DeviceBusy to mark when stop1 or stop2 is unavailable.liebman2025-11-031-0/+10
| |
| * low_power: i2c wakeupliebman2025-11-031-0/+5
| |
* | reduce diff with misc. reversionsxoviat2025-10-302-110/+131
| |
* | rustfmt and updatexoviat2025-10-301-2/+1
| |
* | Merge branch 'main' into feature/stm32-i2c-v1-slave-modexoviat2025-10-303-22/+25
|\|
| * Rustfmt for edition 2024.Dario Nieuwenhuis2025-10-063-9/+5
| |
| * stm32/afio: make the A generic param only appear in chips with AFIO.Dario Nieuwenhuis2025-09-051-6/+6
| |
| * Add STM32F1 AFIO remapFabian Wolter2025-09-051-8/+8
| |
| * refactor: make dma implementations match in interfaceelagil2025-09-051-1/+1
| |
| * stm32/i2c: fix failure of subsequent transmissions after NACKFabian Wolter2025-09-021-4/+11
| | | | | | | | | | | | | | | | | | | | When a slave responds with a NACK in blocking I²C master mode, all subsequent transmissions send only the address followed immediately by a STOP. This happens because the current implementation sets I2C_CR2.STOP = 1 whenever any error (including a NACK) occurs. As a result, the STOP bit is already set when the next transmission starts. According to the reference manual: "If a NACK is received: […] a STOP condition is automatically sent […]" This bug was not triggered until #4454 was merged.
* | stm32: Run cargo fmtHybridChild2025-08-232-162/+212
| |
* | stm32/i2c: Remove rustdoc example for assign_operation_framing functionHybridChild2025-08-231-10/+1
| |
* | stm32/i2c: Add core::fmt::Debug for enumsHybridChild2025-08-231-4/+4
| |
* | Revert "stm32/i2c: v1 and v2 now has separate definitions for the State struct"HybridChild2025-08-233-33/+14
| | | | | | | | This reverts commit b690a0314f0f2e42137ad4b3e867e056c1d3c14e.
* | stm32/i2c_v1: Update defmt logging for MultiMasterHybridChild2025-08-231-53/+75
| |
* | stm32/i2c_v1: Clean up Async MultiMaster implementationHybridChild2025-08-231-392/+340
| |
* | stm32/i2c_v1: Add handling of excess Write and Read from MasterHybridChild2025-08-231-24/+129
| |
* | stm32/i2c_v1: Add async slave implementationHybridChild2025-08-231-20/+339
| |
* | stm32/i2c_v1: Add handling of zero-length readHybridChild2025-08-231-0/+62
| |
* | stm32/i2c_v1: Clean up slave implementationHybridChild2025-08-231-522/+470
| |
* | stm32/i2c_v1: Better handling of slave read and write overflowHybridChild2025-08-231-8/+56
| |
* | stm32/i2c_v1: Fix bugs in slave read and write logicHybridChild2025-08-231-88/+82
| |
* | stm32/i2c_v1: Fix bugs with slave address initialization and missing ACK bitHybridChild2025-08-231-21/+107
| |
* | stm32/i2c_v1: Add defmt trace messagesHybridChild2025-08-231-10/+65
| |
* | stm32/i2c_v1: Add MultiMaster (Slave) mode implementationHybridChild2025-08-231-0/+341
| |
* | Revert "stm32/i2c: Add temporary trait for version-specific initialization ↵HybridChild2025-08-233-54/+9
| | | | | | | | | | | | during v1 rework" This reverts commit d38e1de962b92d1d48f1991ce09e494ea46d3f7f.
* | stm32/i2c_v1: Rename function parameters for consistent namingHybridChild2025-08-231-54/+54
| |
* | stm32/i2c: Add temporary trait for version-specific initialization during v1 ↵HybridChild2025-08-233-9/+55
| | | | | | | | rework
* | stm32/i2c: v1 and v2 now has separate definitions for the State structHybridChild2025-08-233-14/+33
| |