我正在linux内核中开发小型USB驱动程序,我的设备有两个大容量端点(输入和输出)。
我有两个城市(假设)城市A和城市B。我已经提交了很多来自URB A的接收请求,一段时间后,我将使用usb_bulk_msg()向设备发送命令,并提交来自URB B的接收请求。
问题是我总是收到来自乌尔巴托的所有回复。
我的问题是如何得到某个城市的答复。
是否可以在USB中为单个端点维护多个不同的URB?
谢谢你
最佳答案
当您为一个端点提交多个URB时,它们将被放入一个队列中,第一个数据传输将由第一个提交的URB处理。
如果接收到不同类型的数据,则所有URB的完成处理程序都必须检查实际数据。