diff options
author | Gerd Knorr <devnull@localhost> | 2004-11-30 11:26:38 +0000 |
---|---|---|
committer | Gerd Knorr <devnull@localhost> | 2004-11-30 11:26:38 +0000 |
commit | cec65069b7466d850408a58576dbff9a0ddbf782 (patch) | |
tree | 40933784bc061720d286b0dfd075e94a85944061 /linux | |
parent | ae625623c832731a551768d5137323acb1e80259 (diff) | |
download | mediapointer-dvb-s2-cec65069b7466d850408a58576dbff9a0ddbf782.tar.gz mediapointer-dvb-s2-cec65069b7466d850408a58576dbff9a0ddbf782.tar.bz2 |
- add new tuners.
- ir support for Compro Videomate by Michael Mellor.
Diffstat (limited to 'linux')
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-cards.c | 9 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88.h | 3 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-cards.c | 6 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-input.c | 57 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-oss.c | 5 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-tvaudio.c | 22 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134.h | 3 | ||||
-rw-r--r-- | linux/include/media/tuner.h | 2 |
8 files changed, 92 insertions, 15 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c index a719d50b2..2c2ecb7e1 100644 --- a/linux/drivers/media/video/cx88/cx88-cards.c +++ b/linux/drivers/media/video/cx88/cx88-cards.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-cards.c,v 1.49 2004/11/19 18:07:12 kraxel Exp $ + * $Id: cx88-cards.c,v 1.50 2004/11/30 11:26:38 kraxel Exp $ * * device driver for Conexant 2388x based TV cards * card-specific stuff. @@ -548,6 +548,10 @@ struct cx88_subid cx88_subids[] = { .subvendor = 0x1554, .subdevice = 0x4811, .card = CX88_BOARD_PIXELVIEW, + },{ + .subvendor = 0x7063, + .subdevice = 0x3000, /* HD-3000 card */ + .card = CX88_BOARD_PCHDTV_HD3000, } }; const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); @@ -637,7 +641,8 @@ static struct { { TUNER_LG_PAL_FM, "LG TPI8PSB01D"}, { TUNER_LG_PAL, "LG TPI8PSB11D"}, { TUNER_LG_PAL_I_FM, "LG TAPC-I001D"}, - { TUNER_LG_PAL_I, "LG TAPC-I701D"} + { TUNER_LG_PAL_I, "LG TAPC-I701D"}, + { TUNER_THOMSON_DTT7610, "DTT-7610"} }; static void hauppauge_eeprom(struct cx88_core *core, u8 *eeprom_data) diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h index ce82fa859..3d2b268d6 100644 --- a/linux/drivers/media/video/cx88/cx88.h +++ b/linux/drivers/media/video/cx88/cx88.h @@ -1,5 +1,5 @@ /* - * $Id: cx88.h,v 1.41 2004/11/23 17:29:09 kraxel Exp $ + * $Id: cx88.h,v 1.42 2004/11/30 11:26:38 kraxel Exp $ * * v4l2 device driver for cx2388x based TV cards * @@ -157,6 +157,7 @@ extern struct sram_channel cx88_sram_channels[]; #define CX88_BOARD_CONEXANT_DVB_T1 19 #define CX88_BOARD_PROVIDEO_PV259 20 #define CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS 21 +#define CX88_BOARD_PCHDTV_HD3000 22 enum cx88_itype { CX88_VMUX_COMPOSITE1 = 1, diff --git a/linux/drivers/media/video/saa7134/saa7134-cards.c b/linux/drivers/media/video/saa7134/saa7134-cards.c index d2e411dac..493fcc84f 100644 --- a/linux/drivers/media/video/saa7134/saa7134-cards.c +++ b/linux/drivers/media/video/saa7134/saa7134-cards.c @@ -1,5 +1,6 @@ + /* - * $Id: saa7134-cards.c,v 1.43 2004/11/26 12:59:22 kraxel Exp $ + * $Id: saa7134-cards.c,v 1.44 2004/11/30 11:26:38 kraxel Exp $ * * device driver for philips saa7134 based TV cards * card-specific stuff. @@ -646,7 +647,7 @@ struct saa7134_board saa7134_boards[] = { },{ .name = name_tv, .vmux = 1, - .amux = LINE2, + .amux = LINE2_LEFT, .tv = 1, }}, }, @@ -1737,6 +1738,7 @@ int saa7134_board_init1(struct saa7134_dev *dev) case SAA7134_BOARD_AVERMEDIA_305: case SAA7134_BOARD_AVERMEDIA_307: // case SAA7134_BOARD_SABRENT_SBTTVFM: /* not finished yet */ + case SAA7134_BOARD_VIDEOMATE_TV_PVR: dev->has_remote = 1; break; case SAA7134_BOARD_AVACSSMARTTV: diff --git a/linux/drivers/media/video/saa7134/saa7134-input.c b/linux/drivers/media/video/saa7134/saa7134-input.c index 54d42d1f0..980db6fe1 100644 --- a/linux/drivers/media/video/saa7134/saa7134-input.c +++ b/linux/drivers/media/video/saa7134/saa7134-input.c @@ -1,5 +1,5 @@ /* - * $Id: saa7134-input.c,v 1.14 2004/11/22 18:10:55 kraxel Exp $ + * $Id: saa7134-input.c,v 1.15 2004/11/30 11:26:38 kraxel Exp $ * * handle saa7134 IR remotes via linux kernel input layer. * @@ -258,6 +258,55 @@ static IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE] = { [ 17 ] = KEY_CHANNELDOWN, // CHANNEL/PAGE- [ 49 ] = KEY_CHANNELUP // CHANNEL/PAGE+ }; + +static IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = { + [ 20 ] = KEY_MUTE, + [ 36 ] = KEY_ZOOM, + + [ 1 ] = KEY_DVD, + [ 35 ] = KEY_RADIO, + [ 0 ] = KEY_TV, + + [ 10 ] = KEY_REWIND, + [ 8 ] = KEY_PLAYPAUSE, + [ 15 ] = KEY_FORWARD, + + [ 2 ] = KEY_PREVIOUS, + [ 7 ] = KEY_STOP, + [ 6 ] = KEY_NEXT, + + [ 12 ] = KEY_UP, + [ 14 ] = KEY_DOWN, + [ 11 ] = KEY_LEFT, + [ 13 ] = KEY_RIGHT, + [ 17 ] = KEY_OK, + + [ 3 ] = KEY_MENU, + [ 9 ] = KEY_SETUP, + [ 5 ] = KEY_VIDEO, + [ 34 ] = KEY_CHANNEL, + + [ 18 ] = KEY_VOLUMEUP, + [ 21 ] = KEY_VOLUMEDOWN, + [ 16 ] = KEY_CHANNELUP, + [ 19 ] = KEY_CHANNELDOWN, + + [ 4 ] = KEY_RECORD, + + [ 22 ] = KEY_KP1, + [ 23 ] = KEY_KP2, + [ 24 ] = KEY_KP3, + [ 25 ] = KEY_KP4, + [ 26 ] = KEY_KP5, + [ 27 ] = KEY_KP6, + [ 28 ] = KEY_KP7, + [ 29 ] = KEY_KP8, + [ 30 ] = KEY_KP9, + [ 31 ] = KEY_KP0, + + [ 32 ] = KEY_LANGUAGE, + [ 33 ] = KEY_SLEEP, +}; /* ---------------------------------------------------------------------- */ static int build_key(struct saa7134_dev *dev) @@ -364,6 +413,12 @@ int saa7134_input_init1(struct saa7134_dev *dev) saa_setb(SAA7134_GPIO_GPMODE0, 0x4); saa_setb(SAA7134_GPIO_GPSTATUS0, 0x4); break; + case SAA7134_BOARD_VIDEOMATE_TV_PVR: + ir_codes = videomate_tv_pvr_codes; + mask_keycode = 0x00003F; + mask_keyup = 0x400000; + polling = 50; // ms + break; } if (NULL == ir_codes) { printk("%s: Oops: IR config error [card=%d]\n", diff --git a/linux/drivers/media/video/saa7134/saa7134-oss.c b/linux/drivers/media/video/saa7134/saa7134-oss.c index 55a4548cf..0a737fdf8 100644 --- a/linux/drivers/media/video/saa7134/saa7134-oss.c +++ b/linux/drivers/media/video/saa7134/saa7134-oss.c @@ -1,5 +1,5 @@ /* - * $Id: saa7134-oss.c,v 1.11 2004/11/07 13:17:15 kraxel Exp $ + * $Id: saa7134-oss.c,v 1.12 2004/11/30 11:26:38 kraxel Exp $ * * device driver for philips saa7134 based TV cards * oss dsp interface @@ -543,6 +543,7 @@ mixer_recsrc_7134(struct saa7134_dev *dev) break; case LINE1: case LINE2: + case LINE2_LEFT: analog_io = (LINE1 == dev->oss.input) ? 0x00 : 0x08; rate = (32000 == dev->oss.rate) ? 0x01 : 0x03; saa_andorb(SAA7134_ANALOG_IO_SELECT, 0x08, analog_io); @@ -566,6 +567,7 @@ mixer_recsrc_7133(struct saa7134_dev *dev) value = 0xbbbb32; /* AUX1 */ break; case LINE2: + case LINE2_LEFT: value = 0xbbbb54; /* AUX2 */ break; } @@ -608,6 +610,7 @@ mixer_level(struct saa7134_dev *dev, enum saa7134_audio_in src, int level) (100 == level) ? 0x00 : 0x10); break; case LINE2: + case LINE2_LEFT: saa_andorb(SAA7134_ANALOG_IO_SELECT, 0x20, (100 == level) ? 0x00 : 0x20); break; diff --git a/linux/drivers/media/video/saa7134/saa7134-tvaudio.c b/linux/drivers/media/video/saa7134/saa7134-tvaudio.c index 64c8ac288..ddd5302c0 100644 --- a/linux/drivers/media/video/saa7134/saa7134-tvaudio.c +++ b/linux/drivers/media/video/saa7134/saa7134-tvaudio.c @@ -1,5 +1,5 @@ /* - * $Id: saa7134-tvaudio.c,v 1.19 2004/11/24 11:55:24 kraxel Exp $ + * $Id: saa7134-tvaudio.c,v 1.20 2004/11/30 11:26:38 kraxel Exp $ * * device driver for philips saa7134 based TV cards * tv audio decoder (fm stereo, nicam, ...) @@ -241,9 +241,10 @@ static void mute_input_7134(struct saa7134_dev *dev) /* switch internal audio mux */ switch (in->amux) { - case TV: ausel=0xc0; ics=0x00; ocs=0x02; break; - case LINE1: ausel=0x80; ics=0x00; ocs=0x00; break; - case LINE2: ausel=0x80; ics=0x08; ocs=0x01; break; + case TV: ausel=0xc0; ics=0x00; ocs=0x02; break; + case LINE1: ausel=0x80; ics=0x00; ocs=0x00; break; + case LINE2: ausel=0x80; ics=0x08; ocs=0x01; break; + case LINE2_LEFT: ausel=0x80; ics=0x08; ocs=0x05; break; } saa_andorb(SAA7134_AUDIO_FORMAT_CTRL, 0xc0, ausel); saa_andorb(SAA7134_ANALOG_IO_SELECT, 0x08, ics); @@ -756,9 +757,16 @@ static int mute_input_7133(struct saa7134_dev *dev) int mask; switch (dev->input->amux) { - case TV: reg = 0x02; break; - case LINE1: reg = 0x00; break; - case LINE2: reg = 0x01; break; + case TV: + reg = 0x02; + break; + case LINE1: + reg = 0x00; + break; + case LINE2: + case LINE2_LEFT: + reg = 0x01; + break; } if (dev->ctl_mute) reg = 0x07; diff --git a/linux/drivers/media/video/saa7134/saa7134.h b/linux/drivers/media/video/saa7134/saa7134.h index c621c80f7..f0e4bd6d5 100644 --- a/linux/drivers/media/video/saa7134/saa7134.h +++ b/linux/drivers/media/video/saa7134/saa7134.h @@ -1,5 +1,5 @@ /* - * $Id: saa7134.h,v 1.31 2004/11/23 17:29:09 kraxel Exp $ + * $Id: saa7134.h,v 1.32 2004/11/30 11:26:38 kraxel Exp $ * * v4l2 device driver for philips saa7134 based TV cards * @@ -83,6 +83,7 @@ enum saa7134_audio_in { TV = 1, LINE1 = 2, LINE2 = 3, + LINE2_LEFT, }; enum saa7134_video_out { diff --git a/linux/include/media/tuner.h b/linux/include/media/tuner.h index 3b91bb6bd..6f97e0478 100644 --- a/linux/include/media/tuner.h +++ b/linux/include/media/tuner.h @@ -77,6 +77,7 @@ #define TUNER_MICROTUNE_4042FI5 49 /* FusionHDTV 3 Gold - 4042 FI5 (3X 8147) */ #define TUNER_TCL_2002N 50 #define TUNER_PHILIPS_FM1256_IH3 51 +#define TUNER_THOMSON_DTT7610 52 #define NOTUNER 0 #define PAL 1 /* PAL_BG */ @@ -97,6 +98,7 @@ #define HITACHI 9 #define Panasonic 10 #define TCL 11 +#define THOMSON 12 #define TUNER_SET_TYPE _IOW('t',1,int) /* set tuner type */ #define TUNER_SET_TVFREQ _IOW('t',2,int) /* set tv freq */ |