[media] saa7134: port Asus P7131 Hybrid to use the new rc-core
authorMauro Carvalho Chehab <mywing81@gmail.com>
Thu, 30 Sep 2010 17:46:47 +0000 (14:46 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 21 Oct 2010 09:54:10 +0000 (07:54 -0200)
The rc map table were corrected thanks to Giorgio input and tests.

Reported-by: Giorgio Vazzana <mywing81@gmail.com>
Tested-by: Giorgio Vazzana <mywing81@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/IR/keymaps/rc-asus-pc39.c
drivers/media/video/saa7134/saa7134-input.c

index 2aa068cd6c75c31b86e1a6dce40ad09eeac4614b..2996e0a3b8d58caa2f0254ed576f0fe67665e148 100644 (file)
 
 static struct ir_scancode asus_pc39[] = {
        /* Keys 0 to 9 */
-       { 0x15, KEY_0 },
-       { 0x29, KEY_1 },
-       { 0x2d, KEY_2 },
-       { 0x2b, KEY_3 },
-       { 0x09, KEY_4 },
-       { 0x0d, KEY_5 },
-       { 0x0b, KEY_6 },
-       { 0x31, KEY_7 },
-       { 0x35, KEY_8 },
-       { 0x33, KEY_9 },
+       { 0x082a, KEY_0 },
+       { 0x0816, KEY_1 },
+       { 0x0812, KEY_2 },
+       { 0x0814, KEY_3 },
+       { 0x0836, KEY_4 },
+       { 0x0832, KEY_5 },
+       { 0x0834, KEY_6 },
+       { 0x080e, KEY_7 },
+       { 0x080a, KEY_8 },
+       { 0x080c, KEY_9 },
 
-       { 0x3e, KEY_RADIO },            /* radio */
-       { 0x03, KEY_MENU },             /* dvd/menu */
-       { 0x2a, KEY_VOLUMEUP },
-       { 0x19, KEY_VOLUMEDOWN },
-       { 0x37, KEY_UP },
-       { 0x3b, KEY_DOWN },
-       { 0x27, KEY_LEFT },
-       { 0x2f, KEY_RIGHT },
-       { 0x25, KEY_VIDEO },            /* video */
-       { 0x39, KEY_AUDIO },            /* music */
+       { 0x0801, KEY_RADIO },          /* radio */
+       { 0x083c, KEY_MENU },           /* dvd/menu */
+       { 0x0815, KEY_VOLUMEUP },
+       { 0x0826, KEY_VOLUMEDOWN },
+       { 0x0808, KEY_UP },
+       { 0x0804, KEY_DOWN },
+       { 0x0818, KEY_LEFT },
+       { 0x0810, KEY_RIGHT },
+       { 0x081a, KEY_VIDEO },          /* video */
+       { 0x0806, KEY_AUDIO },          /* music */
 
-       { 0x21, KEY_TV },               /* tv */
-       { 0x1d, KEY_EXIT },             /* back */
-       { 0x0a, KEY_CHANNELUP },        /* channel / program + */
-       { 0x1b, KEY_CHANNELDOWN },      /* channel / program - */
-       { 0x1a, KEY_ENTER },            /* enter */
+       { 0x081e, KEY_TV },             /* tv */
+       { 0x0822, KEY_EXIT },           /* back */
+       { 0x0835, KEY_CHANNELUP },      /* channel / program + */
+       { 0x0824, KEY_CHANNELDOWN },    /* channel / program - */
+       { 0x0825, KEY_ENTER },          /* enter */
 
-       { 0x06, KEY_PAUSE },            /* play/pause */
-       { 0x1e, KEY_PREVIOUS },         /* rew */
-       { 0x26, KEY_NEXT },             /* forward */
-       { 0x0e, KEY_REWIND },           /* backward << */
-       { 0x3a, KEY_FASTFORWARD },      /* forward >> */
-       { 0x36, KEY_STOP },
-       { 0x2e, KEY_RECORD },           /* recording */
-       { 0x16, KEY_POWER },            /* the button that reads "close" */
+       { 0x0839, KEY_PAUSE },          /* play/pause */
+       { 0x0821, KEY_PREVIOUS },               /* rew */
+       { 0x0819, KEY_NEXT },           /* forward */
+       { 0x0831, KEY_REWIND },         /* backward << */
+       { 0x0805, KEY_FASTFORWARD },    /* forward >> */
+       { 0x0809, KEY_STOP },
+       { 0x0811, KEY_RECORD },         /* recording */
+       { 0x0829, KEY_POWER },          /* the button that reads "close" */
 
-       { 0x11, KEY_ZOOM },             /* full screen */
-       { 0x13, KEY_MACRO },            /* recall */
-       { 0x23, KEY_HOME },             /* home */
-       { 0x05, KEY_PVR },              /* picture */
-       { 0x3d, KEY_MUTE },             /* mute */
-       { 0x01, KEY_DVD },              /* dvd */
+       { 0x082e, KEY_ZOOM },           /* full screen */
+       { 0x082c, KEY_MACRO },          /* recall */
+       { 0x081c, KEY_HOME },           /* home */
+       { 0x083a, KEY_PVR },            /* picture */
+       { 0x0802, KEY_MUTE },           /* mute */
+       { 0x083e, KEY_DVD },            /* dvd */
 };
 
 static struct rc_keymap asus_pc39_map = {
        .map = {
                .scan    = asus_pc39,
                .size    = ARRAY_SIZE(asus_pc39),
-               .ir_type = IR_TYPE_UNKNOWN,     /* Legacy IR type */
+               .ir_type = IR_TYPE_RC5,
                .name    = RC_MAP_ASUS_PC39,
        }
 };
index 3a0ea56f27ff83592d654aff7e3a3ba0ed0bf413..46d31dfca7a398b36a4c0f7e89b7f81901017532 100644 (file)
@@ -772,8 +772,10 @@ int saa7134_input_init1(struct saa7134_dev *dev)
        case SAA7134_BOARD_ASUSTeK_P7131_HYBRID_LNA:
        case SAA7134_BOARD_ASUSTeK_P7131_ANALOG:
                ir_codes     = RC_MAP_ASUS_PC39;
-               mask_keydown = 0x0040000;
-               rc5_gpio = 1;
+               mask_keydown = 0x0040000;       /* Enable GPIO18 line on both edges */
+               mask_keyup   = 0x0040000;
+               mask_keycode = 0xffff;
+               raw_decode   = 1;
                break;
        case SAA7134_BOARD_ENCORE_ENLTV:
        case SAA7134_BOARD_ENCORE_ENLTV_FM: