⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mschost.h

📁 SAMSUNG 5009的源代码
💻 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 + -