qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 13/31] usb-ehci: drop EXECUTING checks.


From: David Ahern
Subject: Re: [Qemu-devel] [PATCH 13/31] usb-ehci: drop EXECUTING checks.
Date: Mon, 06 Jun 2011 08:51:10 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.1.10-1.fc15 Thunderbird/3.1.10


On 06/06/2011 08:25 AM, Gerd Hoffmann wrote:
> 
>   Hi,
> 
>>>> -#if EHCI_DEBUG == 0
>>>> -    if (qemu_get_clock_ns(vm_clock) / 1000>= ehci->frame_end_usec) {
>>>> -        if (async) {
>>>> -            DPRINTF("FETCHENTRY: FRAME timer elapsed, exit state
>>>> machine\n");
>>>> -            goto out;
>>>> -        } else {
>>>> -            DPRINTF("FETCHENTRY: WARNING "
>>>> -                    "- frame timer elapsed during periodic\n");
>>>> -        }
>>>> -    }
>>>> -#endif
>>
>> This check was added to per Section 4 of the EHCI spec -- the HC should
>> not start transactions that will not be completed before the end of the
>> micro-frame. If you remove this what causes the EHCI model to take a
>> breather?
> 
> Look at patch #8.  That brings a number of state machine changes.  One
> of them is that the async schedule stops as soon as it notices it walks
> in circles (i.e. sees a QH the second time).
> 
>>>> -    case EST_FETCHENTRY:
>>>> -        /* fall through */
>>>
>>> Why drop this case too? As I recall that is needed for proper execution.
> 
> The async schedule doesn't pause in fetchentry state any more (also done
> by patch #8).

Ok. see that now.

David


> 
> cheers,
>   Gerd
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]