| LPCOpen Platform v1.03 LPCOpen Platform for NXP LPC Microcontrollers

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

- Data Structures
- Data Structure Index
- Data Fields

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
USB_ClassInfo_MS_Device_t Struct Reference
Mass Storage Class Device Mode Driver

## Detailed Description

Mass Storage Class Device Mode Configuration and State Structure.

Class state structure. An instance of this structure should be made for each Mass Storage interface within the user application, and passed to each of the Mass Storage class driver functions as the `MSInterfaceInfo` parameter. This stores each Mass Storage interface's configuration and state information.

Definition at line 72 of file MassStorageClassDevice.h.

`#include "MassStorageClassDevice.h"`

## Data Fields
struct {
uint8_t InterfaceNumber
uint8_t DataINEndpointNumber
uint16_t DataINEndpointSize
bool DataINEndpointDoubleBank
uint8_t DataOUTEndpointNumber
uint16_t DataOUTEndpointSize
bool DataOUTEndpointDoubleBank
uint8_t TotalLUNs
uint8_t PortNumber
} | Config
struct {
MS_CommandBlockWrapper_t CommandBlock
MS_CommandStatusWrapper_t CommandStatus
volatile bool IsMassStoreReset
} | State

## Field Documentation

MS_CommandBlockWrapper_t CommandBlock

Mass Storage class command block structure, stores the received SCSI command from the host which is to be processed.

Definition at line 91 of file MassStorageClassDevice.h.

MS_CommandStatusWrapper_t CommandStatus

Mass Storage class command status structure, set elements to indicate the issued command's success or failure to the host.

Definition at line 94 of file MassStorageClassDevice.h.

struct { ... } Config

Config data for the USB class interface within the device. All elements in this section must be set or the interface will fail to enumerate and operate correctly.

bool DataINEndpointDoubleBank

Indicates if the Mass Storage interface's IN data endpoint should use double banking.

Definition at line 78 of file MassStorageClassDevice.h.

uint8_t DataINEndpointNumber

Endpoint number of the Mass Storage interface's IN data endpoint.

Definition at line 76 of file MassStorageClassDevice.h.

uint16_t DataINEndpointSize

Size in bytes of the Mass Storage interface's IN data endpoint.

Definition at line 77 of file MassStorageClassDevice.h.

bool DataOUTEndpointDoubleBank

Indicates if the Mass Storage interface's OUT data endpoint should use double banking.

Definition at line 82 of file MassStorageClassDevice.h.

uint8_t DataOUTEndpointNumber

Endpoint number of the Mass Storage interface's OUT data endpoint.

Definition at line 80 of file MassStorageClassDevice.h.

uint16_t DataOUTEndpointSize

Size in bytes of the Mass Storage interface's OUT data endpoint.

Definition at line 81 of file MassStorageClassDevice.h.

uint8_t InterfaceNumber

Interface number of the Mass Storage interface within the device.

Definition at line 74 of file MassStorageClassDevice.h.

volatile bool IsMassStoreReset

Flag indicating that the host has requested that the Mass Storage interface be reset and that all current Mass Storage operations should immediately abort.

Definition at line 97 of file MassStorageClassDevice.h.

uint8_t PortNumber

Port number that this interface is running.

Definition at line 85 of file MassStorageClassDevice.h.

struct { ... } State

State data for the USB class interface within the device. All elements in this section are reset to their defaults when the interface is enumerated.

uint8_t TotalLUNs

Total number of logical drives in the Mass Storage interface.

Definition at line 84 of file MassStorageClassDevice.h.

The documentation for this struct was generated from the following file:

- C:/nxp/v1.03/lpcopen_v1.03/lpcopen/software/LPCUSBLib/Drivers/USB/Class/Device/MassStorageClassDevice.h