Commit Graph

5451 Commits

Author SHA1 Message Date
2493699fb3 Ref count the peripheral drop 2021-12-16 07:09:33 +11:00
5d19f87acb cleanup example 2021-12-15 12:30:48 -07:00
cfb5e8df57 undo T:regs in impl UsbPeripheral 2021-12-15 11:00:55 -07:00
50f151e6bc use Instance regs 2021-12-15 10:29:19 -07:00
cd356896ee fix nrf52820 2021-12-15 10:27:10 -07:00
61f12324ff enable USB peripheral for relevant chips 2021-12-15 10:23:19 -07:00
1c0a3688a4 use forked nrf-usbd 2021-12-15 10:00:17 -07:00
79502330de rename to UsbBus 2021-12-15 09:59:56 -07:00
1374ad2ab6 Introduces split on the nRF Uarte
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.
2021-12-15 18:31:52 +11:00
2a6d92d641 cleanup 2021-12-14 16:53:13 -07:00
5f0fefbd25 dont rely on nrf-usdb 2021-12-14 16:51:34 -07:00
3debe604fb sorta works, too many interupts? 2021-12-14 16:48:48 -07:00
6597e67036 Add finish_dma function 2021-12-14 17:46:25 -06:00
a13a7a6616 Replace wait_for_idle with spin_until_idle 2021-12-14 17:46:25 -06:00
07cbd41131 dont expose embedded_hal_common::usb 2021-12-14 15:47:54 -07:00
e75cb1a564 Regs type alias 2021-12-14 15:39:00 -06:00
b06658c195 Refactor new 2021-12-14 15:39:00 -06:00
f31140a70b revert 2021-12-14 13:51:50 -07:00
1a7b9e3279 Merge #542
542: nrf/gpiote: remove PortInput, move impls to Input/FlexPin. r=Dirbaio a=Dirbaio

`PortInput` is just a dumb wrapper around `Input`, it has no reason whatsoever to exist. This PR moves the `wait_for_x` functionality to `Input` directly.

It also adds it to `FlexPin` for completeness and consistency with `Input`.

(The reason `PortInput` exists is a while ago `GPIOTE` was an owned singleton that you had to initialize, so `PortInput::new()` would require it to enforce it's been initialized. This doesn't apply anymore now that GPIOTE is "global")

Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
2021-12-14 14:09:59 +00:00
153b1bbdbf nrf/gpiote: remove PortInput, move impls to Input. 2021-12-14 13:23:40 +01:00
535d30335a make send, consolidate usb types 2021-12-13 18:13:42 -07:00
83a1237ea3 stub out the embassy registers for usbd 2021-12-13 18:04:54 -07:00
78c5d65ca9 [lint] Add newline in pwr file 2021-12-13 18:16:58 +05:30
2c50ab1ebf [ci] Add STM32F3 examples to CI shell 2021-12-13 18:13:23 +05:30
3f3b7d066e Merge pull request #541 from lulf/docs-readme
Some notes in the readme about docs
2021-12-13 13:25:26 +01:00
91e0c6df73 Some notes in the readme about docs 2021-12-13 13:23:18 +01:00
a65c2bc2b4 [examples] Add examples for STM32F3 2021-12-13 14:50:13 +05:30
3f33d307ff [feature] Add rcc register support for F3 2021-12-13 14:50:13 +05:30
e2c074d133 [feature] Add pwr register support for F3 2021-12-13 13:49:41 +05:30
7733d11f90 [generate] Add stm32f3 chips to the Cargo manifest 2021-12-13 13:49:41 +05:30
629fab7e21 [manual] Add stm32f3 family to stm32-gen-features 2021-12-13 13:49:41 +05:30
e5dc63e8e9 usb feature gate 2021-12-12 21:39:59 -07:00
f430c0e8c2 nrf-usbd 2021-12-12 19:20:02 -07:00
2a4a133b88 Merge #533
533: Book poc r=Dirbaio a=lulf

This is a Proof of Concept for an embassy book. It's using Antora/Asciidoc.

* Asciidoc because it's a single specification with a slightly richer feature set than markdown. 
* Antora because it allows keeping content in the embassy repo, while book definition in another repo (embassy-book). 

Using antora also allows for easy embedding of embassy doc in other projects, which I think in turn increases probability of upstream contributions.

The sources of content are located in docs/ but could also be in a separate repo. However, keeping it in the embassy repo makes it easier to support one version of the book per embassy version in the future.

At present, the book is automatically built every hour from this branch and published at: https://embassy-rs.github.io/embassy-book/embassy/dev/index.html

Co-authored-by: Ulf Lilleengen <lulf@redhat.com>
Co-authored-by: Ulf Lilleengen <ulf.lilleengen@gmail.com>
2021-12-13 00:07:39 +00:00
052abc918a Merge #537
537: Documents the nRF BufferedUarte problem r=Dirbaio a=huntc

Please see https://github.com/embassy-rs/embassy/issues/536 for the rationale.

Co-authored-by: huntc <huntchr@gmail.com>
2021-12-12 20:35:43 +00:00
8e25ecb68e Merge #538
538: Use smoltcp 0.8.0 from crates.io. r=Dirbaio a=matoushybl



Co-authored-by: Matous Hybl <hyblmatous@gmail.com>
2021-12-12 20:23:01 +00:00
e95b96f3a4 Use smoltcp 0.8.0 from crates.io. 2021-12-12 15:32:36 +01:00
dc3469b297 Documents the nRF BufferedUarte problem
Please see https://github.com/embassy-rs/embassy/issues/536 for the rationale.
2021-12-12 17:52:17 +11:00
ff82c76935 Fix broken ci.sh 2021-12-10 13:10:02 +01:00
aa0abe976a Fix doc example compile 2021-12-10 12:58:23 +01:00
e5d4d0952b Add doc-specific example and add it to CI 2021-12-10 12:46:41 +01:00
9b01eed195 Revert blinky changes for now 2021-12-10 12:32:20 +01:00
e93f2679b1 More content 2021-12-10 12:27:44 +01:00
b48fcd9229 Add more content 2021-12-10 12:04:12 +01:00
7568d0bb68 More on traits and notes on time 2021-12-10 10:47:34 +01:00
439e317ba3 Add diagrams explaining the runtime 2021-12-10 10:22:11 +01:00
d2820d5be7 Update section on async 2021-12-10 08:24:39 +01:00
08e1fcd2e4 Add example snippet inclusion 2021-12-10 08:08:56 +01:00
dce3f8c47d Merge #534
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>
2021-12-10 04:26:11 +00:00
45ef944457 Stm flush required implementing also, along with std alloc split 2021-12-10 15:11:41 +11:00