diff options
| -rw-r--r-- | Documentation/video4linux/CARDLIST.saa7134 | 1 | ||||
| -rw-r--r-- | drivers/media/common/ir-keymaps.c | 46 | ||||
| -rw-r--r-- | drivers/media/video/saa7134/saa7134-cards.c | 39 | ||||
| -rw-r--r-- | drivers/media/video/saa7134/saa7134-input.c | 6 | ||||
| -rw-r--r-- | drivers/media/video/saa7134/saa7134.h | 1 | ||||
| -rw-r--r-- | include/media/ir-common.h | 1 |
6 files changed, 94 insertions, 0 deletions
diff --git a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134 index 1074925fb201..0424901ebc78 100644 --- a/Documentation/video4linux/CARDLIST.saa7134 +++ b/Documentation/video4linux/CARDLIST.saa7134 | |||
| @@ -130,3 +130,4 @@ | |||
| 130 | 129 -> Beholder BeholdTV 607 / BeholdTV 609 [5ace:6070,5ace:6071,5ace:6072,5ace:6073,5ace:6090,5ace:6091,5ace:6092,5ace:6093] | 130 | 129 -> Beholder BeholdTV 607 / BeholdTV 609 [5ace:6070,5ace:6071,5ace:6072,5ace:6073,5ace:6090,5ace:6091,5ace:6092,5ace:6093] |
| 131 | 130 -> Beholder BeholdTV M6 / BeholdTV M6 Extra [5ace:6190,5ace:6193] | 131 | 130 -> Beholder BeholdTV M6 / BeholdTV M6 Extra [5ace:6190,5ace:6193] |
| 132 | 131 -> Twinhan Hybrid DTV-DVB 3056 PCI [1822:0022] | 132 | 131 -> Twinhan Hybrid DTV-DVB 3056 PCI [1822:0022] |
| 133 | 132 -> Genius TVGO AM11MCE | ||
diff --git a/drivers/media/common/ir-keymaps.c b/drivers/media/common/ir-keymaps.c index a4a937c90534..2ab5a120470d 100644 --- a/drivers/media/common/ir-keymaps.c +++ b/drivers/media/common/ir-keymaps.c | |||
| @@ -1987,3 +1987,49 @@ IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE] = { | |||
| 1987 | }; | 1987 | }; |
| 1988 | 1988 | ||
| 1989 | EXPORT_SYMBOL_GPL(ir_codes_behold); | 1989 | EXPORT_SYMBOL_GPL(ir_codes_behold); |
| 1990 | |||
| 1991 | /* | ||
| 1992 | * Remote control for the Genius TVGO A11MCE | ||
| 1993 | * Adrian Pardini <pardo.bsso@gmail.com> | ||
| 1994 | */ | ||
| 1995 | IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE] = { | ||
| 1996 | /* Keys 0 to 9 */ | ||
| 1997 | [0x48] = KEY_0, | ||
| 1998 | [0x09] = KEY_1, | ||
| 1999 | [0x1d] = KEY_2, | ||
| 2000 | [0x1f] = KEY_3, | ||
| 2001 | [0x19] = KEY_4, | ||
| 2002 | [0x1b] = KEY_5, | ||
| 2003 | [0x11] = KEY_6, | ||
| 2004 | [0x17] = KEY_7, | ||
| 2005 | [0x12] = KEY_8, | ||
| 2006 | [0x16] = KEY_9, | ||
| 2007 | |||
| 2008 | [0x54] = KEY_RECORD, /* recording */ | ||
| 2009 | [0x06] = KEY_MUTE, /* mute */ | ||
| 2010 | [0x10] = KEY_POWER, | ||
| 2011 | [0x40] = KEY_LAST, /* recall */ | ||
| 2012 | [0x4c] = KEY_CHANNELUP, /* channel / program + */ | ||
| 2013 | [0x00] = KEY_CHANNELDOWN, /* channel / program - */ | ||
| 2014 | [0x0d] = KEY_VOLUMEUP, | ||
| 2015 | [0x15] = KEY_VOLUMEDOWN, | ||
| 2016 | [0x4d] = KEY_OK, /* also labeled as Pause */ | ||
| 2017 | [0x1c] = KEY_ZOOM, /* full screen and Stop*/ | ||
| 2018 | [0x02] = KEY_MODE, /* AV Source or Rewind*/ | ||
| 2019 | [0x04] = KEY_LIST, /* -/-- */ | ||
| 2020 | /* small arrows above numbers */ | ||
| 2021 | [0x1a] = KEY_NEXT, /* also Fast Forward */ | ||
| 2022 | [0x0e] = KEY_PREVIOUS, /* also Rewind */ | ||
| 2023 | /* these are in a rather non standard layout and have | ||
| 2024 | an alternate name written */ | ||
| 2025 | [0x1e] = KEY_UP, /* Video Setting */ | ||
| 2026 | [0x0a] = KEY_DOWN, /* Video Default */ | ||
| 2027 | [0x05] = KEY_LEFT, /* Snapshot */ | ||
| 2028 | [0x0c] = KEY_RIGHT, /* Hide Panel */ | ||
| 2029 | /* Four buttons without label */ | ||
| 2030 | [0x49] = KEY_RED, | ||
| 2031 | [0x0b] = KEY_GREEN, | ||
| 2032 | [0x13] = KEY_YELLOW, | ||
| 2033 | [0x50] = KEY_BLUE, | ||
| 2034 | }; | ||
| 2035 | EXPORT_SYMBOL_GPL(ir_codes_genius_tvgo_a11mce); | ||
diff --git a/drivers/media/video/saa7134/saa7134-cards.c b/drivers/media/video/saa7134/saa7134-cards.c index dcb601b803f9..262830da08c8 100644 --- a/drivers/media/video/saa7134/saa7134-cards.c +++ b/drivers/media/video/saa7134/saa7134-cards.c | |||
| @@ -3953,6 +3953,44 @@ struct saa7134_board saa7134_boards[] = { | |||
| 3953 | .gpio = 0x0200000, | 3953 | .gpio = 0x0200000, |
| 3954 | }, | 3954 | }, |
| 3955 | }, | 3955 | }, |
| 3956 | [SAA7134_BOARD_GENIUS_TVGO_A11MCE] = { | ||
| 3957 | /* Adrian Pardini <pardo.bsso@gmail.com> */ | ||
| 3958 | .name = "Genius TVGO AM11MCE", | ||
| 3959 | .audio_clock = 0x00200000, | ||
| 3960 | .tuner_type = TUNER_TNF_5335MF, | ||
| 3961 | .radio_type = UNSET, | ||
| 3962 | .tuner_addr = ADDR_UNSET, | ||
| 3963 | .radio_addr = ADDR_UNSET, | ||
| 3964 | .gpiomask = 0xf000, | ||
| 3965 | .inputs = {{ | ||
| 3966 | .name = name_tv_mono, | ||
| 3967 | .vmux = 1, | ||
| 3968 | .amux = LINE2, | ||
| 3969 | .gpio = 0x0000, | ||
| 3970 | .tv = 1, | ||
| 3971 | }, { | ||
| 3972 | .name = name_comp1, | ||
| 3973 | .vmux = 3, | ||
| 3974 | .amux = LINE1, | ||
| 3975 | .gpio = 0x2000, | ||
| 3976 | .tv = 1 | ||
| 3977 | }, { | ||
| 3978 | .name = name_svideo, | ||
| 3979 | .vmux = 8, | ||
| 3980 | .amux = LINE1, | ||
| 3981 | .gpio = 0x2000, | ||
| 3982 | } }, | ||
| 3983 | .radio = { | ||
| 3984 | .name = name_radio, | ||
| 3985 | .amux = LINE2, | ||
| 3986 | .gpio = 0x1000, | ||
| 3987 | }, | ||
| 3988 | .mute = { | ||
| 3989 | .name = name_mute, | ||
| 3990 | .amux = LINE2, | ||
| 3991 | .gpio = 0x6000, | ||
| 3992 | }, | ||
| 3993 | }, | ||
| 3956 | }; | 3994 | }; |
| 3957 | 3995 | ||
| 3958 | const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards); | 3996 | const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards); |
| @@ -5054,6 +5092,7 @@ int saa7134_board_init1(struct saa7134_dev *dev) | |||
| 5054 | case SAA7134_BOARD_BEHOLD_409: | 5092 | case SAA7134_BOARD_BEHOLD_409: |
| 5055 | case SAA7134_BOARD_BEHOLD_505FM: | 5093 | case SAA7134_BOARD_BEHOLD_505FM: |
| 5056 | case SAA7134_BOARD_BEHOLD_507_9FM: | 5094 | case SAA7134_BOARD_BEHOLD_507_9FM: |
| 5095 | case SAA7134_BOARD_GENIUS_TVGO_A11MCE: | ||
| 5057 | dev->has_remote = SAA7134_REMOTE_GPIO; | 5096 | dev->has_remote = SAA7134_REMOTE_GPIO; |
| 5058 | break; | 5097 | break; |
| 5059 | case SAA7134_BOARD_FLYDVBS_LR300: | 5098 | case SAA7134_BOARD_FLYDVBS_LR300: |
diff --git a/drivers/media/video/saa7134/saa7134-input.c b/drivers/media/video/saa7134/saa7134-input.c index 0db955c2d9b9..b4188819782f 100644 --- a/drivers/media/video/saa7134/saa7134-input.c +++ b/drivers/media/video/saa7134/saa7134-input.c | |||
| @@ -406,6 +406,12 @@ int saa7134_input_init1(struct saa7134_dev *dev) | |||
| 406 | mask_keyup = 0x8000000; | 406 | mask_keyup = 0x8000000; |
| 407 | polling = 50; //ms | 407 | polling = 50; //ms |
| 408 | break; | 408 | break; |
| 409 | case SAA7134_BOARD_GENIUS_TVGO_A11MCE: | ||
| 410 | ir_codes = ir_codes_genius_tvgo_a11mce; | ||
| 411 | mask_keycode = 0xff; | ||
| 412 | mask_keydown = 0xf00000; | ||
| 413 | polling = 50; /* ms */ | ||
| 414 | break; | ||
| 409 | } | 415 | } |
| 410 | if (NULL == ir_codes) { | 416 | if (NULL == ir_codes) { |
| 411 | printk("%s: Oops: IR config error [card=%d]\n", | 417 | printk("%s: Oops: IR config error [card=%d]\n", |
diff --git a/drivers/media/video/saa7134/saa7134.h b/drivers/media/video/saa7134/saa7134.h index 27fb44332215..f940d0254798 100644 --- a/drivers/media/video/saa7134/saa7134.h +++ b/drivers/media/video/saa7134/saa7134.h | |||
| @@ -253,6 +253,7 @@ struct saa7134_format { | |||
| 253 | #define SAA7134_BOARD_BEHOLD_607_9FM 129 | 253 | #define SAA7134_BOARD_BEHOLD_607_9FM 129 |
| 254 | #define SAA7134_BOARD_BEHOLD_M6 130 | 254 | #define SAA7134_BOARD_BEHOLD_M6 130 |
| 255 | #define SAA7134_BOARD_TWINHAN_DTV_DVB_3056 131 | 255 | #define SAA7134_BOARD_TWINHAN_DTV_DVB_3056 131 |
| 256 | #define SAA7134_BOARD_GENIUS_TVGO_A11MCE 132 | ||
| 256 | 257 | ||
| 257 | #define SAA7134_MAXBOARDS 8 | 258 | #define SAA7134_MAXBOARDS 8 |
| 258 | #define SAA7134_INPUT_MAX 8 | 259 | #define SAA7134_INPUT_MAX 8 |
diff --git a/include/media/ir-common.h b/include/media/ir-common.h index 831547d79683..a4274203f252 100644 --- a/include/media/ir-common.h +++ b/include/media/ir-common.h | |||
| @@ -142,6 +142,7 @@ extern IR_KEYTAB_TYPE ir_codes_tt_1500[IR_KEYTAB_SIZE]; | |||
| 142 | extern IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE]; | 142 | extern IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE]; |
| 143 | extern IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE]; | 143 | extern IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE]; |
| 144 | extern IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE]; | 144 | extern IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE]; |
| 145 | extern IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE]; | ||
| 145 | 146 | ||
| 146 | #endif | 147 | #endif |
| 147 | 148 | ||
