aboutsummaryrefslogtreecommitdiff
path: root/embassy-stm32
diff options
context:
space:
mode:
authorxoviat <[email protected]>2025-11-28 20:32:29 +0000
committerGitHub <[email protected]>2025-11-28 20:32:29 +0000
commitfcd5383f475f7bd413541123d941d3d7e1cd326b (patch)
tree5c30f184e919e002c53503061d11c14dc3f31c3d /embassy-stm32
parent217b683427687e8f3a27f02852e6f5bd2405ace3 (diff)
parentdd0a3a1f0b183b547a3fc574c8ddf82703ecb10e (diff)
Merge pull request #4955 from beeelias/i2c-slave/fix-early-term
i2c slave fix (early termination)
Diffstat (limited to 'embassy-stm32')
-rw-r--r--embassy-stm32/CHANGELOG.md1
-rw-r--r--embassy-stm32/src/i2c/v2.rs3
2 files changed, 3 insertions, 1 deletions
diff --git a/embassy-stm32/CHANGELOG.md b/embassy-stm32/CHANGELOG.md
index 2b273482c..2a99d0a96 100644
--- a/embassy-stm32/CHANGELOG.md
+++ b/embassy-stm32/CHANGELOG.md
@@ -85,6 +85,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
85- fix: build script ensures EXTI2_TSC is listed as the IRQ of EXTI2 even if the PAC doesn't 85- fix: build script ensures EXTI2_TSC is listed as the IRQ of EXTI2 even if the PAC doesn't
86- feat: stm32/lcd: added implementation 86- feat: stm32/lcd: added implementation
87- change: add error messages to can timing calculations ([#4961](https://github.com/embassy-rs/embassy/pull/4961)) 87- change: add error messages to can timing calculations ([#4961](https://github.com/embassy-rs/embassy/pull/4961))
88- fix: stm32/i2c v2: add stop flag on stop received
88 89
89## 0.4.0 - 2025-08-26 90## 0.4.0 - 2025-08-26
90 91
diff --git a/embassy-stm32/src/i2c/v2.rs b/embassy-stm32/src/i2c/v2.rs
index b2ba94e21..6b213484c 100644
--- a/embassy-stm32/src/i2c/v2.rs
+++ b/embassy-stm32/src/i2c/v2.rs
@@ -1600,7 +1600,8 @@ impl<'d, M: Mode> I2c<'d, M, MultiMaster> {
1600 for byte in chunk { 1600 for byte in chunk {
1601 // Wait until we have received something 1601 // Wait until we have received something
1602 match self.wait_rxne(timeout) { 1602 match self.wait_rxne(timeout) {
1603 Ok(ReceiveResult::StopReceived) | Ok(ReceiveResult::NewStart) => { 1603 Ok(ReceiveResult::StopReceived) => {}
1604 Ok(ReceiveResult::NewStart) => {
1604 trace!("--- Slave RX transmission end (early)"); 1605 trace!("--- Slave RX transmission end (early)");
1605 return Ok(total_len - remaining_len); // Return N bytes read 1606 return Ok(total_len - remaining_len); // Return N bytes read
1606 } 1607 }