On Sat, Mar 03, 2001 at 06:59:52PM -0800, Matthew Dharm wrote:
> You're basically right. The good news is that all devices so far which
> need fake inquiry data are all direct-access devices.
>
> And fill_inquiry_response is there for exactly that reason. It probably
> needs a little bit of work to make it perfectly usable by others, tho.
Ok, I can see how fill_inquiry_response() needs to be fixed up, I just
don't know how much. I don't know what is in the response data to an
INQUIRY command. Is there a table in the code somewhere?
What I don't see is the right place to check the new flag and make the
call to fill_inquiry_response(). My current guess is in
usb_stor_invoke_transport(). I'm looking at a block of code like:
if (srb->result == US_BULK_TRANSFER_SHORT &&
srb->cmnd[0] == INQUIRY &&
us->unusual_dev->flags & US_FL_FIX_INQUIRY) {
char new_response[36];
fill_inquiry_response(us, new_response, 36);
}
I believe we can see the short transfer status in srb->result. It
doesn't make it to result because the IRQ data comes up zeros.
Am I getting closer?
Nate
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel