Mass Storage Class Device Mode Driver
[Mass Storage Device Class Driver - LUFA/Drivers/Class/MassStorage.h]


Data Structures

struct  USB_ClassInfo_MS_Device_t

Functions

bool MS_Device_ConfigureEndpoints (USB_ClassInfo_MS_Device_t *const MSInterfaceInfo)
void MS_Device_ProcessControlRequest (USB_ClassInfo_MS_Device_t *const MSInterfaceInfo)
void MS_Device_USBTask (USB_ClassInfo_MS_Device_t *const MSInterfaceInfo)
bool CALLBACK_MS_Device_SCSICommandReceived (USB_ClassInfo_MS_Device_t *const MSInterfaceInfo)

Detailed Description

Module Source Dependencies

The following files must be built with any user project that uses this module:

Description

Device Mode USB Class driver framework interface, for the Mass Storage USB Class driver.

Function Documentation

bool CALLBACK_MS_Device_SCSICommandReceived ( USB_ClassInfo_MS_Device_t *const   MSInterfaceInfo  ) 

Mass Storage class driver callback for the user processing of a received SCSI command. This callback will fire each time the host sends a SCSI command which requires processing by the user application. Inside this callback the user is responsible for the processing of the received SCSI command from the host. The SCSI command is available in the CommandBlock structure inside the Mass Storage class state structure passed as a parameter to the callback function.

Parameters:
[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage Class configuration and state.
Returns:
Boolean true if the SCSI command was successfully processed, false otherwise

bool MS_Device_ConfigureEndpoints ( USB_ClassInfo_MS_Device_t *const   MSInterfaceInfo  ) 

Configures the endpoints of a given Mass Storage interface, ready for use. This should be linked to the library EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing the given Mass Storage interface is selected.

Parameters:
[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage Class configuration and state.
Returns:
Boolean true if the endpoints were sucessfully configured, false otherwise

void MS_Device_ProcessControlRequest ( USB_ClassInfo_MS_Device_t *const   MSInterfaceInfo  ) 

Processes incomming control requests from the host, that are directed to the given Mass Storage class interface. This should be linked to the library EVENT_USB_Device_UnhandledControlRequest() event.

Parameters:
[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage Class configuration and state.

void MS_Device_USBTask ( USB_ClassInfo_MS_Device_t *const   MSInterfaceInfo  ) 

General management task for a given Mass Storage class interface, required for the correct operation of the interface. This should be called frequently in the main program loop, before the master USB management task USB_USBTask().

Parameters:
[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage configuration and state.


Generated on Sun Aug 9 19:53:12 2009 for LUFA (Formerly MyUSB) Library by  doxygen 1.5.9