UFI命令块
/**
* UFI
命令块
*/
typedef
union
_CDB_RBC
{
READ_10
ufiRead10
;
//!<
读命令
WRITE_10
ufiWrite10
;
//!<
写命令
INQUIRY_SPC
ufiInquiry
;
//!<
查询命令
READ_CAPACITY
ufiReadCapacity
;
//!<
读容量命令
}
CDB_RBC
,
*
PCDB_RBC
;
|
命令块数据包(CBW)
/**
* CBW
命令块
*/
typedef
struct
_COMMAND_BLOCK_WRAPPER{
UINT32
dCBW_Signature
;
//!< CBW
信号标记
UINT32
dCBW_Tag
;
//!< CBW
命令标签
UINT32
dCBW_DataXferLen
;
//!<
数据包传输长度
UINT8
bCBW_Flag
;
//!<
传输方向,
0 -
主机到设备,
0x80 -
设备到主机
UINT8
bCBW_LUN
;
//!<
逻辑单元号,应为
0
UINT8
bCBW_CDBLen
;
//!< CDB_RBC
的长度
CDB_RBC
cdbRBC
;
//!< UFI
命令块
}
CBW
,
*
PCBW
;
|
命令状态包(CSW)
/**
* CSW
状态包
*/
typedef
struct
_COMMAND_STATUS_WRAPPER{
UINT32
dCSW_Signature
;
//!< CSW
信号标记
UINT32
dCSW_Tag
;
//!< CSW
命令标签
UINT32
dCSW_DataResidue
;
//!<
实际处理数据量与
CBW
规定的数据量之差
UINT8
bCSW_Status
;
//!< CBW
命令执行结果
UINT8
rsvd
[51];
//!<
保留
}
CSW
,
*
PCSW
;
|
本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/310336,如需转载请自行联系原作者