阅读:1476回复:5
请教CBI Transport的最基本的问题?
我看了一下CBI的英文协议,只觉得晕晕乎乎,不得要点.
它开始在简介中说了,Control Endpoint用来传送Block command; Bulk in和Bulk out用于数据传送; Interrup Endpoint 用来标志命令的完成. 后来的端口介绍中,却说Bulk in和Bulk out也用来传送 Block command. 所以,我想请教各位大侠,这几个Endpoint的具体功能是什么. 举例来说: 在主机端,我如果想发送一个SCSI中的READ 10命令, 我应该把READ 10的Block command发送到哪一个Endpoint? 接下来,是不是立刻从Bulk in Endpoint读取数据? 数据读完后,我从哪个Endpoint获得Status的信息? 如果出错,我应该如何处理? |
|
沙发#
发布于:2003-07-14 12:01
Read command implement :
1: CBI : 通过Control Endpoint发送READ COMMAND,然后通过BULK IN Endpoint 读DATA.最后通过Control Endpoint检测STATUS. 2: BULK ONLY: 通过BULK OUT Endpoint发送READ COMMAND,然后通过BULK IN Endpoint 读DATA.最后BULK IN CSW检测STATUS. [编辑 - 7/14/03 by MacWin] |
|
|
板凳#
发布于:2003-07-14 15:45
MacWin大侠,能不能详细介绍一下Control Endpoint发送READ
COMMAND 和检测STATUS的方法。 也就是说,把控制传输的3个stage详细写一下。 下面的?应该填什么值: stage 1: packet setup packet data0(?????????) packet ACk stage 2: packet in packet data1(?????????) packet ACK stage 3: packet out packet data1(blank) packet ACK |
|
地板#
发布于:2003-07-14 16:58
我先填一下,看看对不对
stage 1: packet setup packet data0( 21 00 0000 0000 000c) packet ACk stage 2: packet out packet data1(28 00 00000000 00 00 01 00 00 00) packet ACK stage 3: packet in packet data1(blank) packet ACK |
|
地下室#
发布于:2003-07-14 17:26
标准CBI的协议我没看.你也可以自定义命令协议.如果只是写驱动的话,向写固件的要一份.
|
|
|
5楼#
发布于:2003-07-15 09:40
不管如何,谢了先
|
|