minix/minix/drivers/usb/usb_storage
Wojciech Zajac 2d64210c1d Much USB code for ARM USB support
Written by JP Embedded.

Host controller (HCD), mass storage, and hub drivers.

Change-Id: I4237cf7aeb4a1c0205a1876593a9cc67ef3d577e
2014-08-29 18:52:49 +02:00
..
bulk.c New sources layout 2014-07-31 16:00:30 +02:00
bulk.h New sources layout 2014-07-31 16:00:30 +02:00
common.h New sources layout 2014-07-31 16:00:30 +02:00
Makefile merge libminlib with libc 2014-08-28 18:49:19 +02:00
README.txt New sources layout 2014-07-31 16:00:30 +02:00
scsi.c Much USB code for ARM USB support 2014-08-29 18:52:49 +02:00
scsi.h Much USB code for ARM USB support 2014-08-29 18:52:49 +02:00
urb_helper.c New sources layout 2014-07-31 16:00:30 +02:00
urb_helper.h New sources layout 2014-07-31 16:00:30 +02:00
usb_storage.c Much USB code for ARM USB support 2014-08-29 18:52:49 +02:00
usb_storage.conf New sources layout 2014-07-31 16:00:30 +02:00
usb_storage.h New sources layout 2014-07-31 16:00:30 +02:00

-------------------------------------------------------------------------------
*                           INFORMATION:                                      *
-------------------------------------------------------------------------------
README file for "USB Mass Storage driver" that uses DDEkit and libblockdriver.

created march-april 2014, JPEmbedded (info@jpembedded.eu)

-------------------------------------------------------------------------------
*                           KNOWN LIMITATIONS:                                *
-------------------------------------------------------------------------------
-Hardcoded interface number for bulk-only reset.
-Hardcoded configuration number for simple enumeration.
-Call to ddekit_minix_create_msg_q in _ddekit_usb_thread uses base that
 overlaps that of blockdriver's (in mass_storage_task) so initialization
 must be done in fixed order.
-Some of DDEKit's functions are declared in source files as they are missing
 from headers.
-DDEKit has 'init' but no 'deinit' call, so memory is spilled.
-Hardcoded geometry.
-LUN always set to 0.
-SIGTERM handler uses exit instead of DDEkit semaphores.
-mass_storage.conf taken from dde-linux26-usb-drivers.
-Subpartitioning does not seem to work.
-Type ddekit_usb_dev is not defined in any header file but two variants of it
 should exist (client and server).
-Magic number in URB setup buffer assignment as there is no header for that
 (like usb_ch9.h for descriptors).