PaulStoffregen
f80dbacd7f
Send set interface to any hub with more than 1 interface altsetting
6 lat temu
PaulStoffregen
62fbf401d2
Improve hub descriptor parsing, find all interfaces
6 lat temu
Kurt Eckhardt
4e2ea2d96e
String buffers - Devices contribute buffers
instead of having each HUB have 7 buffers, which can eat up space. We have each main object contribute currently one string buffer, which than when we initialize a Device_t we try to allocate one for it, likewise we release it when the Device is released.
Hopefully less memory needed.
Also updated such that the HIDInput classes can not retrieve these strings.
Changed test program to now also have list of HIDInput objects and when I detect a new one, I again print out info on it...
7 lat temu
PaulStoffregen
f1bb020282
Fix print() & println() conflict with Arduino Print class
7 lat temu
PaulStoffregen
5ea0d568a1
Fix scheduling of hub control transfers
7 lat temu
PaulStoffregen
a44e342703
Fix order of deferred hub control transfers (KurtE)
https://forum.pjrc.com/threads/45740-USB-Host-Mouse-Driver?p=155745&viewfull=1#post155745
7 lat temu
PaulStoffregen
5935deb8ce
Device driver constructors compatible with UHS library
7 lat temu
PaulStoffregen
ea75a1c673
Rename header file to USBHost_t36.h
7 lat temu
PaulStoffregen
be1004e0f4
Disconnect downstream deviecs with hub disconnects
7 lat temu
PaulStoffregen
0443ab8db6
Device drivers contribute the memory they will require
7 lat temu
PaulStoffregen
98701a268f
Handle disconnect device from hub
7 lat temu
PaulStoffregen
920f71e768
Fix hub debounce timer port status requests
7 lat temu
PaulStoffregen
86c1bbe6ee
Add reset-enumeration mutual exclusion
7 lat temu
PaulStoffregen
2e1e9748e0
Hub driver (finally) creates devices
7 lat temu
PaulStoffregen
05582c91a0
Trim hud driver memory usage
7 lat temu
PaulStoffregen
ba0e6f495b
Do only 1 control transfer at a time to hubs, clear other change status
7 lat temu
PaulStoffregen
81f30ecd5f
Begin work in hub port state machine & debounce wait
7 lat temu
PaulStoffregen
d0ee653192
Restructure hub driver to stateless approach
7 lat temu
PaulStoffregen
8ee6d28432
Implement driver timers
7 lat temu
PaulStoffregen
b30d8a4f48
Define timer API for device drivers
7 lat temu
PaulStoffregen
80225dfe22
Add to periodic sched using interval+offset & binary tree
7 lat temu
PaulStoffregen
656765bac6
All debug printing through USBHost class
7 lat temu
PaulStoffregen
57f958c368
Drivers claim interface & add Keyboard driver claim
7 lat temu
PaulStoffregen
4eaeb84a82
Parse hub port status, work-in-progress...
7 lat temu
PaulStoffregen
ce2fafd18c
Minor device driver API simplifications
7 lat temu
PaulStoffregen
a6352852ed
Respond to hub interrupt pipe by read & clear status
7 lat temu
PaulStoffregen
252b9a2f24
(bare bones) Interrupt transfer support
7 lat temu
PaulStoffregen
1b300c9051
Rename transfer functions from "new" to "queue"
7 lat temu
PaulStoffregen
de69cf9af2
Separate setup data for enumeration & drivers
7 lat temu
PaulStoffregen
4b2258e5a7
Separate functions for data vs control transfer
7 lat temu
PaulStoffregen
93c40091da
initialize hubs
7 lat temu
PaulStoffregen
5d39664c89
Simplify and document USB device driver interface
7 lat temu
PaulStoffregen
326ecbe228
Read hub descriptor
7 lat temu
PaulStoffregen
eb807023db
Add driver claiming at the device level
7 lat temu
PaulStoffregen
dc87eeaaf6
Convert to C++ classes
7 lat temu
PaulStoffregen
2a2f745dc1
Group code into cpp files
7 lat temu
PaulStoffregen
f1c0481d89
Turn on PHY support for low speed
7 lat temu
PaulStoffregen
03fb64e1ab
Request string descriptors during enumeration
7 lat temu
PaulStoffregen
6122604f55
Use PHY's high-speed disconnect detector
7 lat temu
PaulStoffregen
91e1ceb0eb
Read device & config descriptors
7 lat temu
PaulStoffregen
a649cbe12b
Fix backward followup linking when creating a qTD group
7 lat temu
PaulStoffregen
46324071f0
Fix adding to follup lists while also processing them
7 lat temu
PaulStoffregen
38dea38146
Begin work on USB enumeration state machine
7 lat temu
PaulStoffregen
600166af4c
Add transfer callbacks
7 lat temu
PaulStoffregen
7997b07157
Memory management functions
7 lat temu
PaulStoffregen
36ca432baa
Add MIT license and a few extra comments
7 lat temu
PaulStoffregen
33151ad6cf
Add qTD followup lists
7 lat temu
PaulStoffregen
897cf23bf3
Add halt qTD and race-free qTD queuing method
7 lat temu
PaulStoffregen
f4d60b7594
Put QH into schedule when creating pipe
7 lat temu
PaulStoffregen
92404ec121
Fix wLength for first control transfer test
7 lat temu