From: Gerd Knorr Trivial patch, $subject says all, just a new keytable. --- 25-akpm/drivers/media/video/ir-kbd-i2c.c | 40 ++++++++++++++++++++++++++++++- 1 files changed, 39 insertions(+), 1 deletion(-) diff -puN drivers/media/video/ir-kbd-i2c.c~v4l-pv951-remote-support drivers/media/video/ir-kbd-i2c.c --- 25/drivers/media/video/ir-kbd-i2c.c~v4l-pv951-remote-support Mon Apr 5 14:46:28 2004 +++ 25-akpm/drivers/media/video/ir-kbd-i2c.c Mon Apr 5 14:46:28 2004 @@ -41,6 +41,44 @@ #include +/* Mark Phalan */ +static IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = { + [ 0 ] = KEY_KP0, + [ 1 ] = KEY_KP1, + [ 2 ] = KEY_KP2, + [ 3 ] = KEY_KP3, + [ 4 ] = KEY_KP4, + [ 5 ] = KEY_KP5, + [ 6 ] = KEY_KP6, + [ 7 ] = KEY_KP7, + [ 8 ] = KEY_KP8, + [ 9 ] = KEY_KP9, + + [ 18 ] = KEY_POWER, + [ 16 ] = KEY_MUTE, + [ 31 ] = KEY_VOLUMEDOWN, + [ 27 ] = KEY_VOLUMEUP, + [ 26 ] = KEY_CHANNELUP, + [ 30 ] = KEY_CHANNELDOWN, + [ 14 ] = KEY_PAGEUP, + [ 29 ] = KEY_PAGEDOWN, + [ 19 ] = KEY_SOUND, + + [ 24 ] = KEY_KPPLUSMINUS, // CH +/- + [ 22 ] = KEY_SUBTITLE, // CC + [ 13 ] = KEY_TEXT, // TTX + [ 11 ] = KEY_TV, // AIR/CBL + [ 17 ] = KEY_PC, // PC/TV + [ 23 ] = KEY_OK, // CH RTN + [ 25 ] = KEY_MODE, // FUNC + [ 12 ] = KEY_SEARCH, // AUTOSCAN + + /* Not sure what to do with these ones! */ + [ 15 ] = KEY_SELECT, // SOURCE + [ 10 ] = KEY_KPPLUS, // +100 + [ 20 ] = KEY_KPEQUAL, // SYNC +}; + struct IR; struct IR { struct i2c_client c; @@ -247,7 +285,7 @@ static int ir_attach(struct i2c_adapter name = "PV951"; ir->get_key = get_key_pv951; ir_type = IR_TYPE_OTHER; - ir_codes = ir_codes_empty; + ir_codes = ir_codes_pv951; break; case 0x18: case 0x1a: _