diff options
| author | Michael Krufky <mkrufky@linuxtv.org> | 2006-03-26 03:43:36 -0500 |
|---|---|---|
| committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-04-02 03:55:08 -0400 |
| commit | c150178bff4ae76635ccb06abd5258933379ecc6 (patch) | |
| tree | fb88c83f5f030473e18d2685ea11e9b6fe91a187 | |
| parent | 87c1fae6d4207ecd4de34ce251d41d5dc4a1219c (diff) | |
V4L/DVB (3617): Cxusb: add support for FusionHDTV USB portable remote control
- Added keycodes for the DViCO FusionHDTV portable remote control.
- Enabled the remote control for both versions of FusionHDTV DVB-T USB
and the FusionHDTV 5 USB Gold (ATSC)
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| -rw-r--r-- | drivers/media/dvb/dvb-usb/cxusb.c | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/drivers/media/dvb/dvb-usb/cxusb.c b/drivers/media/dvb/dvb-usb/cxusb.c index a14e737ec8..f2b9b4be28 100644 --- a/drivers/media/dvb/dvb-usb/cxusb.c +++ b/drivers/media/dvb/dvb-usb/cxusb.c | |||
| @@ -233,6 +233,49 @@ static struct dvb_usb_rc_key dvico_mce_rc_keys[] = { | |||
| 233 | { 0xfe, 0x4e, KEY_POWER }, | 233 | { 0xfe, 0x4e, KEY_POWER }, |
| 234 | }; | 234 | }; |
| 235 | 235 | ||
| 236 | static struct dvb_usb_rc_key dvico_portable_rc_keys[] = { | ||
| 237 | { 0xfc, 0x02, KEY_SETUP }, /* Profile */ | ||
| 238 | { 0xfc, 0x43, KEY_POWER2 }, | ||
| 239 | { 0xfc, 0x06, KEY_EPG }, | ||
| 240 | { 0xfc, 0x5a, KEY_BACK }, | ||
| 241 | { 0xfc, 0x05, KEY_MENU }, | ||
| 242 | { 0xfc, 0x47, KEY_INFO }, | ||
| 243 | { 0xfc, 0x01, KEY_TAB }, | ||
| 244 | { 0xfc, 0x42, KEY_PREVIOUSSONG },/* Replay */ | ||
| 245 | { 0xfc, 0x49, KEY_VOLUMEUP }, | ||
| 246 | { 0xfc, 0x09, KEY_VOLUMEDOWN }, | ||
| 247 | { 0xfc, 0x54, KEY_CHANNELUP }, | ||
| 248 | { 0xfc, 0x0b, KEY_CHANNELDOWN }, | ||
| 249 | /* | ||
| 250 | { 0xfc, 0x56, KEY_CAMERA }, | ||
| 251 | Camera and Record keys both send the same code, | ||
| 252 | but the camera key doesn't repeat. | ||
| 253 | */ | ||
| 254 | { 0xfc, 0x40, KEY_TUNER }, /* ATV/DTV */ | ||
| 255 | { 0xfc, 0x45, KEY_OPEN }, | ||
| 256 | { 0xfc, 0x19, KEY_1 }, | ||
| 257 | { 0xfc, 0x18, KEY_2 }, | ||
| 258 | { 0xfc, 0x1b, KEY_3 }, | ||
| 259 | { 0xfc, 0x1a, KEY_4 }, | ||
| 260 | { 0xfc, 0x58, KEY_5 }, | ||
| 261 | { 0xfc, 0x59, KEY_6 }, | ||
| 262 | { 0xfc, 0x15, KEY_7 }, | ||
| 263 | { 0xfc, 0x14, KEY_8 }, | ||
| 264 | { 0xfc, 0x17, KEY_9 }, | ||
| 265 | { 0xfc, 0x44, KEY_ANGLE }, /* Aspect */ | ||
| 266 | { 0xfc, 0x55, KEY_0 }, | ||
| 267 | { 0xfc, 0x07, KEY_ZOOM }, | ||
| 268 | { 0xfc, 0x0a, KEY_REWIND }, | ||
| 269 | { 0xfc, 0x08, KEY_PLAYPAUSE }, | ||
| 270 | { 0xfc, 0x4b, KEY_FASTFORWARD }, | ||
| 271 | { 0xfc, 0x5b, KEY_MUTE }, | ||
| 272 | { 0xfc, 0x04, KEY_STOP }, | ||
| 273 | { 0xfc, 0x56, KEY_RECORD }, | ||
| 274 | { 0xfc, 0x57, KEY_POWER }, | ||
| 275 | { 0xfc, 0x41, KEY_UNKNOWN }, /* INPUT */ | ||
| 276 | { 0xfc, 0x00, KEY_UNKNOWN }, /* HD */ | ||
| 277 | }; | ||
| 278 | |||
| 236 | static int cxusb_dee1601_demod_init(struct dvb_frontend* fe) | 279 | static int cxusb_dee1601_demod_init(struct dvb_frontend* fe) |
| 237 | { | 280 | { |
| 238 | static u8 clock_config [] = { CLOCK_CTL, 0x38, 0x28 }; | 281 | static u8 clock_config [] = { CLOCK_CTL, 0x38, 0x28 }; |
| @@ -511,6 +554,11 @@ static struct dvb_usb_properties cxusb_bluebird_lgh064f_properties = { | |||
| 511 | 554 | ||
| 512 | .i2c_algo = &cxusb_i2c_algo, | 555 | .i2c_algo = &cxusb_i2c_algo, |
| 513 | 556 | ||
| 557 | .rc_interval = 100, | ||
| 558 | .rc_key_map = dvico_portable_rc_keys, | ||
| 559 | .rc_key_map_size = ARRAY_SIZE(dvico_portable_rc_keys), | ||
| 560 | .rc_query = cxusb_rc_query, | ||
| 561 | |||
| 514 | .generic_bulk_ctrl_endpoint = 0x01, | 562 | .generic_bulk_ctrl_endpoint = 0x01, |
| 515 | /* parameter for the MPEG2-data transfer */ | 563 | /* parameter for the MPEG2-data transfer */ |
| 516 | .urb = { | 564 | .urb = { |
| @@ -600,6 +648,11 @@ static struct dvb_usb_properties cxusb_bluebird_lgz201_properties = { | |||
| 600 | 648 | ||
| 601 | .i2c_algo = &cxusb_i2c_algo, | 649 | .i2c_algo = &cxusb_i2c_algo, |
| 602 | 650 | ||
| 651 | .rc_interval = 100, | ||
| 652 | .rc_key_map = dvico_portable_rc_keys, | ||
| 653 | .rc_key_map_size = ARRAY_SIZE(dvico_portable_rc_keys), | ||
| 654 | .rc_query = cxusb_rc_query, | ||
| 655 | |||
| 603 | .generic_bulk_ctrl_endpoint = 0x01, | 656 | .generic_bulk_ctrl_endpoint = 0x01, |
| 604 | /* parameter for the MPEG2-data transfer */ | 657 | /* parameter for the MPEG2-data transfer */ |
| 605 | .urb = { | 658 | .urb = { |
| @@ -640,6 +693,11 @@ static struct dvb_usb_properties cxusb_bluebird_dtt7579_properties = { | |||
| 640 | 693 | ||
| 641 | .i2c_algo = &cxusb_i2c_algo, | 694 | .i2c_algo = &cxusb_i2c_algo, |
| 642 | 695 | ||
| 696 | .rc_interval = 100, | ||
| 697 | .rc_key_map = dvico_portable_rc_keys, | ||
| 698 | .rc_key_map_size = ARRAY_SIZE(dvico_portable_rc_keys), | ||
| 699 | .rc_query = cxusb_rc_query, | ||
| 700 | |||
| 643 | .generic_bulk_ctrl_endpoint = 0x01, | 701 | .generic_bulk_ctrl_endpoint = 0x01, |
| 644 | /* parameter for the MPEG2-data transfer */ | 702 | /* parameter for the MPEG2-data transfer */ |
| 645 | .urb = { | 703 | .urb = { |
