On Mon, 18 Dec 2006 22:31:27 -0500 (EST), Alan Stern <[EMAIL PROTECTED]> wrote:
> The general trend in USB is to treat the direction as part of the
> endpoint's identification. For instance, we say that a device can have up
> to 32 endpoints (16 IN and 16 OUT). And ep1-out (0x01) is definitely
> _not_ the same endpoint as ep1-in (0x81) -- it's even legal to have them
> belong to two different interfaces.
OK...
Paolo, how about you add the attached to your tree and change the
libpcap too?
-- Pete
P.S. Sorry, I haven't looked at the class thing yet.
diff -urp -X dontdiff linux-2.6.20-rc1-mon9/Documentation/usb/usbmon.txt
linux-2.6.20-rc1-mon/Documentation/usb/usbmon.txt
--- linux-2.6.20-rc1-mon9/Documentation/usb/usbmon.txt 2006-12-18
17:57:30.000000000 -0800
+++ linux-2.6.20-rc1-mon/Documentation/usb/usbmon.txt 2006-12-18
18:41:01.000000000 -0800
@@ -177,8 +177,8 @@ the following structure (its name is mad
struct usbmon_packet {
u64 id; /* 0: URB ID - from submission to callback */
unsigned char type; /* 8: Same as text; extensible. */
- unsigned char xfer_type; /* ISO, Intr, Control, Bulk; 0x80 IN */
- unsigned char epnum; /* Endpoint number */
+ unsigned char xfer_type; /* ISO (0), Intr, Control, Bulk (3) */
+ unsigned char epnum; /* Endpoint number and transfer direction */
unsigned char devnum; /* Device address */
u16 busnum; /* 12: Bus number */
char flag_setup; /* 14: Same as text */
diff -urp -X dontdiff linux-2.6.20-rc1-mon9/drivers/usb/mon/mon_bin.c
linux-2.6.20-rc1-mon/drivers/usb/mon/mon_bin.c
--- linux-2.6.20-rc1-mon9/drivers/usb/mon/mon_bin.c 2006-12-18
17:57:30.000000000 -0800
+++ linux-2.6.20-rc1-mon/drivers/usb/mon/mon_bin.c 2006-12-18
18:40:00.000000000 -0800
@@ -79,8 +79,8 @@
struct mon_bin_hdr {
u64 id; /* URB ID - from submission to callback */
unsigned char type; /* Same as in text API; extensible. */
- unsigned char xfer_type; /* ISO, Intr, Control, Bulk; 0x80 IN */
- unsigned char epnum; /* Endpoint number */
+ unsigned char xfer_type; /* ISO, Intr, Control, Bulk */
+ unsigned char epnum; /* Endpoint number and transfer direction */
unsigned char devnum; /* Device address */
unsigned short busnum; /* Bus number */
char flag_setup;
@@ -436,9 +436,9 @@ static void mon_bin_event(struct mon_rea
*/
memset(ep, 0, PKT_SIZE);
ep->type = ev_type;
+ ep->xfer_type = usb_pipetype(urb->pipe);
/* We use the fact that usb_pipein() returns 0x80 */
- ep->xfer_type = usb_pipetype(urb->pipe) | usb_pipein(urb->pipe);
- ep->epnum = usb_pipeendpoint(urb->pipe);
+ ep->epnum = usb_pipeendpoint(urb->pipe) | usb_pipein(urb->pipe);
ep->devnum = usb_pipedevice(urb->pipe);
ep->busnum = rp->r.m_bus->u_bus->busnum;
ep->id = (unsigned long) urb;
@@ -496,9 +496,9 @@ static void mon_bin_error(void *data, st
memset(ep, 0, PKT_SIZE);
ep->type = 'E';
+ ep->xfer_type = usb_pipetype(urb->pipe);
/* We use the fact that usb_pipein() returns 0x80 */
- ep->xfer_type = usb_pipetype(urb->pipe) | usb_pipein(urb->pipe);
- ep->epnum = usb_pipeendpoint(urb->pipe);
+ ep->epnum = usb_pipeendpoint(urb->pipe) | usb_pipein(urb->pipe);
ep->devnum = usb_pipedevice(urb->pipe);
ep->busnum = rp->r.m_bus->u_bus->busnum;
ep->id = (unsigned long) urb;
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel