huntc
7c723d2bfd
Removed UB code around the send future
2021-07-15 12:31:52 +10:00
huntc
baab52d40c
Avoid a race condition by reducing the locks to one
2021-07-15 12:31:52 +10:00
huntc
5a5795ef2b
NoopMutex does not require an UnsafeCell
2021-07-15 12:31:52 +10:00
huntc
9b5f2e465b
Tidying
2021-07-15 12:31:52 +10:00
huntc
108cffcba0
Migrated to the waker registration functionality for Embassy specific optimisations
2021-07-15 12:31:52 +10:00
huntc
dcd0c38109
Return a new future each time recv is called
2021-07-15 12:31:52 +10:00
huntc
f159beec1c
Use of a NoopMutex
2021-07-15 12:31:52 +10:00
huntc
5f87c7808c
Remove the cell and trait
...
At the expense of exposing the channel types again. We do this as we want to avoid using dyn traits given their overhead for embedded environments.
2021-07-15 12:31:52 +10:00
huntc
56b3e927fe
ChannelState should be private
2021-07-15 12:31:52 +10:00
huntc
3fdf61c819
Constraint the use of ChannelCell to just channels
2021-07-15 12:31:52 +10:00
huntc
ae62948d6c
Replace UnsafeCell
...
Using a new ChannelCell so that there's no leaking of the abstraction
2021-07-15 12:31:52 +10:00
huntc
1b49acc2f7
Fixed some clippy warnings
2021-07-15 12:31:52 +10:00
huntc
a156f72bfb
Improves the representation of side effects
2021-07-15 12:31:52 +10:00
huntc
816b78c0d9
Reduces the types on sender and receiver
...
In exchange for an UnsafeCell being passed into split
2021-07-15 12:31:52 +10:00
huntc
1b9d5e5071
Multi Producer Single Consumer channel
...
An MPSC inspired by Tokio and Crossbeam. The MPSC is designed to support both single and multi core processors, with only single core implemented at this time. The allocation of the channel’s buffer is inspired by the const generic parameters that Heapless provides.
2021-07-15 12:31:52 +10:00
Dario Nieuwenhuis
8a172ac123
Merge pull request #294 from embassy-rs/usart-merge
...
stm32/usart: merge v2 and v3 (they're identical)
2021-07-15 01:02:12 +02:00
Dario Nieuwenhuis
4361cb15f1
stm32/usart: merge v2 and v3 (they're identical)
2021-07-15 00:52:37 +02:00
Dario Nieuwenhuis
d71be45a91
Merge pull request #293 from embassy-rs/pac-reexport
...
all hals: reexport PAC if `unstable-pac` feature is set.
2021-07-15 00:42:59 +02:00
Dario Nieuwenhuis
71c8d7aa7d
stm32l4/examples: remove old-pac uses.
2021-07-15 00:37:00 +02:00
Dario Nieuwenhuis
f916fe5476
all hals: reexport PAC if unstable-pac
feature is set.
2021-07-14 22:19:04 +02:00
Dario Nieuwenhuis
6444066589
Add L4 examples to workspace example
2021-07-14 22:00:49 +02:00
Dario Nieuwenhuis
7dd7f391fc
Fix OOTB workspace issues with embassy-net
2021-07-14 21:58:07 +02:00
Dario Nieuwenhuis
2d9e2908df
Merge pull request #292 from embassy-rs/update-nightly
...
Update nightly
2021-07-14 21:32:33 +02:00
Dario Nieuwenhuis
5061625068
Update nightly
2021-07-14 21:17:29 +02:00
Bob McWhirter
e4325cb8fe
Merge pull request #290 from bobmcwhirter/async-usart
...
First shot at async dma usart for stm32.
2021-07-14 15:07:36 -04:00
Bob McWhirter
21e94972dc
Fix more warnings and examples.
2021-07-14 14:55:20 -04:00
Bob McWhirter
3fd9023fce
Fix the h7 example.
2021-07-14 14:45:54 -04:00
Bob McWhirter
43cb8de434
Remove gratuitous NoDmaMarker.
2021-07-14 14:37:42 -04:00
Bob McWhirter
38b1359c40
Remove pub and cfg's, since they will be implied by the existance of TxDma<T> in theory.
2021-07-14 14:35:03 -04:00
Bob McWhirter
a88f0028ef
First shot at async dma usart for stm32.
2021-07-14 14:14:14 -04:00
Thales
667b259d53
Merge pull request #289 from bobmcwhirter/data-fix
...
Update data.
2021-07-14 12:32:17 -03:00
Bob McWhirter
95b42f9523
Update data.
2021-07-14 11:25:46 -04:00
Bob McWhirter
b6eb5dcf2f
Merge pull request #282 from bobmcwhirter/dmamux_thales
...
BDMA + DMAMUX + H7 with major help from @thalesfragoso
2021-07-13 13:33:38 -04:00
Bob McWhirter
6e0e83cfd9
More conversions to associated consts.
2021-07-13 10:56:35 -04:00
Bob McWhirter
604a25ec5d
Reduce number of traits and impls.
2021-07-13 10:46:31 -04:00
Bob McWhirter
8fbea38a5b
Simplify some of the bdma macros.
...
Make more things associated consts.
2021-07-13 10:09:35 -04:00
Bob McWhirter
92247369e7
Remove some unused traits.
...
Move some fns to associated consts.
2021-07-13 10:09:35 -04:00
Bob McWhirter
c39ac201ff
Update for stm32-data.
2021-07-13 10:09:35 -04:00
Bob McWhirter
2e10ab2e5c
Let's count channels per DMA peripheral, shall we now?
2021-07-13 10:09:35 -04:00
Bob McWhirter
b0b61d99e6
Macros do indeed require a ! to invoke.
2021-07-13 10:09:35 -04:00
Bob McWhirter
6534b63e01
Simplify some macros around dmamux peripheral channels.
2021-07-13 10:09:35 -04:00
Bob McWhirter
0befa10367
Trivial to force CI to do it's thing.
2021-07-13 10:09:35 -04:00
Bob McWhirter
06e899b14c
Adjust to DMA1EN in the rcc for l0.
2021-07-13 10:09:35 -04:00
Bob McWhirter
d31e30f382
Undo special-casing FOO1 -> FOO in RCC searching.
2021-07-13 10:09:35 -04:00
Bob McWhirter
c28bc5a8da
Adapt for DMAEN for DMA1 if DMA1EN is not found (for all peripherals FOO1) for EN/RST rcc table.
2021-07-13 10:09:35 -04:00
Bob McWhirter
a9b2ed52ee
Remove deadcode from dmamux.
...
Smoosh bdma down to a single version.
2021-07-13 10:09:35 -04:00
Bob McWhirter
45964c658c
Generalize RCC enabling for BDMA peris.
2021-07-13 10:09:35 -04:00
Bob McWhirter
ff1cb9ac74
Remove warnings.
2021-07-13 10:09:35 -04:00
Bob McWhirter
509c7f6835
Update stm32-data.
2021-07-13 10:09:35 -04:00
Bob McWhirter
97ad434d38
Twizzle our DMA vs BDMA channels.
2021-07-13 10:09:35 -04:00