Skip to content

Commit 517b500

Browse files
seanyoungmchehab
authored andcommitted
[media] cxusb: port to rc-core
The d680_dmb keymap has some new new mappings. Tested-by: Vincent McIntyre <[email protected]> Signed-off-by: Sean Young <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
1 parent 74d47d7 commit 517b500

File tree

6 files changed

+322
-232
lines changed

6 files changed

+322
-232
lines changed

drivers/media/rc/keymaps/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
2121
rc-cec.o \
2222
rc-cinergy-1400.o \
2323
rc-cinergy.o \
24+
rc-d680-dmb.o \
2425
rc-delock-61959.o \
2526
rc-dib0700-nec.o \
2627
rc-dib0700-rc5.o \
@@ -31,6 +32,8 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
3132
rc-dntv-live-dvbt-pro.o \
3233
rc-dtt200u.o \
3334
rc-dvbsky.o \
35+
rc-dvico-mce.o \
36+
rc-dvico-portable.o \
3437
rc-em-terratec.o \
3538
rc-encore-enltv2.o \
3639
rc-encore-enltv.o \
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
/*
2+
* keymap imported from cxusb.c
3+
*
4+
* Copyright (C) 2016 Sean Young
5+
*
6+
* This program is free software; you can redistribute it and/or modify
7+
* it under the terms of the GNU General Public License as published by
8+
* the Free Software Foundation; version 2.
9+
*/
10+
11+
#include <media/rc-map.h>
12+
#include <linux/module.h>
13+
14+
static struct rc_map_table rc_map_d680_dmb_table[] = {
15+
{ 0x0038, KEY_SWITCHVIDEOMODE }, /* TV/AV */
16+
{ 0x080c, KEY_ZOOM },
17+
{ 0x0800, KEY_0 },
18+
{ 0x0001, KEY_1 },
19+
{ 0x0802, KEY_2 },
20+
{ 0x0003, KEY_3 },
21+
{ 0x0804, KEY_4 },
22+
{ 0x0005, KEY_5 },
23+
{ 0x0806, KEY_6 },
24+
{ 0x0007, KEY_7 },
25+
{ 0x0808, KEY_8 },
26+
{ 0x0009, KEY_9 },
27+
{ 0x000a, KEY_MUTE },
28+
{ 0x0829, KEY_BACK },
29+
{ 0x0012, KEY_CHANNELUP },
30+
{ 0x0813, KEY_CHANNELDOWN },
31+
{ 0x002b, KEY_VOLUMEUP },
32+
{ 0x082c, KEY_VOLUMEDOWN },
33+
{ 0x0020, KEY_UP },
34+
{ 0x0821, KEY_DOWN },
35+
{ 0x0011, KEY_LEFT },
36+
{ 0x0810, KEY_RIGHT },
37+
{ 0x000d, KEY_OK },
38+
{ 0x081f, KEY_RECORD },
39+
{ 0x0017, KEY_PLAYPAUSE },
40+
{ 0x0816, KEY_PLAYPAUSE },
41+
{ 0x000b, KEY_STOP },
42+
{ 0x0827, KEY_FASTFORWARD },
43+
{ 0x0026, KEY_REWIND },
44+
{ 0x081e, KEY_UNKNOWN }, /* Time Shift */
45+
{ 0x000e, KEY_UNKNOWN }, /* Snapshot */
46+
{ 0x082d, KEY_UNKNOWN }, /* Mouse Cursor */
47+
{ 0x000f, KEY_UNKNOWN }, /* Minimize/Maximize */
48+
{ 0x0814, KEY_SHUFFLE }, /* Shuffle */
49+
{ 0x0025, KEY_POWER },
50+
};
51+
52+
static struct rc_map_list d680_dmb_map = {
53+
.map = {
54+
.scan = rc_map_d680_dmb_table,
55+
.size = ARRAY_SIZE(rc_map_d680_dmb_table),
56+
.rc_type = RC_TYPE_UNKNOWN, /* Legacy IR type */
57+
.name = RC_MAP_D680_DMB,
58+
}
59+
};
60+
61+
static int __init init_rc_map_d680_dmb(void)
62+
{
63+
return rc_map_register(&d680_dmb_map);
64+
}
65+
66+
static void __exit exit_rc_map_d680_dmb(void)
67+
{
68+
rc_map_unregister(&d680_dmb_map);
69+
}
70+
71+
module_init(init_rc_map_d680_dmb)
72+
module_exit(exit_rc_map_d680_dmb)
73+
74+
MODULE_LICENSE("GPL");
75+
MODULE_AUTHOR("Mauro Carvalho Chehab");
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
/*
2+
* keymap imported from cxusb.c
3+
*
4+
* Copyright (C) 2016 Sean Young
5+
*
6+
* This program is free software; you can redistribute it and/or modify
7+
* it under the terms of the GNU General Public License as published by
8+
* the Free Software Foundation; version 2.
9+
*/
10+
11+
#include <media/rc-map.h>
12+
#include <linux/module.h>
13+
14+
static struct rc_map_table rc_map_dvico_mce_table[] = {
15+
{ 0xfe02, KEY_TV },
16+
{ 0xfe0e, KEY_MP3 },
17+
{ 0xfe1a, KEY_DVD },
18+
{ 0xfe1e, KEY_FAVORITES },
19+
{ 0xfe16, KEY_SETUP },
20+
{ 0xfe46, KEY_POWER2 },
21+
{ 0xfe0a, KEY_EPG },
22+
{ 0xfe49, KEY_BACK },
23+
{ 0xfe4d, KEY_MENU },
24+
{ 0xfe51, KEY_UP },
25+
{ 0xfe5b, KEY_LEFT },
26+
{ 0xfe5f, KEY_RIGHT },
27+
{ 0xfe53, KEY_DOWN },
28+
{ 0xfe5e, KEY_OK },
29+
{ 0xfe59, KEY_INFO },
30+
{ 0xfe55, KEY_TAB },
31+
{ 0xfe0f, KEY_PREVIOUSSONG },/* Replay */
32+
{ 0xfe12, KEY_NEXTSONG }, /* Skip */
33+
{ 0xfe42, KEY_ENTER }, /* Windows/Start */
34+
{ 0xfe15, KEY_VOLUMEUP },
35+
{ 0xfe05, KEY_VOLUMEDOWN },
36+
{ 0xfe11, KEY_CHANNELUP },
37+
{ 0xfe09, KEY_CHANNELDOWN },
38+
{ 0xfe52, KEY_CAMERA },
39+
{ 0xfe5a, KEY_TUNER }, /* Live */
40+
{ 0xfe19, KEY_OPEN },
41+
{ 0xfe0b, KEY_1 },
42+
{ 0xfe17, KEY_2 },
43+
{ 0xfe1b, KEY_3 },
44+
{ 0xfe07, KEY_4 },
45+
{ 0xfe50, KEY_5 },
46+
{ 0xfe54, KEY_6 },
47+
{ 0xfe48, KEY_7 },
48+
{ 0xfe4c, KEY_8 },
49+
{ 0xfe58, KEY_9 },
50+
{ 0xfe13, KEY_ANGLE }, /* Aspect */
51+
{ 0xfe03, KEY_0 },
52+
{ 0xfe1f, KEY_ZOOM },
53+
{ 0xfe43, KEY_REWIND },
54+
{ 0xfe47, KEY_PLAYPAUSE },
55+
{ 0xfe4f, KEY_FASTFORWARD },
56+
{ 0xfe57, KEY_MUTE },
57+
{ 0xfe0d, KEY_STOP },
58+
{ 0xfe01, KEY_RECORD },
59+
{ 0xfe4e, KEY_POWER },
60+
};
61+
62+
static struct rc_map_list dvico_mce_map = {
63+
.map = {
64+
.scan = rc_map_dvico_mce_table,
65+
.size = ARRAY_SIZE(rc_map_dvico_mce_table),
66+
.rc_type = RC_TYPE_UNKNOWN, /* Legacy IR type */
67+
.name = RC_MAP_DVICO_MCE,
68+
}
69+
};
70+
71+
static int __init init_rc_map_dvico_mce(void)
72+
{
73+
return rc_map_register(&dvico_mce_map);
74+
}
75+
76+
static void __exit exit_rc_map_dvico_mce(void)
77+
{
78+
rc_map_unregister(&dvico_mce_map);
79+
}
80+
81+
module_init(init_rc_map_dvico_mce)
82+
module_exit(exit_rc_map_dvico_mce)
83+
84+
MODULE_LICENSE("GPL");
85+
MODULE_AUTHOR("Mauro Carvalho Chehab");
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
/*
2+
* keymap imported from cxusb.c
3+
*
4+
* Copyright (C) 2016 Sean Young
5+
*
6+
* This program is free software; you can redistribute it and/or modify
7+
* it under the terms of the GNU General Public License as published by
8+
* the Free Software Foundation; version 2.
9+
*/
10+
11+
#include <media/rc-map.h>
12+
#include <linux/module.h>
13+
14+
static struct rc_map_table rc_map_dvico_portable_table[] = {
15+
{ 0xfc02, KEY_SETUP }, /* Profile */
16+
{ 0xfc43, KEY_POWER2 },
17+
{ 0xfc06, KEY_EPG },
18+
{ 0xfc5a, KEY_BACK },
19+
{ 0xfc05, KEY_MENU },
20+
{ 0xfc47, KEY_INFO },
21+
{ 0xfc01, KEY_TAB },
22+
{ 0xfc42, KEY_PREVIOUSSONG },/* Replay */
23+
{ 0xfc49, KEY_VOLUMEUP },
24+
{ 0xfc09, KEY_VOLUMEDOWN },
25+
{ 0xfc54, KEY_CHANNELUP },
26+
{ 0xfc0b, KEY_CHANNELDOWN },
27+
{ 0xfc16, KEY_CAMERA },
28+
{ 0xfc40, KEY_TUNER }, /* ATV/DTV */
29+
{ 0xfc45, KEY_OPEN },
30+
{ 0xfc19, KEY_1 },
31+
{ 0xfc18, KEY_2 },
32+
{ 0xfc1b, KEY_3 },
33+
{ 0xfc1a, KEY_4 },
34+
{ 0xfc58, KEY_5 },
35+
{ 0xfc59, KEY_6 },
36+
{ 0xfc15, KEY_7 },
37+
{ 0xfc14, KEY_8 },
38+
{ 0xfc17, KEY_9 },
39+
{ 0xfc44, KEY_ANGLE }, /* Aspect */
40+
{ 0xfc55, KEY_0 },
41+
{ 0xfc07, KEY_ZOOM },
42+
{ 0xfc0a, KEY_REWIND },
43+
{ 0xfc08, KEY_PLAYPAUSE },
44+
{ 0xfc4b, KEY_FASTFORWARD },
45+
{ 0xfc5b, KEY_MUTE },
46+
{ 0xfc04, KEY_STOP },
47+
{ 0xfc56, KEY_RECORD },
48+
{ 0xfc57, KEY_POWER },
49+
{ 0xfc41, KEY_UNKNOWN }, /* INPUT */
50+
{ 0xfc00, KEY_UNKNOWN }, /* HD */
51+
};
52+
53+
static struct rc_map_list dvico_portable_map = {
54+
.map = {
55+
.scan = rc_map_dvico_portable_table,
56+
.size = ARRAY_SIZE(rc_map_dvico_portable_table),
57+
.rc_type = RC_TYPE_UNKNOWN, /* Legacy IR type */
58+
.name = RC_MAP_DVICO_PORTABLE,
59+
}
60+
};
61+
62+
static int __init init_rc_map_dvico_portable(void)
63+
{
64+
return rc_map_register(&dvico_portable_map);
65+
}
66+
67+
static void __exit exit_rc_map_dvico_portable(void)
68+
{
69+
rc_map_unregister(&dvico_portable_map);
70+
}
71+
72+
module_init(init_rc_map_dvico_portable)
73+
module_exit(exit_rc_map_dvico_portable)
74+
75+
MODULE_LICENSE("GPL");
76+
MODULE_AUTHOR("Mauro Carvalho Chehab");

0 commit comments

Comments
 (0)