FS#10150 - USB: Core rework

Attached to Project: Rockbox
Opened by Tomer Shalev (tomers) - Sunday, 19 April 2009, 19:33 GMT
Last edited by Frank Gevaerts (fg) - Sunday, 19 April 2009, 19:54 GMT
Task Type Patches
Category Drivers
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


This patch is a major overhaul to the USB core code.

It includes separating the USB handler into separate functions according to the request type (Device/Interface/Endpoint, etc.) and according to other criteria. This is done in order to break the very long functions that used to be there, which were unreadable and error prone (as was found in  FS#10119 ).

This patch adds asking the USB class drivers to handle the request. This feature was found to be required in the HID class driver implementation, and will probably be needed many times in the future.

This patch was tested by using the Mass Storage class-driver on Sansa e200v1.
This task depends upon

Closed by  Frank Gevaerts (fg)
Sunday, 19 April 2009, 19:54 GMT
Reason for closing:  Accepted
Additional comments about closing:  committed as r20748