feat: implement clocks enabling
Revert "feat: atomic register modifications"
This reverts commit 997dd77e0476ee3929fdab6b1ad29cef85f32c2b.
feat: implement cdc application layer, fix enumeration
feat: atomic register modifications
fix: usb should not rewrite DIEPCTL bits
feat: add rx data callback, increase tx fifo size
fix: make queue thread safe
fix: ensure register access are inline
chore: fix packing on x86_64
feat: use task_result to indicate blocking
There should be no spin loops inside of the
interrupts, so this change removes them,
and instead uses a result system that has
WOULD_BLOCK result. When this result is returned,
it is expected there was no side-effect and the
function can safely be reran later.
feat: implement enumeration fully
chore: update pin, exti, delay
docs: add documentation comments to most functions
feat: implement usb devicd cdc descriptors, init, setup
feat: move all sending instructions to generic send functions
feat: implement most of enumeration
feat: receive setup packets
feat: implement simple control usb read, writes