\r
/* Type Defines: */\r
/** Class state structure. An instance of this structure should be made within the user application,\r
- * and passed to each of the HID class driver functions as the HIDInterfaceInfo parameter. This\r
- * stores each HID interface's configuration and state information.\r
+ * and passed to each of the Mass Storage class driver functions as the MSInterfaceInfo parameter. This\r
+ * stores each Mass Storage interface's configuration and state information.\r
*/\r
typedef struct\r
{\r
const struct\r
{\r
- uint8_t DataINPipeNumber; /**< Pipe number of the MS interface's IN data pipe */\r
- uint8_t DataOUTPipeNumber; /**< Pipe number of the MS interface's OUT data pipe */\r
+ uint8_t DataINPipeNumber; /**< Pipe number of the Mass Storage interface's IN data pipe */\r
+ bool DataINPipeDoubleBank; /** Indicates if the Mass Storage interface's IN data pipe should use double banking */\r
+\r
+ uint8_t DataOUTPipeNumber; /**< Pipe number of the Mass Storage interface's OUT data pipe */\r
+ bool DataOUTPipeDoubleBank; /** Indicates if the Mass Storage interface's OUT data pipe should use double banking */\r
} Config; /**< Config data for the USB class interface within the device. All elements in this section\r
* <b>must</b> be set or the interface will fail to enumerate and operate correctly.\r
*/\r
struct\r
{\r
bool IsActive; /**< Indicates if the current interface instance is connected to an attached device, valid\r
- * after \ref HID_Host_ConfigurePipes() is called and the Host state machine is in the\r
+ * after \ref MS_Host_ConfigurePipes() is called and the Host state machine is in the\r
* Configured state\r
*/\r
- uint8_t InterfaceNumber; /**< Interface index of the HID interface within the attached device */\r
+ uint8_t InterfaceNumber; /**< Interface index of the Mass Storage interface within the attached device */\r
\r
- uint16_t DataINPipeSize; /**< Size in bytes of the MS interface's IN data pipe */\r
- uint16_t DataOUTPipeSize; /**< Size in bytes of the MS interface's OUT data pipe */\r
+ uint16_t DataINPipeSize; /**< Size in bytes of the Mass Storage interface's IN data pipe */\r
+ uint16_t DataOUTPipeSize; /**< Size in bytes of the Mass Storage interface's OUT data pipe */\r
\r
uint32_t TransactionTag; /**< Current transaction tag for data synchronising of packets */\r
} State; /**< State data for the USB class interface within the device. All elements in this section\r
*/\r
typedef struct\r
{\r
- uint8_t ReponseCode;\r
+ uint8_t ResponseCode;\r
\r
uint8_t SegmentNumber;\r
\r
* \return A value from the \ref MSHost_EnumerationFailure_ErrorCodes_t enum\r
*/\r
uint8_t MS_Host_ConfigurePipes(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, uint16_t ConfigDescriptorSize,\r
- uint8_t* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);\r
+ void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);\r
\r
/** Sends a MASS STORAGE RESET control request to the attached device, resetting the Mass Storage Interface\r
* and readying it for the next Mass Storage command.\r
\r
/* Function Prototypes: */\r
#if defined(INCLUDE_FROM_MS_CLASS_HOST_C) \r
- static uint8_t DComp_NextMSInterface(void* CurrentDescriptor);\r
- static uint8_t DComp_NextMSInterfaceEndpoint(void* CurrentDescriptor);\r
+ static uint8_t DComp_NextMSInterface(void* const CurrentDescriptor);\r
+ static uint8_t DComp_NextMSInterfaceEndpoint(void* const CurrentDescriptor);\r
\r
- static uint8_t MS_Host_SendCommand(USB_ClassInfo_MS_Host_t* MSInterfaceInfo,\r
- MS_CommandBlockWrapper_t* SCSICommandBlock,\r
+ static uint8_t MS_Host_SendCommand(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo,\r
+ MS_CommandBlockWrapper_t* const SCSICommandBlock,\r
void* BufferPtr);\r
- static uint8_t MS_Host_WaitForDataReceived(USB_ClassInfo_MS_Host_t* MSInterfaceInfo);\r
- static uint8_t MS_Host_SendReceiveData(USB_ClassInfo_MS_Host_t* MSInterfaceInfo, \r
- MS_CommandBlockWrapper_t* SCSICommandBlock, void* BufferPtr);\r
- static uint8_t MS_Host_GetReturnedStatus(USB_ClassInfo_MS_Host_t* MSInterfaceInfo,\r
- MS_CommandStatusWrapper_t* SCSICommandStatus);\r
+ static uint8_t MS_Host_WaitForDataReceived(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo);\r
+ static uint8_t MS_Host_SendReceiveData(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, \r
+ MS_CommandBlockWrapper_t* const SCSICommandBlock, void* BufferPtr);\r
+ static uint8_t MS_Host_GetReturnedStatus(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo,\r
+ MS_CommandStatusWrapper_t* const SCSICommandStatus);\r
#endif\r
#endif\r
\r