A new `split` method is introduced such that the Uarte tx and rx can be used from separate tasks. An MPSC is used to illustrate how data may be passed between these tasks.
534: Provides AsyncWrite with flush r=huntc a=huntc
As per Tokio and others, this commit provides a `poll_flush` method on `AsyncWrite` so that a best-effort attempt at wakening once all bytes are flushed can be made.
Co-authored-by: huntc <huntchr@gmail.com>
As per Tokio and others, this commit provides a `poll_flush` method on `AsyncWrite` so that a best-effort attempt at wakening once all bytes are flushed can be made.
531: Rust Analyzer documentation r=Dirbaio a=huntc
Intends to clarify how to make Embassy usable from within Visual Studio Code by assuming the presence of the Rust Analyzer.
Note that IntelliJ does not support the Rust Analyzer, so an open question remains as to the whether this is a good move. If it turns out not to be a good move then we should still look at clarifying the use of a workspace file.
Co-authored-by: huntc <huntchr@gmail.com>
Intends to clarify how to make Embassy usable from within Visual Studio Code by assuming the presence of the Rust Analyzer.
Note that IntelliJ does not support the Rust Analyzer, so an open question remains as to the whether this is a good move. If it turns out not to be a good move then we should still look at clarifying the use of a workspace file.
500: Low level DMA channel API. r=Dirbaio a=matoushybl
This should be an improved version of the PR by `@theunkn0wn1.`
Co-authored-by: Joshua Salzedo <joshuasalzedo@gmail.com>
Co-authored-by: Matous Hybl <hyblmatous@gmail.com>
Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
`async fn`s do nothing until polled, but we want the DMA transfer to
immediately start in this case. Drivers rely on it. Some require special
orders, such as "start DMA, start SPI, then wait for DMA" which is awkward
to do without eager start.
Also use a manually-impl'd future, this allows getting rid of the "double"
Unborrow channel clone.
525: Applies the Uarte patch r=huntc a=huntc
Applies the Nordic workaround found in the `Uarte` for the nRF9160 and nRF5340 to the `BufferedUarte`.
Co-authored-by: huntc <huntchr@gmail.com>