On 8/7/07, Alan Stern <[EMAIL PROTECTED]> wrote: > On Tue, 7 Aug 2007, Gabriel Maganis wrote: > > > On 8/7/07, Alan Stern <[EMAIL PROTECTED]> wrote: > > > On Mon, 6 Aug 2007, Gabriel Maganis wrote: > > > > > > > Hello, > > > > How could one communicate with usb devices on the packet level > > > > i.e. chapter 8 of the usb spec instead of the device requests in > > > > chapter 9? I'd like to be able to send SETUP packets or DATA0 packets > > > > and get the ACK coming from the devices versus a GET_DESCRIPTOR > > > > request over the control pipe thru usb_control_msg. > > > > > > It depends on what you mean. Individual packets in USB don't form a > > > complete communication; not much below the level of a transaction is > > > meaningful. If that's good enough for you (a Setup transaction > > > followed by an IN or OUT transaction for instance), you can do it by > > > hacking the host controller drivers. > > > > > > If you really want control at the level of single packets, you will > > > have to build your own hardware. Normal host controllers don't provide > > > that capability. > > > > > > But why would you want to do this? What's wrong with the existing > > > facilities? I don't see any point in, say, just sending a SETUP > > > packet. You won't know whether the device has processed it without > > > going through the remainder of the control transfer (data stage and > > > status stage). And if you're going to go through all that anyway, then > > > why not let the existing drivers take care of the details for you? > > > > > > Alan Stern > > > > > > > > > > Hello Alan, > > My goal is to be able to examine the fields they talk about in > > chapter 8 of the usb spec like the SYNC field and such. Is there a way > > to look at those from a usb_control_msg? or, at leat usb_submit_urb? > > > Not only is there no way to look at the SYNC and related fields from > usb_control_msg() or usb_submit_urb() -- there is no way to look at > them in software at all! The hardware strips those fields out before > storing the data in the computer's memory. > > If you have an oscilloscope or USB bus analyzer, you can monitor the > USB data lines and see the fields directly. Otherwise it's impossible. > > Alan Stern > >
I see. So the most I have access to from software are on the transaction level like you described before i.e. a SETUP transaction which is actually a SETUP packet followed by a DATA packet then an ACK packet? And I can't even do so unless I hack the host controller drivers? Thanks, Gabriel ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel