8 Commits

Author SHA1 Message Date
Koen Zandberg
597f1d19aa
usbdev: Refactor to xmit API
This API change refactors the usbdev API to supply buffers via the
usbdev_ep_xmit function. This changes from the usbdev_ep_ready call to allow
separate buffers per call. An usbdev_ep_buf_t pseudotype is available and must
be used when defining buffers used for endpoints to adhere to the DMA alignment
restrictions often required with usb peripherals.

Main advantage is that the usbdev peripherals no longer have to allocate
oversized buffers for the endpoint data, potentially saving multiple KiB
of unused buffer space. These allocations are now the responsibility of
the individual USB interfaces in the firmware
2021-11-16 11:21:07 +01:00
Koen Zandberg
59e85cf921
usbdev: Refactor to xmit API
This API change refactors the usbdev API to supply buffers via the
usbdev_ep_xmit function. This changes from the usbdev_ep_ready call to allow
separate buffers per call. An usbdev_ep_buf_t pseudotype is available and must
be used when defining buffers used for endpoints to adhere to the DMA alignment
restrictions often required with usb peripherals.

Main advantage is that the usbdev peripherals no longer have to allocate
oversized buffers for the endpoint data, potentially saving multiple KiB
of unused buffer space. These allocations are now the responsibility of
the individual USB interfaces in the firmware
2021-11-16 11:21:00 +01:00
Koen Zandberg
9f8aee4e95
usbdev: Deprecate USBDEV_EVENT_TR_FAIL 2021-10-24 19:33:29 +02:00
Koen Zandberg
9eee6bc0a1
usbdev: Fix spelling mistakes 2019-10-23 10:36:49 +02:00
Koen Zandberg
20b94e9c56
usbdev: fix usbopt argument for getter/setter wrappers 2019-06-05 12:06:10 +02:00
Koen Zandberg
c697a3bfd8
usbdev: extend events with suspend/resume 2019-03-25 21:03:21 +01:00
Koen Zandberg
4d352fc93f
usbdev: Extend with low level initialization functions 2019-03-20 09:12:24 +01:00
Koen Zandberg
9af6c69a93
usbdev: Introduce a common API for USB peripherals
This commit adds usbdev, a common API to interface USB peripheral
devices. The API is split into two parts, one for the USB device itself
and one for the USB endpoint.
2019-03-14 21:44:56 +01:00