?? usbmsdc2.h
字號:
/*++
Copyright (c) 2001 Sunplus Technology Co., Ltd.
Module Name:
usbmsdc2.h
Abstract:
Header file related to USB Mass Storage Class Bulk Only Transfer
Environment:
Keil C51 Compiler
Revision History:
08/28/2001 Chi-Yeh Tsai created
--*/
//------------------------------------------------------------------------------
//Constant
//------------------------------------------------------------------------------
//Class Request
#define K_USBMSDC_BULK_ONLY_MASS_STORAGE_RESET 0xff
#define K_USBMSDC_GET_MAX_LUN 0xfe
#define K_USBMSDC_CommandPassed 0x00
#define K_USBMSDC_CommandFailed 0x01
#define K_USBMSDC_PhaseError 0x02
//richie@1203 add for read capacity no medium phase
#define K_USBMSDC_NoMedium 0x03
//------------------------------------------------------------------------------
//Type Definition
//------------------------------------------------------------------------------
//Command Block Wrapper (CBW)
#define K_USBMSDC_CBW_SIZE 0x1f
typedef struct _USBMSDC_CBW
{
ULONG dCBWSignature;
ULONG dCBWTag;
ULONG dCBWDataTransferLength;
UCHAR bmCBWFlags;
UCHAR bCBWLUN;
UCHAR bCBWCBLength;
UCHAR CBWCB[16];
} USBMSDC_CBW, *PUSBMSDC_CBW;
//Command Status Wrapper (CSW)
#define K_USBMSDC_CSW_SIZE 0x0d
typedef struct _USBMSDC_CSW
{
ULONG dCSWSignature;
ULONG dCSWTag;
ULONG dCSWDataResidue;
UCHAR bCSWStatus;
} USBMSDC_CSW, *PUSBMSDC_CSW;
//------------------------------------------------------------------------------
//External Link
//------------------------------------------------------------------------------
extern PUSBMSDC_CBW G_USBMSDC_pCBW;
extern xdata ULONG G_USBMSDC_ulLogicalBlockAddress;
extern xdata ULONG G_USBMSDC_ulSdramBufferAddress;
extern xdata ULONG G_USBMSDC_usSizeProcessed;
extern xdata UCHAR G_USBMSDC_ucSenseCodeIdx;
extern xdata UCHAR G_USBMSDC_ucCSWStatus;
//richie
extern xdata ULONG G_USBMSDC_ulAllocateLength;
extern xdata UCHAR G_USBMSDC_ulLatestCmd;
extern xdata UCHAR G_USBMSDC_ubRefreshNeeded;
//patch4.5@richie@eject
extern xdata UCHAR G_USBMSDC_ucEject;
//patch4.5@richie@cardlock
extern xdata UCHAR G_USBMSDC_ucCardLock;
//------------------------------------------------------------------------------
//Function ProtoType
//------------------------------------------------------------------------------
void USBMSDC_BoNoDataPhase(void);
void USBMSDC_BoPreInDataPhase(void);
void USBMSDC_BoPreOutDataPhase(void);
void USBMSDC_BoPostInDataPhase(void);
void USBMSDC_BoPostOutDataPhase(void);
void USBMSDC_BoBulkInData(void);
void USBMSDC_BoBulkOutData(void);
void USBMSDC_BoClearCommandBuffer(void);
UCHAR USBMSDC_BoCommand(UCHAR len);
UCHAR USBMSDC_BoStatus(void);
void USBMSDC_BoSetBulkInPacket(UCHAR len);
UCHAR USBMSDC_BoGetBulkOutPacket(void);
UCHAR USBMSDC_BoGetBulkOutPacketToBlock(void);
UCHAR USBMSDC_BoPreBulkOutDataPhase(void);
UCHAR USBMSDC_BoPostBulkOutDataPhase(void);
void USBMSDC_BoPostInBlock(void);
void USBMSDC_StallBulkInOutPacket(void);
void USBMSDC_ClearStallBulkInOutPacket(void);
//patch4.5@richie@mlun
void MLUN_Initialize(void);
void MLUN_CheckCard(void);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -