📄 mschost.h
字号:
/* mscHost.h - USB Mass Storage Class host header */
/* Copyright 2004 TAEBAEK Soft Corp. */
/*
modification history
--------------------
02e,28nov05,jmLee version control sync.
02d,01aug05,jmLee version control sync.
02c,25jul05,jmLee version control sync.
01b,11sep04,jmLee added. support CBI Transport 1.1.
01a,26jul04,jmLee created. support only Bulk-Only Transport 1.0.
*/
#ifndef __INCmscHosth
#define __INCmscHosth
#ifdef __cplusplus
extern "C" {
#endif
#define MSC_HOST_NUM_DEVICES 1
#define CBW_TAG 0x53454300
typedef int MSCHS;
/* USB Mass Storage Class Host Error Code Definitions */
#define MSCHS_OK ((MSCHS) 0)
#define MSCHS_ERROR ((MSCHS)-1)
#define MSCHS_BIND_FAILURE ((MSCHS)-2)
#define MSCHS_INVALID_SUBCLASS ((MSCHS)-3)
#define MSCHS_INVALID_PROTOCOL ((MSCHS)-4)
#define MSCHS_NO_ENDPOINT ((MSCHS)-5)
#define MSCHS_HALTED ((MSCHS)-6)
/* Host Structure */
typedef struct _MSC_HOST_STRUCT {
PVOID pdev; /* USB device handle */
ULONG tag; /* tag */
UCHAR maxlun; /* maximum LUN, 0 ~ 7 */
UCHAR subclass; /* Subclass */
UCHAR protocol; /* Protocol */
UCHAR epIn; /* Data IN */
UCHAR epOut; /* Data OUT */
UCHAR epStatus; /* Status IN */
UCHAR dir; /* direction 0:OUT, 1:IN */
UCHAR cdblen; /* length of CDB */
UCHAR cdb[16]; /* Command Data Block */
PUCHAR buffer; /* disk I/O buffer */
UINT xferlen; /* transfer length */
UINT actual; /* actually transferred length */
UCHAR lun; /* current LUN */
UCHAR bASC; /* Additional Sense Code */
UCHAR bASCQ; /* Additional Sense Code Qualifier */
UCHAR reserved; /* reserved */
PVOID pdrvs[USB_MAX_LUN + 1];
} MSC_HOST, *PMSC_HOST;
/* Function Prototypes */
#if defined(__STDC__) || defined(__cplusplus)
IMPORT MSCHS mscHostInit(VOID);
IMPORT MSCHS mscHostGetMaxLun(PMSC_HOST phost);
IMPORT MSCHS mscHostResetBulk(PMSC_HOST phost);
IMPORT MSCHS mscHostResetPipe(PMSC_HOST phost, UCHAR ep);
IMPORT MSCHS mscHostSendCommand(PMSC_HOST phost);
IMPORT MSCHS mscHostSendData(PMSC_HOST phost);
IMPORT MSCHS mscHostReceiveData(PMSC_HOST phost);
IMPORT MSCHS mscHostReceiveStatus(PMSC_HOST phost);
#else /* defined(__STDC__) || defined(__cplusplus) */
IMPORT MSCHS mscHostInit();
IMPORT MSCHS mscHostGetMaxLun();
IMPORT MSCHS mscHostResetRecovery();
IMPORT MSCHS mscHostSendCommand();
IMPORT MSCHS mscHostSendData();
IMPORT MSCHS mscHostReceiveData();
IMPORT MSCHS mscHostReceiveStatus();
#endif /* defined(__STDC__) || defined(__cplusplus) */
#ifdef __cplusplus
}
#endif
#endif /* __INCmscHosth */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -