Commit Graph

147 Commits

Author SHA1 Message Date
Mathias
f2239d34cc Add bufferedUart, including a split version for only Rx or Tx 2022-09-26 20:34:55 +02:00
Mathias
ee76831f93 Add BufferedUart implementation, and feature-guard time-driver initialization, to free up TIMER peripheral if not used with embassy executor 2022-09-26 20:34:55 +02:00
Dario Nieuwenhuis
1e95c4fcff rp: Disable intrinsics by default. 2022-09-26 19:53:22 +02:00
bors[bot]
49070c75b6
Merge #972
972: Restructure USB crates r=Dirbaio a=Dirbaio

- Split driver from `embassy-usb` to a separate crate. This allows making breaking changes to `embassy-usb` without having to bump all the crates with driver impls, such as HALs.
- Merge classes into `embassy-usb`. Now that breaking changes to `embassy-usb` aren't that bad, having everything in a single crate is much easier.

Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
2022-09-26 11:32:41 +00:00
Dario Nieuwenhuis
7f7c14b7bc usb: split driver trait to separate crate. 2022-09-26 12:29:27 +02:00
Dario Nieuwenhuis
fa7781c48d Add credits to rp-hal 2022-09-26 11:57:26 +02:00
Mathias
2e7916c5fe Add RP2040 ROM functions and intrinsics aliases 2022-09-23 06:45:44 +02:00
Dario Nieuwenhuis
10d1ad2343 Replace futures::future::join -> embassy_futures::join::join. 2022-09-22 16:48:35 +02:00
Dario Nieuwenhuis
a0487380da Replace futures::future::poll_fn -> core::future::poll_fn. 2022-09-22 16:42:49 +02:00
Dario Nieuwenhuis
897b72c872 Update Rust nightly.
Removes feature(generic_associated_types)
2022-09-22 16:38:14 +02:00
bors[bot]
3b58ac1bf8
Merge #949
949: (embassy-rp): Implement RealTimeClock r=lulf a=MathiasKoch

Basically a 1:1 port of the great implementation effort made by `rp-hal`

Co-authored-by: Mathias <mk@blackbird.online>
2022-09-21 07:19:23 +00:00
bors[bot]
6663390224
Merge #954
954: rp: fix async SPI read and write r=lulf a=newAM

Closes #953 

Co-authored-by: Alex Martens <alex@thinglab.org>
2022-09-19 07:26:10 +00:00
Alex Martens
0c6933fefb rp: remove extraneous newlines in logs 2022-09-18 14:54:24 -07:00
Alex Martens
295cc997ae rp: let SPI RX overflow during async write 2022-09-18 12:23:17 -07:00
Alex Martens
ab1a6889a6 rp: fix async SPI read and write 2022-09-18 12:02:05 -07:00
Mathias
1c657d2d55 Add time-driver feature to docs 2022-09-16 16:45:59 +02:00
Mathias
feead3ae89 Implement RealTimeClock for embassy-rp 2022-09-16 13:18:23 +02:00
Mathias
f7267d493f Feature-gate time-driver in embassy-rp 2022-09-16 12:54:26 +02:00
Dario Nieuwenhuis
5327b9c289 time: add more tick rates, use 1mhz as default. 2022-09-02 00:59:34 +02:00
Henrik Alsér
efe456ab14 Fix dma 2022-09-01 15:50:08 +02:00
Henrik Alsér
71c130488b Reorder args 2022-09-01 15:12:44 +02:00
Henrik Alsér
e2181cb439 rustfmt 2022-09-01 15:12:44 +02:00
Henrik Alsér
b934f3f12e Remove cfg_if 2022-09-01 15:12:44 +02:00
Henrik Alsér
3fce6ec649 Rearrange new:s 2022-09-01 15:12:44 +02:00
Henrik Alsér
27905f1be1 Change DMA write/read to use raw pointers 2022-09-01 15:12:44 +02:00
Henrik Alsér
99dd2a9386 Reorder args 2022-09-01 15:12:44 +02:00
Henrik Alsér
6d347af9fa transfer_in_place 2022-09-01 15:12:43 +02:00
Henrik Alsér
44150c4830 impl embedded-hal-async 2022-09-01 15:12:43 +02:00
Henrik Alsér
07c64d902e example 2022-09-01 15:12:43 +02:00
Henrik Alsér
e7d4bf258a dma 2022-09-01 15:12:43 +02:00
Dario Nieuwenhuis
8ba421f324 Do not use cfg_if for embedded-hal-async feature gates.
Old code used `cfg_if!` because rustc still parses code inside disabled cfg's, and Rust stable at that time couldn't parse the new GAT where-clause location. This is not the case anymore.
2022-08-31 03:11:21 +02:00
Dario Nieuwenhuis
e4d4166da2
Merge pull request #927 from embassy-rs/rp-usb
rp: add usb device support.
2022-08-30 19:15:44 +02:00
Mathias
bd27b9080f Add HIL tests of DMA & UART, and correctly set DREQ for uart DMA 2022-08-26 12:55:15 +02:00
Dario Nieuwenhuis
a730e2cd0f rp: add usb device support. 2022-08-25 00:03:55 +02:00
Dario Nieuwenhuis
f11aa9720b rp: update PAC 2022-08-24 23:43:28 +02:00
Mathias
b88ef03214 Only check for ahb error in DMA 2022-08-23 13:46:48 +02:00
Mathias
594a64b3bf Change to using embassy-sync 2022-08-23 13:28:14 +02:00
Mathias
36cf719a18 Merge branch 'master' of https://github.com/embassy-rs/embassy into embassy-rp/dma 2022-08-23 13:24:52 +02:00
Mathias
7e3ce2c90b Abort DMA operation when dropping a Transfer, and panic on DMA errors 2022-08-23 13:20:36 +02:00
Mathias
f6c2e26372 Address code review comments 2022-08-23 12:28:17 +02:00
Dario Nieuwenhuis
21072bee48 split embassy-util into embassy-futures, embassy-sync. 2022-08-22 22:18:13 +02:00
Dario Nieuwenhuis
f48391a685 rp: fix nvic prio bits (it's 2, not 3) 2022-08-22 16:29:34 +02:00
Mathias
295af2a057 Fix bit checking in DMA irq 2022-08-19 14:16:19 +02:00
Mathias
331a64a4ea Add back public dma::copy, and correct dma incr settings for read/write 2022-08-19 10:43:59 +02:00
Mathias
140ef4febf Add DMA_IRQ0 handling to Transfer 2022-08-19 09:48:58 +02:00
Mathias
aa586fe1de Simplify waker storage for DMA state 2022-08-18 21:27:37 +02:00
Mathias
debff0980d Don't increment read address in DMA copy from peripherals 2022-08-18 21:20:47 +02:00
Mathias
1d49b3444f Add DMA read + write functions 2022-08-18 21:09:50 +02:00
Mathias
a7d6bc7ba5 Merge branch 'master' of https://github.com/embassy-rs/embassy into embassy-rp/dma 2022-08-18 21:08:57 +02:00
bors[bot]
aefa5275a2
Merge #910
910: (embassy-rp): Implement remaining logic for blocking UART r=lulf a=MathiasKoch

async read/write is still `todo!()`, awaiting DMA implementation.

Co-authored-by: Mathias <mk@blackbird.online>
2022-08-18 18:36:27 +00:00