aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDion Dokter <[email protected]>2025-07-28 09:51:29 +0200
committerDion Dokter <[email protected]>2025-07-28 09:51:29 +0200
commit77e0b918db2a33d8fe5dfe02acb4c8fef90f8e9c (patch)
tree50c4bb5b3c79532067b59bc4595a665aa4fd008f
parenteb62efa670b8691d2a834d0dea9494496525e4b2 (diff)
Impl multiwrite trait for concat flash
-rw-r--r--embassy-embedded-hal/src/flash/concat_flash.rs22
1 files changed, 20 insertions, 2 deletions
diff --git a/embassy-embedded-hal/src/flash/concat_flash.rs b/embassy-embedded-hal/src/flash/concat_flash.rs
index 499941d19..fe5a18ce2 100644
--- a/embassy-embedded-hal/src/flash/concat_flash.rs
+++ b/embassy-embedded-hal/src/flash/concat_flash.rs
@@ -1,5 +1,7 @@
1use embedded_storage::nor_flash::{ErrorType, NorFlash, NorFlashError, ReadNorFlash}; 1use embedded_storage::nor_flash::{ErrorType, MultiwriteNorFlash, NorFlash, NorFlashError, ReadNorFlash};
2use embedded_storage_async::nor_flash::{NorFlash as AsyncNorFlash, ReadNorFlash as AsyncReadNorFlash}; 2use embedded_storage_async::nor_flash::{
3 MultiwriteNorFlash as AsyncMultiwriteNorFlash, NorFlash as AsyncNorFlash, ReadNorFlash as AsyncReadNorFlash,
4};
3 5
4/// Convenience helper for concatenating two consecutive flashes into one. 6/// Convenience helper for concatenating two consecutive flashes into one.
5/// This is especially useful if used with "flash regions", where one may 7/// This is especially useful if used with "flash regions", where one may
@@ -116,6 +118,14 @@ where
116 } 118 }
117} 119}
118 120
121impl<First, Second, E> MultiwriteNorFlash for ConcatFlash<First, Second>
122where
123 First: MultiwriteNorFlash<Error = E>,
124 Second: MultiwriteNorFlash<Error = E>,
125 E: NorFlashError,
126{
127}
128
119impl<First, Second, E> AsyncReadNorFlash for ConcatFlash<First, Second> 129impl<First, Second, E> AsyncReadNorFlash for ConcatFlash<First, Second>
120where 130where
121 First: AsyncReadNorFlash<Error = E>, 131 First: AsyncReadNorFlash<Error = E>,
@@ -185,6 +195,14 @@ where
185 } 195 }
186} 196}
187 197
198impl<First, Second, E> AsyncMultiwriteNorFlash for ConcatFlash<First, Second>
199where
200 First: AsyncMultiwriteNorFlash<Error = E>,
201 Second: AsyncMultiwriteNorFlash<Error = E>,
202 E: NorFlashError,
203{
204}
205
188#[cfg(test)] 206#[cfg(test)]
189mod tests { 207mod tests {
190 use embedded_storage::nor_flash::{NorFlash, ReadNorFlash}; 208 use embedded_storage::nor_flash::{NorFlash, ReadNorFlash};