From: Maciek K. <ma...@ph...> - 2006-05-02 00:12:11
|
The lirc_mceusb2 driver as is has a rather annoying data queuing bug that results in key stutter. A key that is being continuously pressed will result in the driver sending a burst of 3 or so keys followed by a quiet period while a set of another 3 keys is being queued. The patch fixes that by forcing the driver to send the keys immediately as they are recieved. This will also fix the detection of repeat keys as right now you will not see a repeat count higher then 3. http://www.phobos.ca/dvb/lirc-0.8.0.pre4-mceusb2_key_stutter_fix.patch --- lirc-0.8.0pre4-orig/drivers/lirc_mceusb2/lirc_mceusb2.c 2005-10-29 10:18:53.000000000 -0400 +++ lirc-0.8.0pre4/drivers/lirc_mceusb2/lirc_mceusb2.c 2006-02-16 20:44:57.000000000 -0500 @@ -351,10 +351,6 @@ if ((ir->buf_in[0]==MCE_PACKET_HEADER)) { int i,keycode,pulse; - - /* buffer exhausted? */ - if (ir->lirccnt>(LIRCBUF_SIZE-MCE_CODE_LENGTH)) - send_packet_to_lirc(ir); for(i=0;i<MCE_PACKET_SIZE;i++) { pulse = 0; @@ -382,6 +378,7 @@ ir->last_space += keycode; } } + send_packet_to_lirc(ir); } } else { ---------------------------------------------------------- Maciek Klimkowski |