I demand that Oliver Endriss may or may not have written... > Marko M?kel? wrote: >> On Wed, Feb 01, 2006 at 09:56:40PM +0000, Darren Salt wrote: >>> I demand that Marko M?kel? may or may not have written... >>>> On Wed, Feb 01, 2006 at 07:51:04PM +0100, Oliver Endriss wrote: >>> [snip] >>>>> (1) The repeat timer of the input layer must be turned off, and the >>>>> natural repeat rate of the RC5 frames should be used. Anything else >>>>> will result in inaccurate operation. >>>>> (2) The key-up timeout should be set to 280ms or higher (>= 2x repeat >>>>> rate). This will allow for one missing RC5 frame which may happen >>>>> due to transmission errors. >>>> Thanks, this sounds exactly what I'm looking for! >>>> The 280 ms you mention matches the #define UP_TIMEOUT (HZ*7/25) in >>>> /usr/src/linux-2.6.14.3/drivers/media/dvb/ttpci/av7110_ir.c on my vdr >>>> box. I'll see if I'm smart enough to port the code to the cx88 driver. >>> linux/drivers/media/common/ir-functions.c would seem to be the right >>> place for that code... >> I guess you meant ir-common.c, after all. Both, really: it was renamed fairly recently. >> I made a quick&dirty patch to ir-common.c and cx88-input.c that maps each >> incoming RC5 frame to a key-press or a key-repeat event. [...] I've altered ir-functions.c:ir_input_keydown() here to make this easier: there should no longer any need for other modules to alter ir->keypressed. If you have a new keypress, call ir_input_nokey() then ir_input_keydown(), else call ir_input_keydown() only and the patched code will notice that it's for the same key and cause a repeat event instead. [snip] >> The only drawback in my patch is that it is sometimes hard to press a >> repeating key (e.g., Channel+) quickly enough to only generate a key-press >> event without any key-repeat. After all, it might be good to discard the >> first key-repeat event. I have logic for that currently in budget-ci, but it really belongs in ir-common. >> Do av7110 users have this problem? > No, this problem is handled by input_repeat_key/delay_timer_finished magic. > ;-) > The driver discards all keypresses until the delay timer of the input layer > has expired. Btw, this delay may be adjusted by user space tools. Hmm. So the standard repeat code should be used everywhere...? [snip] >> It'd be nice if this patch could be polished and submitted to the kernel. >> Are there any v4l-dvb developers on this list? > Darren posted a patch on the v4l/dvb lists. Maybe you could join your > efforts and submit a patch against the current hg repository. FWIW, my current patch sets are linked from <URL:http://www.youmustbejoking.demon.co.uk/progs.linux.html#dvb> And we need to take this to the v4l list :-) -- | Darren Salt | nr. Ashington, | d youmustbejoking,demon,co,uk | Debian, | Northumberland | s zap,tartarus,org | RISC OS | Toon Army | @ | Kill all extremists! Don't rewrite bad code; patch it.