Rasmus Melchior Jacobsen
268e29b153
Let the FlashRegion for region types be public
2023-04-01 16:59:21 +02:00
Timo Kröger
f78aa4f936
rp: Allow zero len reads for buffered uart
...
Prevents the read methods from getting stuck forever.
2023-04-01 14:31:24 +02:00
Thierry Fleury
0e13fe9925
Fix set_baudrate on RP-PICO
2023-04-01 11:44:49 +02:00
Mathias
472dc6b7d1
Fix interrupt handling so it is similar to before the rework, and fix examples
2023-03-31 15:57:35 +02:00
Rasmus Melchior Jacobsen
50b0fb1a37
Let get_flash_regions be public
2023-03-31 15:47:45 +02:00
Mathias
cfbe93c280
Rework bufferedUart to get rid of PeripheralMutex in a similar fashion as nrf & rp. Also adds embedded-hal traits to bufferedUart
2023-03-31 10:43:30 +02:00
Rasmus Melchior Jacobsen
d9d6fd6d70
Add erase and wipe tests
2023-03-31 10:28:47 +02:00
Rasmus Melchior Jacobsen
42931b51f2
Let bootloader partition have read/write/erase operations
...
This change should not have any breaking changes.
2023-03-31 10:18:19 +02:00
bors[bot]
e3efda2249
Merge #1311
...
1311: Split bootloader implementation into multiple files r=lulf a=rmja
No other change has been made. I think that I have all the types re-exported in lib.rs as before.
Co-authored-by: Rasmus Melchior Jacobsen <rmja@laesoe.org>
2023-03-31 06:56:26 +00:00
Rasmus Melchior Jacobsen
373760a56b
Split bootloader implementation into multiple files
2023-03-31 08:05:37 +02:00
Dario Nieuwenhuis
5955d81374
Merge pull request #1263 from embassy-rs/turbowakers
...
Turbo-wakers 🚀
2023-03-30 19:03:03 +02:00
Dario Nieuwenhuis
80972f1e0e
executor,sync: add support for turbo-wakers.
...
This is a `core` patch to make wakers 1 word (the task pointer) instead of 2 (task pointer + vtable). It allows having the "waker optimization" we had a while back on `WakerRegistration/AtomicWaker`, but EVERYWHERE, without patching all crates.
Advantages:
- Less memory usage.
- Faster.
- `AtomicWaker` can actually use atomics to load/store the waker, No critical section needed.
- No `dyn` call, which means `cargo-call-stack` can now see through wakes.
Disadvantages:
- You have to patch `core`...
- Breaks all executors and other things that create wakers, unless they opt in to using the new `from_ptr` API.
How to use:
- Run this shell script to patch `core`. https://gist.github.com/Dirbaio/c67da7cf318515181539122c9d32b395
- Enable `build-std`
- Enable `build-std-features = core/turbowakers`
- Enable feature `turbowakers` in `embassy-executor`, `embassy-sync`.
- Make sure you have no other crate creating wakers other than `embassy-executor`. These will panic at runtime.
Note that the patched `core` is equivalent to the unpached one when the `turbowakers` feature is not enabled, so it should be fine to leave it there.
2023-03-30 17:55:55 +02:00
Rasmus Melchior Jacobsen
f3dcb5eb22
Wrap write/erase operations in cs
2023-03-30 15:13:44 +02:00
sander
6b2aaacf83
Update embassy
...
Merge commit '9dd3719f09835f646e3a8f3abaa33726a1e3f9ca'
2023-03-30 14:37:51 +02:00
Dario Nieuwenhuis
e6e5685f7c
Merge pull request #58 from kbleeke/clear-data-unavailable
...
clear DATA_UNAVAILABLE irq
2023-03-30 10:30:53 +00:00
kbleeke
69db1535b2
clear DATA_UNAVAILABLE irq
2023-03-30 12:24:37 +02:00
Dario Nieuwenhuis
d3fb9ddf33
Merge pull request #57 from kbleeke/faster-pio2
...
Maximum pio speed
2023-03-30 10:21:51 +00:00
kbleeke
b2d63d851d
set INTERRUPT_WITH_STATUS flag in attempt to prevent hangs
2023-03-30 12:04:18 +02:00
Rasmus Melchior Jacobsen
a78e10e003
Add defmt support to new flash types
2023-03-30 09:17:14 +02:00
Rasmus Melchior Jacobsen
02caec9482
Skip unknown banks
2023-03-30 09:07:23 +02:00
Rasmus Melchior Jacobsen
760d4a72cb
Ensure that embedded_storage traits are actually implemented
2023-03-30 09:05:13 +02:00
Rasmus Melchior Jacobsen
e7129371d0
Let sector computation be shared across families
2023-03-30 08:32:36 +02:00
Rasmus Melchior Jacobsen
e3c4e00be0
Align families
2023-03-30 06:01:56 +02:00
Rasmus Melchior Jacobsen
91d8afd371
Add AltFlashLayout for supported F4 chips
2023-03-30 05:27:57 +02:00
Rasmus Melchior Jacobsen
89129babf9
Merge remote-tracking branch 'upstream/master' into flash-regions
2023-03-30 04:53:07 +02:00
Rasmus Melchior Jacobsen
def576ac46
Remove FlashRegion trait and rename Settings to FlashRegion
2023-03-30 04:24:41 +02:00
Rasmus Melchior Jacobsen
ef1890e911
Remove flash operations from FlashRegion trait and move to common module
2023-03-29 15:45:18 +02:00
bors[bot]
754bb802ba
Merge #1294
...
1294: Add support for `QSPI` in `stm32` r=Dirbaio a=Mirror0
Implemented with help of Tomasz Grześ <tomasz.grzes@gmail.com>.
Tested only on stm32f777zi.
Co-authored-by: Mateusz Butkiewicz <mateusz@github.butkiewicz.dev>
2023-03-29 13:42:29 +00:00
Rasmus Melchior Jacobsen
68c260edeb
Use stm32-metapac v2
2023-03-29 15:03:48 +02:00
Rasmus Melchior Jacobsen
fc8c83e00a
Fix h7 compile error
2023-03-29 14:50:19 +02:00
Mateusz Butkiewicz
87898501a2
feat(stm32:qspi): convert some u8 to enum variants
2023-03-29 14:28:25 +02:00
Rasmus Melchior Jacobsen
a0d089536a
Merge branch 'flash-regions' of https://github.com/rmja/embassy into flash-regions
2023-03-29 14:10:33 +02:00
Rasmus Melchior Jacobsen
15e1747220
Fix build of not implemented family
2023-03-29 14:10:16 +02:00
Rasmus Melchior Jacobsen
0bbc3a3d81
Merge branch 'master' into flash-regions
2023-03-29 13:59:17 +02:00
Rasmus Melchior Jacobsen
5a12fd6c75
Add unimplemented family section
2023-03-29 13:57:33 +02:00
Rasmus Melchior Jacobsen
b7dfc8de10
Let flash module be conditionally included
2023-03-29 13:52:52 +02:00
Rasmus Melchior Jacobsen
ddbd509865
Move as much logic from families to shared module as possible
2023-03-29 13:37:45 +02:00
Rasmus Melchior Jacobsen
69944675a3
Expose get_sector in favor of is_eraseable_range
2023-03-29 12:49:13 +02:00
Rasmus Melchior Jacobsen
4ee3d15519
Keep peripheral lifetime when calling into_regions()
2023-03-29 12:10:24 +02:00
Rasmus Melchior Jacobsen
6806bb9692
Expose flash region settings as an array
2023-03-29 11:52:18 +02:00
Rasmus Melchior Jacobsen
d6ce1c4325
Support running tests in embassy-stm32 and move impl from common back to stm32
2023-03-29 11:31:45 +02:00
kbleeke
869b337715
PIO at maximum speed
2023-03-28 16:51:49 +02:00
Dario Nieuwenhuis
fe57e4d9f8
Merge pull request #56 from kbleeke/faster-pio
...
make pio even faster
2023-03-28 14:10:32 +00:00
kbleeke
781c7f978c
make pio faster
2023-03-28 15:29:14 +02:00
bors[bot]
7a841b58d1
Merge #1307
...
1307: (embassy-stm32): add embedded-io blocking Read + Write for BufferedUart r=MathiasKoch a=MathiasKoch
Co-authored-by: Mathias <mk@blackbird.online>
2023-03-28 12:35:07 +00:00
Mathias
14f6bc88ea
Remove unnecessary lifetime
2023-03-28 14:34:36 +02:00
Mathias
2d7f35cf57
Add embedded-io blocking Read + Write for BufferedUart
2023-03-28 14:28:44 +02:00
Dario Nieuwenhuis
c15f07de4f
Merge pull request #55 from kbleeke/master
...
update readme
2023-03-27 20:39:54 +00:00
kbleeke
983a94a9c5
update readme
2023-03-27 22:37:18 +02:00
Dario Nieuwenhuis
e9e2be137f
Merge pull request #54 from kbleeke/pio-irq
...
Move pio driver to separate crate
2023-03-27 17:08:54 +00:00