I'm seeing double IR events on 2.6.36-rc2 and a DViCO FusionHDTV DVB-T Dual Express. I enabled some debug and it looks like we are only getting one IR event from the device as expected: [ 1351.032084] ir_keydown: i2c IR (FusionHDTV): key down event, key 0x0067, scancode 0x0051 [ 1351.281284] ir_keyup: keyup key 0x0067 ie one key down event and one key up event 250ms later. I wonder if the input layer software autorepeat is the culprit. It seems to set autorepeat to start at 250ms: /* * If delay and period are pre-set by the driver, then autorepeating * is handled by the driver itself and we don't do it in input.c. */ init_timer(&dev->timer); if (!dev->rep[REP_DELAY] && !dev->rep[REP_PERIOD]) { dev->timer.data = (long) dev; dev->timer.function = input_repeat_key; dev->rep[REP_DELAY] = 250; dev->rep[REP_PERIOD] = 33; } If I shorten the IR key up events to 100ms via the patch below the problem goes away. I guess the other option would be to initialise REP_DELAY and REP_PERIOD so the input layer autorepeat doesn't cut in at all. Thoughts? Anton -- diff --git a/drivers/media/IR/ir-keytable.c b/drivers/media/IR/ir-keytable.c index 7e82a9d..cf44d5a 100644 --- a/drivers/media/IR/ir-keytable.c +++ b/drivers/media/IR/ir-keytable.c @@ -22,7 +22,7 @@ #define IR_TAB_MAX_SIZE 8192 /* FIXME: IR_KEYPRESS_TIMEOUT should be protocol specific */ -#define IR_KEYPRESS_TIMEOUT 250 +#define IR_KEYPRESS_TIMEOUT 100 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html