Ooops - TeensyHID bootloader makefile should use a 16MHz FCPU, not 8MHz.
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / MassStorage.h
index 17e5bab..aa70733 100644 (file)
                                                  *   the interface is enumerated.\r
                                                  */\r
                        } USB_ClassInfo_MS_Host_t;\r
-\r
-                       /** Type define for a SCSI Sense structure. Structures of this type are filled out by the\r
-                        *  device via the MassStore_RequestSense() function, indicating the current sense data of the\r
-                        *  device (giving explicit error codes for the last issued command). For details of the\r
-                        *  structure contents, refer to the SCSI specifications.\r
-                        */\r
-                       typedef struct\r
-                       {\r
-                               uint8_t       ResponseCode;\r
-\r
-                               uint8_t       SegmentNumber;\r
-                               \r
-                               unsigned char SenseKey            : 4;\r
-                               unsigned char _RESERVED1          : 1;\r
-                               unsigned char ILI                 : 1;\r
-                               unsigned char EOM                 : 1;\r
-                               unsigned char FileMark            : 1;\r
-                               \r
-                               uint8_t      Information[4];\r
-                               uint8_t      AdditionalLength;\r
-                               uint8_t      CmdSpecificInformation[4];\r
-                               uint8_t      AdditionalSenseCode;\r
-                               uint8_t      AdditionalSenseQualifier;\r
-                               uint8_t      FieldReplaceableUnitCode;\r
-                               uint8_t      SenseKeySpecific[3];\r
-                       } SCSI_Request_Sense_Response_t;\r
-\r
-                       /** Type define for a SCSI Inquiry structure. Structures of this type are filled out by the\r
-                        *  device via the MassStore_Inquiry() function, retrieving the attached device's information.\r
-                        *  For details of the structure contents, refer to the SCSI specifications.\r
-                        */\r
-                       typedef struct\r
-                       {\r
-                               unsigned char DeviceType          : 5;\r
-                               unsigned char PeripheralQualifier : 3;\r
-                               \r
-                               unsigned char _RESERVED1          : 7;\r
-                               unsigned char Removable           : 1;\r
-                               \r
-                               uint8_t      Version;\r
-                               \r
-                               unsigned char ResponseDataFormat  : 4;\r
-                               unsigned char _RESERVED2          : 1;\r
-                               unsigned char NormACA             : 1;\r
-                               unsigned char TrmTsk              : 1;\r
-                               unsigned char AERC                : 1;\r
-\r
-                               uint8_t      AdditionalLength;\r
-                               uint8_t      _RESERVED3[2];\r
-\r
-                               unsigned char SoftReset           : 1;\r
-                               unsigned char CmdQue              : 1;\r
-                               unsigned char _RESERVED4          : 1;\r
-                               unsigned char Linked              : 1;\r
-                               unsigned char Sync                : 1;\r
-                               unsigned char WideBus16Bit        : 1;\r
-                               unsigned char WideBus32Bit        : 1;\r
-                               unsigned char RelAddr             : 1;\r
-                               \r
-                               uint8_t      VendorID[8];\r
-                               uint8_t      ProductID[16];\r
-                               uint8_t      RevisionID[4];\r
-                       } SCSI_Inquiry_Response_t;\r
                        \r
                        /** SCSI capacity structure, to hold the total capacity of the device in both the number\r
                         *  of blocks in the current LUN, and the size of each block. This structure is filled by\r
                         *  UNit, a logical drive) in the device. This value can then be used in the other functions of the Mass Storage\r
                         *  Host mode Class driver to address a specific LUN within the device.\r
                         *\r
+                        *  \note Some devices do not support this request, and will STALL it when issued. To get around this,\r
+                        *        on unsupported devices the max LUN index will be reported as zero and no error will be returned\r
+                        *        if the device STALLs the request.\r
+                        *\r
                         *  \param[in,out] MSInterfaceInfo  Pointer to a structure containing a MS Class host configuration and state\r
                         *  \param[out] MaxLUNIndex  Pointer to a location where the highest LUN index value should be stored\r
                         *\r
                        #define COMMAND_DIRECTION_DATA_OUT     (0 << 7)\r
                        #define COMMAND_DIRECTION_DATA_IN      (1 << 7)\r
                        \r
-                       #define COMMAND_DATA_TIMEOUT_MS        2000\r
+                       #define COMMAND_DATA_TIMEOUT_MS        10000\r
 \r
                        #define MS_FOUND_DATAPIPE_IN           (1 << 0)\r
                        #define MS_FOUND_DATAPIPE_OUT          (1 << 1)\r