On Fri, 30 Mar 2007, Pandita, Vikram wrote:

> > From: Alan Stern [mailto:[EMAIL PROTECTED]
> > 
> > > @@ -2204,12 +2206,16 @@ static void handle_ep_small (struct net2
> > >                                   && req
> > >                                   && req->req.actual ==
> req->req.length)
> > >                                   || !req) {
> > > +printk("\n-->STALL\n");
> > 
> > Please try printing some additional information:
> > 
> > +printk("\n-->STALL: t %x, req %p\n", t, req);
> > +if (req) printk("actual %d, length %d\n", req->req.actual, req-
> > >req.length);
> > 
> 
> The log shows:
> -->STALL: t 41042a, req 00000000
> Which means: ep->responded is 1.
> Does this help?

It helps.  But I don't understand what it signifies!

First of all, the fact that req is NULL and ep->responded is 1 means that
as far as the net2280 driver is concerned, the data stage of the control
transfer is over and allow_status() has been called.  This means that on a 
previous trip through handle_ep_small(), mode was set to 2 and hence an IN 
token has already been received (although the response to the IN could 
have been NAK instead of ACK).

The bits in t are:

        0x400000        HIGH_BANDWIDTH_OUT_TRANSACTION_PID = Data1
        0x010000        USB_OUT_ACK_SENT
        0x000400        FIFO_EMPTY
        0x000020        SHORT_PACKET_TRANSFERRED_INTERRUPT
        0x000008        DATA_PACKET_RECEIVED_INTERRUPT
        0x000002        DATA_OUT_PING_TOKEN_INTERRUPT

As near as I can see, this means the net22800 got an OUT token followed by
a 0-length DATA1 packet.  If that was really what happened (OUT/DATA after 
an IN packet for the status stage) then responding with STALL was the 
correct thing to do.  However it disagrees completely with the CATC trace.

Does this mean the net2280 has generated a bogus IRQ?  That's what it 
looks like.

> Another observation:
> Running the netchip test14 with Intel 82801GB EHCI controller does not
> show PING being sent after a NYET response.
> 
> So its not clear what the Host behavior is after it gets a NYET?
> Is there an existing EHCI that has this behavior?

I don't know.  Maybe Dave does.

Alan Stern


-------------------------------------------------------------------------
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
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to