Commit Graph

55 Commits

Author SHA1 Message Date
PaulStoffregen 1c5d403aba Clearer bandwidth allocation code & store in Pipe_t 2017-02-26 06:39:32 -08:00
PaulStoffregen 7658caa281 Add ability to remove & free pipes from async schedule 2017-02-25 18:21:44 -08:00
PaulStoffregen b4905f40ef Keep list of pipes to be deleted when device disconnects 2017-02-25 14:43:49 -08:00
PaulStoffregen 7f44715014 Assign unique, auto-incrementing addresses to USB devices 2017-02-25 14:02:42 -08:00
PaulStoffregen 08ed25eb49 Disconnect drivers and free device when cable unplugged 2017-02-25 13:40:31 -08:00
PaulStoffregen af4e4599f4 Begin work on MIDI device driver 2017-02-20 06:33:13 -08:00
PaulStoffregen 656765bac6 All debug printing through USBHost class 2017-02-18 12:03:10 -08:00
PaulStoffregen 57f958c368 Drivers claim interface & add Keyboard driver claim 2017-02-18 11:21:28 -08:00
PaulStoffregen 7756f2f4b7 Begin work on keyboard device driver 2017-02-18 06:09:28 -08:00
PaulStoffregen 4eaeb84a82 Parse hub port status, work-in-progress... 2017-02-17 17:44:24 -08:00
PaulStoffregen 97f728e83c Find (hopefully) best interrupt pipe bandwidth allocation 2017-02-14 04:19:20 -08:00
PaulStoffregen 4b4ce19dc6 Print less debug info, now that EHCI is kinda working 2017-02-13 13:29:52 -08:00
PaulStoffregen ce2fafd18c Minor device driver API simplifications 2017-02-13 13:11:54 -08:00
PaulStoffregen a6352852ed Respond to hub interrupt pipe by read & clear status 2017-02-13 12:56:01 -08:00
PaulStoffregen 2423608e0f Impove handling of non-enumeration control transfers 2017-02-13 12:01:05 -08:00
PaulStoffregen 252b9a2f24 (bare bones) Interrupt transfer support 2017-02-13 06:05:09 -08:00
PaulStoffregen 448910a94f Configurable periodic frame list size 2017-02-13 02:55:24 -08:00
PaulStoffregen 84752f8310 Add data (non-control) transfer function 2017-02-12 18:44:24 -08:00
PaulStoffregen 1b300c9051 Rename transfer functions from "new" to "queue" 2017-02-12 18:00:48 -08:00
PaulStoffregen de69cf9af2 Separate setup data for enumeration & drivers 2017-02-12 13:12:06 -08:00
PaulStoffregen 4b2258e5a7 Separate functions for data vs control transfer 2017-02-12 12:54:10 -08:00
PaulStoffregen 93c40091da initialize hubs 2017-02-12 12:03:26 -08:00
PaulStoffregen a45a462931 Rename USB drivers base class 2017-02-12 01:57:49 -08:00
PaulStoffregen 5d39664c89 Simplify and document USB device driver interface 2017-02-12 01:42:30 -08:00
PaulStoffregen 26fa6f2e34 Use linked list for device's drivers, not fixed size array 2017-02-12 00:22:50 -08:00
PaulStoffregen 326ecbe228 Read hub descriptor 2017-02-11 13:44:23 -08:00
PaulStoffregen eb807023db Add driver claiming at the device level 2017-02-11 06:03:54 -08:00
PaulStoffregen dc87eeaaf6 Convert to C++ classes 2017-02-11 03:34:36 -08:00
PaulStoffregen 2a2f745dc1 Group code into cpp files 2017-02-11 02:30:52 -08:00
PaulStoffregen f1c0481d89 Turn on PHY support for low speed 2017-02-10 18:52:12 -08:00
PaulStoffregen 03fb64e1ab Request string descriptors during enumeration 2017-02-10 18:06:35 -08:00
PaulStoffregen 6122604f55 Use PHY's high-speed disconnect detector 2017-02-09 05:51:06 -08:00
PaulStoffregen 91e1ceb0eb Read device & config descriptors 2017-02-08 08:49:52 -08:00
PaulStoffregen a649cbe12b Fix backward followup linking when creating a qTD group 2017-02-08 06:46:42 -08:00
PaulStoffregen 46324071f0 Fix adding to follup lists while also processing them 2017-02-08 06:35:56 -08:00
PaulStoffregen 38dea38146 Begin work on USB enumeration state machine 2017-02-07 06:36:18 -08:00
PaulStoffregen 600166af4c Add transfer callbacks 2017-02-07 04:04:08 -08:00
PaulStoffregen 7997b07157 Memory management functions 2017-02-06 02:40:07 -08:00
PaulStoffregen 36ca432baa Add MIT license and a few extra comments 2017-02-05 18:55:00 -08:00
PaulStoffregen 33151ad6cf Add qTD followup lists 2017-02-05 09:46:07 -08:00
PaulStoffregen 897cf23bf3 Add halt qTD and race-free qTD queuing method 2017-02-05 07:24:58 -08:00
PaulStoffregen f4d60b7594 Put QH into schedule when creating pipe 2017-02-05 06:15:12 -08:00
PaulStoffregen 92404ec121 Fix wLength for first control transfer test 2017-02-05 05:43:35 -08:00
PaulStoffregen 727a7c01ae Setting qTD active bit needed to actually do anything! 2017-02-04 19:22:46 -08:00
PaulStoffregen d58e0c207e Add even more debugging stuff, still no workie :( 2017-02-04 19:14:58 -08:00
PaulStoffregen 3fa09c381e Add lots of debugging stuff, still not transmitting anything :( 2017-02-04 04:01:24 -08:00
PaulStoffregen afa91af357 Use interrupts & Device/Pipe/Transfer structs (still no data...) 2017-02-03 20:37:28 -08:00
PaulStoffregen c98ba51e6d Use interrupts instead of polling 2017-01-23 04:47:54 -08:00
PaulStoffregen 10d5df3547 Enable USB host power power switch 2016-08-08 04:44:18 -07:00
PaulStoffregen d064762d7c Read a descriptor (not yet working) 2016-07-30 18:55:57 -07:00