0

I am developing small USB driver in linux kernel, my device has two bulk endpoints (IN and OUT).

I have two URB (assume) urb A and urb B . I have submitted many receive request from URB A, after some time i am sending a command to device using usb_bulk_msg() and submitting receive request from URB B.

The problem is i always receive all the reply from URB A.

My question how to receive a reply from particular URB.

Is it possible to maintain many different URB for single ENdpoint in USB?

Thank you

kar
  • 2,505
  • 9
  • 30
  • 32

1 Answers1

1

When you submit multiple URBs for a single endpoint, they are put into a queue, and the first data transfer will be handled by the first submitted URB.

If you receive different kinds of data, all the URB's completion handlers must check the actual data.

CL.
  • 173,858
  • 17
  • 217
  • 259