777: usb-ncm: remove useless Cell. r=Dirbaio a=Dirbaio
This allows the CDC-NCM class struct to be Send, so you can run
it at a different priority than the main USB stack task.
bors r+
Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
768: nrf/usb: fix control out transfers getting corrupted due to ep0rcvout sticking from earlier. r=Dirbaio a=Dirbaio
bors r+
Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
756: Add async quadrature decoder for embassy-nrf r=Dirbaio a=kalkyl
Thsi PR adds an async interface to the QDEC peripheral to embassy-nrf, that can be used for rotary encoders for example.
Co-authored-by: Henrik Alsér <henrik@mindbite.se>
Co-authored-by: Henrik Alsér <henrik.alser@me.com>
Co-authored-by: Henrik Alsér <henrik.alser@me.com>
763: Misc USB improvements r=Dirbaio a=Dirbaio
The "simplify control in/out handlng" commit gives a -2kb code size improvement.
766: Make usb_serial examples work on windows r=Dirbaio a=timokroeger
Windows shows `error 10` when using CDC ACM on non composite devices.
Workaround is to use IADS:
https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.9.1/kconfig/CONFIG_CDC_ACM_IAD.html#help
Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
Co-authored-by: Timo Kröger <timo.kroeger@hitachienergy.com>
767: Stm32 fixes r=lulf a=jr-oss
Using embassy on STM32 Discovery board showed problems with
- USART with parity
- Clock settings (CFGR) when using PLL and prescaler
- Flash ACR settings
This PR attempts to fix these
Co-authored-by: Ralf <jr-oss@gmx.net>
PLL settings remained intact because these bits are not writable when PLL is enabled,
but prescaler settings were overwritten by selecting PLL as sysclk (CFGR.SW[1:0]).
765: Implement Output::is_set_low for embassy-rp r=Dirbaio a=danbev
This commit implements a suggestion for the method `is_set_low` which is
currently a `todo`, by reading last value written to `GPIO_OUT`.
Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com>
751: Use explicit return statement TaskStorage::spawn r=Dirbaio a=danbev
This commit removes the else branch in `TaskStorage::spawn`, and returns
explicitly from the if statement's branch, similar to what
[TaskPool::spawn](85c0525e01/embassy/src/executor/raw/mod.rs (L235-L243)) does.
Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com>
This commit removes the else branch in TaskStorage::spawn, and returns
explicitly from the if statement's branch, similar to what
TaskPool::spawn does.
The replacement is `embassy-usb`. There's a WIP driver for stm32 USBD in #709,
there's no WIP driver for stm32 USB_OTG. This means we're left without
USB_OTG support for now.
Reason for removing is I'm going to soon remove `embassy::io`, and
USB uses it. I don't want to spend time maintaining "dead" code
that is going to be removed. Volunteers welcome, either to update
old USB to the new IO, or write a USB_OTG driver fo the new USB.
749: Rename spawn_allocate to spawn_mark_used r=Dirbaio a=danbev
This commit contains a suggestion to rename `TaskStorage::spawn_allocate`.
The motivation for this is when reading through the code I was
expecting something else to happen in this method, due to `allocate` in
the method name.
I'm very new to this code base so I may be wrong in thinking this
is a good change, but I wanted to open this PR to get some feedback.
Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com>