Commit f39db3eb authored by Zenithal's avatar Zenithal Committed by Jiuyang Liu
Browse files

Add USB 1.1 FS device

A USB 1.1 Full speed device is implemented.
Actually it is USB 2.0 compliant as additional requests
can be handled in software, but to make things
less confusing we say it is USB 1.1.

It is an end-to-end solution, as it can be easily
attached to the tilelink/axi4 bus and in the end
it outputs two top io for RX/TX.

The controller and PHY is not strictly separated,
and it does not have a standard UTMI/ULPI port.
The MMIO port is also custom.

The architecture for it may be found in slides
of RVSC22[1].

The driver for it may be found in [2].
Some part of the driver is quite similar
to tinyUSB so it may get ported there.

It has been verified in an Arty100t FPGA,
capable of running the required USB stack
of canokey (a yubikey alternative) [1].

The control, bulk and interrupt transfer types
worked, but the support of isoc
transfer is not added.

[1] https://github.com/OpenRigil/rvsc22
[2] https://github.com/OpenRigil/openrigil-firmware
parent 19d42938
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment