Re: EHCI force full speed (chipidea ip) interrupt transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 4 Jul 2013, Rong Wang wrote:

> Hi Greg,
> 
> Thanks for your suggestion. We are trying to move to kernel-3.10.
> 
> But I still have a question about EHCI which actually abstracts our question.
> I have noticed Figure 4-14. Host Controller Queue Head Traversal State Machine
> in EHCI spec.
> 
> Simplified:
> execute transaction ---------------
>               |                             |
>  !Active   |                             |
>               |                             |   Active (we encounter
> this case, and it keeps but host controller actually receive data to
> overlay and ACK device)
>              \|/                            |
> write back qTD                      |
>              |                              |
>              |                              |
>             \|/                             |
> follow QH horizontal pointer <-|
> 
> The left path is normal case, but we encounter the right path and it
> keeps that state.
> So I wander under which case would the host controller leave Active
> '1' and do not
> write the overlay back to qTD, but actually it receives date and ACK the device.
> and the total bytes to transfer in the overlay actually decrease.
> 
> Could you comment on this case? I've not found a clear answer in the spec yet.

This happens when the qTD contains a buffer that is longer than the
endpoint's maxpacket size.  After the first transaction executes, the
Active bit is still set because there is still more data to receive.

For example, suppose the maxpacket size is 64 bytes and the transfer 
size is 100 bytes.  The first transaction will receive 64 bytes, and 
the Active bit will remain 1.  Then the next transaction will receive 
the remaining 36 bytes, after which the Active bit will go to 0 and the 
overlay will be written back to the qTD.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux