diff options
author | Gerd Knorr <devnull@localhost> | 2004-10-25 11:26:35 +0000 |
---|---|---|
committer | Gerd Knorr <devnull@localhost> | 2004-10-25 11:26:35 +0000 |
commit | 500c59b431256f91f87b8c82dfa13982d08fc780 (patch) | |
tree | 4666be071a93b383ebda3b7bcab826d3a1b9adc6 /linux | |
parent | a3447d4616de78c449b78904b8b5e66db92f2c58 (diff) | |
download | mediapointer-dvb-s2-500c59b431256f91f87b8c82dfa13982d08fc780.tar.gz mediapointer-dvb-s2-500c59b431256f91f87b8c82dfa13982d08fc780.tar.bz2 |
- new saa7134 card by Nickolay V. Shmyrev
- misc stuff
Diffstat (limited to 'linux')
-rw-r--r-- | linux/drivers/media/video/bttv-cards.c | 5 | ||||
-rw-r--r-- | linux/drivers/media/video/bttv-driver.c | 10 | ||||
-rw-r--r-- | linux/drivers/media/video/bttvp.h | 4 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-core.c | 19 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-mpeg.c | 10 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-video.c | 34 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88.h | 6 | ||||
-rw-r--r-- | linux/drivers/media/video/ir-kbd-gpio.c | 4 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-cards.c | 41 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134-input.c | 3 | ||||
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134.h | 5 | ||||
-rw-r--r-- | linux/drivers/media/video/tda9887.c | 2 |
12 files changed, 110 insertions, 33 deletions
diff --git a/linux/drivers/media/video/bttv-cards.c b/linux/drivers/media/video/bttv-cards.c index 805cc389b..14a3be1f4 100644 --- a/linux/drivers/media/video/bttv-cards.c +++ b/linux/drivers/media/video/bttv-cards.c @@ -1,5 +1,5 @@ /* - $Id: bttv-cards.c,v 1.29 2004/10/13 10:39:00 kraxel Exp $ + $Id: bttv-cards.c,v 1.30 2004/10/25 11:26:35 kraxel Exp $ bttv-cards.c @@ -194,6 +194,7 @@ static struct CARD { { 0x3060121a, BTTV_STB2, "3Dfx VoodooTV 100/ STB OEM" }, { 0x3000144f, BTTV_MAGICTVIEW063, "(Askey Magic/others) TView99 CPH06x" }, + { 0xa005144f, BTTV_MAGICTVIEW063, "CPH06X TView99-Card" }, { 0x3002144f, BTTV_MAGICTVIEW061, "(Askey Magic/others) TView99 CPH05x" }, { 0x3005144f, BTTV_MAGICTVIEW061, "(Askey Magic/others) TView99 CPH061/06L (T1/LC)" }, { 0x5000144f, BTTV_MAGICTVIEW061, "Askey CPH050" }, @@ -2084,9 +2085,7 @@ struct tvcard bttv_tvcards[] = { .pll = PLL_28, .has_dvb = 1, .no_gpioirq = 1, -#if 0 /* untested */ .has_remote = 1, -#endif },{ /* ---- card 0x7c ---------------------------------- */ /* Matt Jesson <dvb@jesson.eclipse.co.uk> */ diff --git a/linux/drivers/media/video/bttv-driver.c b/linux/drivers/media/video/bttv-driver.c index 468d77813..d2fe84447 100644 --- a/linux/drivers/media/video/bttv-driver.c +++ b/linux/drivers/media/video/bttv-driver.c @@ -1,6 +1,6 @@ /* - $Id: bttv-driver.c,v 1.23 2004/10/13 10:39:00 kraxel Exp $ + $Id: bttv-driver.c,v 1.24 2004/10/25 11:26:36 kraxel Exp $ bttv - Bt848 frame grabber driver @@ -3973,7 +3973,11 @@ static int bttv_suspend(struct pci_dev *pci_dev, u32 state) btv->state.gpio_data = gpio_read(); /* save pci state */ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_save_state(pci_dev, btv->state.pci_cfg); +#else + pci_save_state(pci_dev); +#endif if (0 != pci_set_power_state(pci_dev, state)) { pci_disable_device(pci_dev); btv->state.disabled = 1; @@ -3994,7 +3998,11 @@ static int bttv_resume(struct pci_dev *pci_dev) btv->state.disabled = 0; } pci_set_power_state(pci_dev, 0); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_restore_state(pci_dev, btv->state.pci_cfg); +#else + pci_restore_state(pci_dev); +#endif /* restore bt878 state */ bttv_reinit_bt848(btv); diff --git a/linux/drivers/media/video/bttvp.h b/linux/drivers/media/video/bttvp.h index 5297b6749..8cbb5a861 100644 --- a/linux/drivers/media/video/bttvp.h +++ b/linux/drivers/media/video/bttvp.h @@ -1,5 +1,5 @@ /* - $Id: bttvp.h,v 1.11 2004/10/13 10:39:00 kraxel Exp $ + $Id: bttvp.h,v 1.12 2004/10/25 11:26:36 kraxel Exp $ bttv - Bt848 frame grabber driver @@ -291,7 +291,9 @@ struct bttv_input { }; struct bttv_suspend_state { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) u32 pci_cfg[64 / sizeof(u32)]; +#endif u32 gpio_enable; u32 gpio_data; int disabled; diff --git a/linux/drivers/media/video/cx88/cx88-core.c b/linux/drivers/media/video/cx88/cx88-core.c index 5673286c2..36169c106 100644 --- a/linux/drivers/media/video/cx88/cx88-core.c +++ b/linux/drivers/media/video/cx88/cx88-core.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-core.c,v 1.14 2004/10/13 10:39:00 kraxel Exp $ + * $Id: cx88-core.c,v 1.15 2004/10/25 11:26:36 kraxel Exp $ * * device driver for Conexant 2388x based TV cards * driver core @@ -50,13 +50,18 @@ module_param(latency,int,0444); MODULE_PARM_DESC(latency,"pci latency timer"); static unsigned int tuner[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static int tuner_num; -module_param_array(tuner,int,tuner_num,0444); -MODULE_PARM_DESC(tuner,"tuner type"); +static unsigned int card[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static unsigned int card[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static int card_num; -module_param_array(card,int,card_num,0444); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) +static int dummy; +module_param_array(tuner, int, dummy, 0444); +module_param_array(card, int, dummy, 0444); +#else +module_param_array(tuner, int, NULL, 0444); +module_param_array(card, int, NULL, 0444); +#endif + +MODULE_PARM_DESC(tuner,"tuner type"); MODULE_PARM_DESC(card,"card type"); static unsigned int nicam = 0; diff --git a/linux/drivers/media/video/cx88/cx88-mpeg.c b/linux/drivers/media/video/cx88/cx88-mpeg.c index 7b45b5d8a..d2e9767e8 100644 --- a/linux/drivers/media/video/cx88/cx88-mpeg.c +++ b/linux/drivers/media/video/cx88/cx88-mpeg.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-mpeg.c,v 1.13 2004/10/19 16:02:04 kraxel Exp $ + * $Id: cx88-mpeg.c,v 1.14 2004/10/25 11:26:36 kraxel Exp $ * * Support for the mpeg transport stream transfers * PCI function #2 of the cx2388x. @@ -412,7 +412,11 @@ int cx8802_suspend_common(struct pci_dev *pci_dev, u32 state) cx88_shutdown(dev->core); #endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_save_state(pci_dev, dev->state.pci_cfg); +#else + pci_save_state(pci_dev); +#endif if (0 != pci_set_power_state(pci_dev, state)) { pci_disable_device(pci_dev); dev->state.disabled = 1; @@ -430,7 +434,11 @@ int cx8802_resume_common(struct pci_dev *pci_dev) dev->state.disabled = 0; } pci_set_power_state(pci_dev, 0); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_restore_state(pci_dev, dev->state.pci_cfg); +#else + pci_restore_state(pci_dev); +#endif #if 1 /* FIXME: re-initialize hardware */ diff --git a/linux/drivers/media/video/cx88/cx88-video.c b/linux/drivers/media/video/cx88/cx88-video.c index c1ee8baa4..933f7739d 100644 --- a/linux/drivers/media/video/cx88/cx88-video.c +++ b/linux/drivers/media/video/cx88/cx88-video.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-video.c,v 1.43 2004/10/19 16:02:05 kraxel Exp $ + * $Id: cx88-video.c,v 1.44 2004/10/25 11:26:36 kraxel Exp $ * * device driver for Conexant 2388x based TV cards * video4linux video interface @@ -41,18 +41,22 @@ MODULE_LICENSE("GPL"); /* ------------------------------------------------------------------ */ static unsigned int video_nr[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static unsigned int video_nr_num; -module_param_array(video_nr,int,video_nr_num,0444); -MODULE_PARM_DESC(video_nr,"video device numbers"); +static unsigned int vbi_nr[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; +static unsigned int radio_nr[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static unsigned int vbi_nr[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static unsigned int vbi_nr_num; -module_param_array(vbi_nr,int,vbi_nr_num,0444); -MODULE_PARM_DESC(vbi_nr,"vbi device numbers"); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) +static unsigned int dummy; +module_param_array(video_nr, int, dummy, 0444); +module_param_array(vbi_nr, int, dummy, 0444); +module_param_array(radio_nr, int, dummy, 0444); +#else +module_param_array(video_nr, int, NULL, 0444); +module_param_array(vbi_nr, int, NULL, 0444); +module_param_array(radio_nr, int, NULL, 0444); +#endif -static unsigned int radio_nr[] = {[0 ... (CX88_MAXBOARDS - 1)] = UNSET }; -static unsigned int radio_nr_num; -module_param_array(radio_nr,int,radio_nr_num,0444); +MODULE_PARM_DESC(video_nr,"video device numbers"); +MODULE_PARM_DESC(vbi_nr,"vbi device numbers"); MODULE_PARM_DESC(radio_nr,"radio device numbers"); static unsigned int video_debug = 0; @@ -2186,7 +2190,11 @@ static int cx8800_suspend(struct pci_dev *pci_dev, u32 state) cx88_shutdown(dev->core); #endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_save_state(pci_dev, dev->state.pci_cfg); +#else + pci_save_state(pci_dev); +#endif if (0 != pci_set_power_state(pci_dev, state)) { pci_disable_device(pci_dev); dev->state.disabled = 1; @@ -2204,7 +2212,11 @@ static int cx8800_resume(struct pci_dev *pci_dev) dev->state.disabled = 0; } pci_set_power_state(pci_dev, 0); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) pci_restore_state(pci_dev, dev->state.pci_cfg); +#else + pci_restore_state(pci_dev); +#endif #if 1 /* FIXME: re-initialize hardware */ diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h index f9412befd..8dcb768c8 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.38 2004/10/19 16:02:05 kraxel Exp $ + * $Id: cx88.h,v 1.39 2004/10/25 11:26:36 kraxel Exp $ * * v4l2 device driver for cx2388x based TV cards * @@ -291,7 +291,9 @@ struct cx8800_fh { }; struct cx8800_suspend_state { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) u32 pci_cfg[64 / sizeof(u32)]; +#endif int disabled; }; @@ -348,7 +350,9 @@ struct cx8802_fh { }; struct cx8802_suspend_state { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) u32 pci_cfg[64 / sizeof(u32)]; +#endif int disabled; }; diff --git a/linux/drivers/media/video/ir-kbd-gpio.c b/linux/drivers/media/video/ir-kbd-gpio.c index 2565f1912..81ea27d39 100644 --- a/linux/drivers/media/video/ir-kbd-gpio.c +++ b/linux/drivers/media/video/ir-kbd-gpio.c @@ -1,5 +1,5 @@ /* - * $Id: ir-kbd-gpio.c,v 1.10 2004/09/15 16:15:24 kraxel Exp $ + * $Id: ir-kbd-gpio.c,v 1.11 2004/10/25 11:26:36 kraxel Exp $ * * Copyright (c) 2003 Gerd Knorr * Copyright (c) 2003 Pavel Machek @@ -366,7 +366,7 @@ static int ir_probe(struct device *dev) break; case BTTV_AVDVBT_761: - /* case BTTV_AVDVBT_771: */ + case BTTV_AVDVBT_771: ir_codes = ir_codes_avermedia_dvbt; ir->mask_keycode = 0x0f00c0; ir->mask_keydown = 0x000020; diff --git a/linux/drivers/media/video/saa7134/saa7134-cards.c b/linux/drivers/media/video/saa7134/saa7134-cards.c index 784220844..b4edb34a1 100644 --- a/linux/drivers/media/video/saa7134/saa7134-cards.c +++ b/linux/drivers/media/video/saa7134/saa7134-cards.c @@ -1,5 +1,5 @@ /* - * $Id: saa7134-cards.c,v 1.30 2004/10/19 16:02:05 kraxel Exp $ + * $Id: saa7134-cards.c,v 1.31 2004/10/25 11:26:36 kraxel Exp $ * * device driver for philips saa7134 based TV cards * card-specific stuff. @@ -1174,7 +1174,7 @@ struct saa7134_board saa7134_boards[] = { .tv = 1, }}, }, - [SAA7134_EMPIRE_PCI_TV_RADIO_LE] = { + [SAA7134_BOARD_EMPIRE_PCI_TV_RADIO_LE] = { /* "Matteo Az" <matte.az@nospam.libero.it> ;-) */ .name = "Empire PCI TV-Radio LE", .audio_clock = 0x00187de7, @@ -1208,6 +1208,35 @@ struct saa7134_board saa7134_boards[] = { .gpio =0x8000, } }, + [SAA7134_BOARD_AVERMEDIA_307] = { + /* Nickolay V. Shmyrev <nshmyrev@yandex.ru> */ + .name = "Avermedia AVerTV Studio 307", + .audio_clock = 0x00187de7, + .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, + .tda9887_conf = TDA9887_PRESENT, + .inputs = {{ + .name = name_tv, + .vmux = 1, + .amux = TV, + .tv = 1, + },{ + .name = name_comp1, + .vmux = 0, + .amux = LINE2, + },{ + .name = name_comp2, + .vmux = 3, + .amux = LINE2, + },{ + .name = name_svideo, + .vmux = 8, + .amux = LINE2, + }}, + .radio = { + .name = name_radio, + .amux = TV, + }, + }, }; const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards); @@ -1435,6 +1464,13 @@ struct pci_device_id saa7134_pci_tbl[] = { .driver_data = SAA7134_BOARD_VIDEOMATE_TV_PVR, },{ + .vendor = PCI_VENDOR_ID_PHILIPS, + .device = PCI_DEVICE_ID_PHILIPS_SAA7134, + .subvendor = 0x1461, /* Avermedia Technologies Inc */ + .subdevice = 0x9715, + .driver_data = SAA7134_BOARD_AVERMEDIA_307, + + },{ /* --- boards without eeprom + subsystem ID --- */ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, @@ -1550,6 +1586,7 @@ int saa7134_board_init1(struct saa7134_dev *dev) case SAA7134_BOARD_ECS_TVP3XP: case SAA7134_BOARD_ECS_TVP3XP_4CB5: case SAA7134_BOARD_MD2819: + case SAA7134_BOARD_AVERMEDIA_307: 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 ff0582136..b59a63f1a 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.10 2004/10/13 10:39:00 kraxel Exp $ + * $Id: saa7134-input.c,v 1.11 2004/10/25 11:26:36 kraxel Exp $ * * handle saa7134 IR remotes via linux kernel input layer. * @@ -353,6 +353,7 @@ int saa7134_input_init1(struct saa7134_dev *dev) polling = 50; // ms break; case SAA7134_BOARD_MD2819: + case SAA7134_BOARD_AVERMEDIA_307: ir_codes = md2819_codes; mask_keycode = 0x0007C8; mask_keydown = 0x000010; diff --git a/linux/drivers/media/video/saa7134/saa7134.h b/linux/drivers/media/video/saa7134/saa7134.h index b55aa1b17..ebaa6e76f 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.24 2004/10/20 17:44:24 kraxel Exp $ + * $Id: saa7134.h,v 1.25 2004/10/25 11:26:36 kraxel Exp $ * * v4l2 device driver for philips saa7134 based TV cards * @@ -184,7 +184,8 @@ struct saa7134_format { #define SAA7134_BOARD_VIDEOMATE_TV_GOLD_PLUS 41 #define SAA7134_BOARD_SABRENT_SBTTVFM 42 #define SAA7134_BOARD_ZOLID_XPERT_TV7134 43 -#define SAA7134_EMPIRE_PCI_TV_RADIO_LE 44 +#define SAA7134_BOARD_EMPIRE_PCI_TV_RADIO_LE 44 +#define SAA7134_BOARD_AVERMEDIA_307 45 #define SAA7134_MAXBOARDS 8 #define SAA7134_INPUT_MAX 8 diff --git a/linux/drivers/media/video/tda9887.c b/linux/drivers/media/video/tda9887.c index dc3ad44cc..6c5d72b31 100644 --- a/linux/drivers/media/video/tda9887.c +++ b/linux/drivers/media/video/tda9887.c @@ -556,7 +556,7 @@ static int tda9887_configure(struct tda9887 *t) printk(PREFIX "i2c i/o error: rc == %d (should be 4)\n",rc); if (debug > 2) { - msleep(1000); + msleep_interruptible(1000); tda9887_status(t); } return 0; |