Re: autosuspend for HID devices, take #4

Jiri Kosina <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Wed, 23 May 2007, Alan Stern wrote:

> > > I suspect it is keyboard-dependent.  For example, the keyboard's 
> > > internal buffer might be able to hold no more than one event, 
> > > because the designers expected the host to poll frequently.  Since 
> > > the polling can't occur during the wakeup interval, multiple events 
> > > from that time will get lost.
> > in such situation, I'd however expect the first N events to be lost, 
> > but the last events to arrive without problem. What I am experiencing, 
> > however, is that the missing events are usually "the middle" ones.
> It depends on how the buffer is implemented.  It might work this way:  
> The first keystroke is detected, goes into the buffer, and causes a 
> remote wakeup request to be sent.  Later keystrokes can't go into the 
> buffer because the buffer is still full, so they are dropped.  When the 
> resume sequence is complete, the host reads the original keystroke and 
> the buffer is once again empty.  Hence any further keystrokes are 
> processed as usual.

Hi Alan,

you are right, however there is still a reason I think that this is not 
the case. 

What I am seeing is that the keypresses are lost only if I hit a key (and 
thus wake the autosuspended keyboard up) only after a short time it goes 
to suspend. When I leave it autosuspended for 2 or more seconds 
(approximately), it behaves nicely.

Sure, it still could be a HW issue (I have experienced this with two 
random keyboards I used for testing), but I'd guess it would be something 
different than what you describe. What do you think?

Thanks,

-- 
Jiri Kosina
SUSE Labs

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.