diff options
-rw-r--r-- | linux/drivers/media/video/ir-kbd-i2c.c | 27 | ||||
-rw-r--r-- | linux/include/media/ir-common.h | 2 |
2 files changed, 13 insertions, 16 deletions
diff --git a/linux/drivers/media/video/ir-kbd-i2c.c b/linux/drivers/media/video/ir-kbd-i2c.c index 8c734c1ac..c5e5380a1 100644 --- a/linux/drivers/media/video/ir-kbd-i2c.c +++ b/linux/drivers/media/video/ir-kbd-i2c.c @@ -81,7 +81,7 @@ static IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = { static IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = { [ 0x3 ] = KEY_POWER, - [ 0x2f ] = KEY_MUTE, + [ 0x6f ] = KEY_MUTE, [ 0x10 ] = KEY_BACKSPACE, // Recall [ 0x11 ] = KEY_KP0, @@ -104,27 +104,27 @@ static IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = { [ 0x1d ] = KEY_DOWN, [ 0xf ] = KEY_CHANNELUP, [ 0x13 ] = KEY_CHANNELDOWN, - [ 0x28 ] = KEY_ZOOM, + [ 0x48 ] = KEY_ZOOM, [ 0x1b ] = KEY_VIDEO, // Video source #if 0 [ 0x1f ] = KEY_S, // Snapshot #endif - [ 0x29 ] = KEY_LANGUAGE, // MTS Select + [ 0x49 ] = KEY_LANGUAGE, // MTS Select [ 0x19 ] = KEY_SEARCH, // Auto Scan - [ 0x2b ] = KEY_RECORD, - [ 0x26 ] = KEY_PLAY, - [ 0x25 ] = KEY_PAUSE, // Pause - [ 0x24 ] = KEY_STOP, + [ 0x4b ] = KEY_RECORD, + [ 0x46 ] = KEY_PLAY, + [ 0x45 ] = KEY_PAUSE, // Pause + [ 0x44 ] = KEY_STOP, #if 0 - [ 0x23 ] = KEY_T, // Time Shift - [ 0x27 ] = KEY_Y, // Time Shift OFF - [ 0x2a ] = KEY_O, // TOP + [ 0x43 ] = KEY_T, // Time Shift + [ 0x47 ] = KEY_Y, // Time Shift OFF + [ 0x4a ] = KEY_O, // TOP [ 0x17 ] = KEY_F, // SURF CH #endif - [ 0x20 ] = KEY_FORWARD, // Forward ? - [ 0x22 ] = KEY_REWIND, // Backward ? + [ 0x40 ] = KEY_FORWARD, // Forward ? + [ 0x42 ] = KEY_REWIND, // Backward ? }; @@ -269,9 +269,6 @@ static int get_key_purpletv(struct IR *ir, u32 *ir_key, u32 *ir_raw) if (b & 0x80) return 1; - /* save some mem space */ - if(b & 0x60) /* 0x6f -> 0x2f 0x40~0x4b->0x20~0x2b */ - b = (b|0x20) & 0x2f; *ir_key = b; *ir_raw = b; return 1; diff --git a/linux/include/media/ir-common.h b/linux/include/media/ir-common.h index 43e57748c..9095bb923 100644 --- a/linux/include/media/ir-common.h +++ b/linux/include/media/ir-common.h @@ -54,7 +54,7 @@ #define IR_TYPE_OTHER 99 #define IR_KEYTAB_TYPE u32 -#define IR_KEYTAB_SIZE 64 // enougth for rc5, probably need more some day ... +#define IR_KEYTAB_SIZE 128 // enougth for rc5, probably need more some day ... #define IR_KEYCODE(tab,code) (((unsigned)code < IR_KEYTAB_SIZE) \ ? tab[code] : KEY_RESERVED) |