aboutsummaryrefslogtreecommitdiffstats
path: root/usbh/src/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* Refactor so Endpoint controls pipe characteristics.Brian Cully2019-08-011-23/+12
| | | | | | Endpoints know their own address, number, max packet size, and data toggle states. When a pipe is needed, pass in the endpoint its needed for so that configuration can happen according to that endpoint.
* Rename USBToken/USBPipeType.Brian Cully2019-07-281-2/+2
| | | | These are implementation details of the samd platform as used.
* `control_req` -> `control_transfer`.Brian Cully2019-07-281-2/+2
| | | | | Same as in/out transfer functions now, and matches USB spec terminology.
* Add pipe::NO_DATA_STAGE const for convenience.Brian Cully2019-07-281-2/+2
| | | | | For use in `control_req`'s buffer argument if no data stage is required. It was either this or have a separate function.
* Remove DataBuf exposure outside of pipe impl.Brian Cully2019-07-281-3/+3
|
* Use TryFrom where possible, instead of panicking.Brian Cully2019-07-281-1/+1
|
* Rename basic USB protocol types.Brian Cully2019-07-281-6/+6
|
* Remove delay field from USBHost.Brian Cully2019-07-281-12/+11
| | | | | It was being used for FSM timings, so put it directly on the state discriminant if required.
* Remove un-needed return.Brian Cully2019-07-271-1/+1
|
* Move post-address device config to Device impl.Brian Cully2019-07-271-178/+27
|
* WIP: we have lights on the keyboard!Brian Cully2019-07-271-21/+66
|
* Remove unused structs.Brian Cully2019-07-251-47/+0
|
* Update log levels.Brian Cully2019-07-251-29/+31
|
* Make DataBuf hold a mut pointer.Brian Cully2019-07-251-6/+6
| | | | | Since this is being used by hardware DMA, and the hardware treats it as mutable, lets mark it as such.
* Allow dead code in crate.Brian Cully2019-07-251-9/+7
| | | | | We have to stub out a lot of stuff from USB protocol and hardware, and it may or may not get used, so quash the warning.
* Only reset USB during initialization state.Brian Cully2019-07-251-3/+1
| | | | | USBHost::new() sets up the state machine to initialize immediately, so rely on that, rather than initializing twice on CPU reset.
* Move USB host stuff to separate crate.Brian Cully2019-07-251-0/+641