Kurt Eckhardt
704d511c81
PL2303 support
This commit should start to allow some Prolific PL2303 devices to work.
Tis device has a rather more complex initialization process than some
of the other devices.
I have tested this some with one device that I used to use to program
some older RS232 based boards plus talk to an SSC-32 device.
Test case is I am able to talk to SSC-32 and if I type in ver<cr>
It does properly return the version number.
The data I am seeing is pretty close to what
was documented in: https://gist.github.com/tommie/89011c5ac06553d5cdb8
as well as what the Linux driver outputs.
I also incorperated Frank's configuration options.
7 anni fa
Frank
52ad568b07
let user choose PERIODIC_LIST_SIZE
7 anni fa
PaulStoffregen
f1bb020282
Fix print() & println() conflict with Arduino Print class
7 anni fa
PaulStoffregen
9840e82db8
FTDI transmit, improve performance for fast output
7 anni fa
PaulStoffregen
5575f9fcae
FTDI transmit, add partial packet output
7 anni fa
PaulStoffregen
a1cde4e568
Print less low-level EHCI info when USBHOST_PRINT_DEBUG defined
7 anni fa
PaulStoffregen
78a466c362
Fix adding pipes to periodic schedule
7 anni fa
PaulStoffregen
e345c0360d
Add error recovery for async schedule errors & halted pipes
7 anni fa
PaulStoffregen
50016717b3
Fix periodic list init when diffent sizes used
7 anni fa
PaulStoffregen
3355eab2a2
Add documentation (in source code comments)
7 anni fa
PaulStoffregen
ea75a1c673
Rename header file to USBHost_t36.h
7 anni fa
PaulStoffregen
b18ee4ea06
Add define to enable/disable all debug printing
7 anni fa
PaulStoffregen
86c1bbe6ee
Add reset-enumeration mutual exclusion
7 anni fa
PaulStoffregen
d0ee653192
Restructure hub driver to stateless approach
7 anni fa
PaulStoffregen
edb04e60e7
Fix interrupt pipe bug when running at 480 Mbit/sec
7 anni fa
PaulStoffregen
8ee6d28432
Implement driver timers
7 anni fa
PaulStoffregen
b30d8a4f48
Define timer API for device drivers
7 anni fa
PaulStoffregen
430e24ba54
Free transfers and pipe when deleting from periodic schedule
7 anni fa
PaulStoffregen
fe5cf3e4cd
Remove to-be-deleted pipes from periodic schedule
7 anni fa
PaulStoffregen
80225dfe22
Add to periodic sched using interval+offset & binary tree
7 anni fa
PaulStoffregen
1c5d403aba
Clearer bandwidth allocation code & store in Pipe_t
7 anni fa
PaulStoffregen
7658caa281
Add ability to remove & free pipes from async schedule
7 anni fa
PaulStoffregen
b4905f40ef
Keep list of pipes to be deleted when device disconnects
7 anni fa
PaulStoffregen
08ed25eb49
Disconnect drivers and free device when cable unplugged
7 anni fa
PaulStoffregen
656765bac6
All debug printing through USBHost class
7 anni fa
PaulStoffregen
57f958c368
Drivers claim interface & add Keyboard driver claim
7 anni fa
PaulStoffregen
4eaeb84a82
Parse hub port status, work-in-progress...
7 anni fa
PaulStoffregen
97f728e83c
Find (hopefully) best interrupt pipe bandwidth allocation
7 anni fa
PaulStoffregen
4b4ce19dc6
Print less debug info, now that EHCI is kinda working
7 anni fa
PaulStoffregen
252b9a2f24
(bare bones) Interrupt transfer support
7 anni fa
PaulStoffregen
448910a94f
Configurable periodic frame list size
7 anni fa
PaulStoffregen
84752f8310
Add data (non-control) transfer function
7 anni fa
PaulStoffregen
1b300c9051
Rename transfer functions from "new" to "queue"
7 anni fa
PaulStoffregen
de69cf9af2
Separate setup data for enumeration & drivers
7 anni fa
PaulStoffregen
4b2258e5a7
Separate functions for data vs control transfer
7 anni fa
PaulStoffregen
eb807023db
Add driver claiming at the device level
7 anni fa
PaulStoffregen
dc87eeaaf6
Convert to C++ classes
7 anni fa
PaulStoffregen
2a2f745dc1
Group code into cpp files
7 anni fa
PaulStoffregen
f1c0481d89
Turn on PHY support for low speed
7 anni fa
PaulStoffregen
03fb64e1ab
Request string descriptors during enumeration
7 anni fa
PaulStoffregen
6122604f55
Use PHY's high-speed disconnect detector
7 anni fa
PaulStoffregen
91e1ceb0eb
Read device & config descriptors
7 anni fa
PaulStoffregen
a649cbe12b
Fix backward followup linking when creating a qTD group
7 anni fa
PaulStoffregen
46324071f0
Fix adding to follup lists while also processing them
7 anni fa
PaulStoffregen
38dea38146
Begin work on USB enumeration state machine
7 anni fa
PaulStoffregen
600166af4c
Add transfer callbacks
7 anni fa
PaulStoffregen
7997b07157
Memory management functions
7 anni fa
PaulStoffregen
36ca432baa
Add MIT license and a few extra comments
7 anni fa
PaulStoffregen
33151ad6cf
Add qTD followup lists
7 anni fa
PaulStoffregen
897cf23bf3
Add halt qTD and race-free qTD queuing method
7 anni fa