V4L/DVB (4398): Add support for Acorp TV134DS + FlyDVB-S cards.
Add support for Acorp TV134DS and FlyDVB-S cards (both based on tda10086+tda826x) Signed-off-by: Igor M. Liplianin <liplianin@me.by> Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
adc619ac6e
commit
e2ac28fa15
4 changed files with 59 additions and 0 deletions
|
@ -95,3 +95,4 @@
|
||||||
94 -> LifeView FlyDVB-T Hybrid Cardbus [5168:3306,5168:3502]
|
94 -> LifeView FlyDVB-T Hybrid Cardbus [5168:3306,5168:3502]
|
||||||
95 -> LifeView FlyVIDEO3000 (NTSC) [5169:0138]
|
95 -> LifeView FlyVIDEO3000 (NTSC) [5169:0138]
|
||||||
96 -> Medion Md8800 Quadro [16be:0007,16be:0008]
|
96 -> Medion Md8800 Quadro [16be:0007,16be:0008]
|
||||||
|
97 -> LifeView FlyDVB-S /Acorp TV134DS [5168:0300,4e42:0300]
|
||||||
|
|
|
@ -2914,6 +2914,27 @@ struct saa7134_board saa7134_boards[] = {
|
||||||
.amux = LINE2,
|
.amux = LINE2,
|
||||||
}},
|
}},
|
||||||
},
|
},
|
||||||
|
[SAA7134_BOARD_FLYDVBS_LR300] = {
|
||||||
|
/* LifeView FlyDVB-s */
|
||||||
|
/* Igor M. Liplianin <liplianin@tut.by> */
|
||||||
|
.name = "LifeView FlyDVB-S /Acorp TV134DS",
|
||||||
|
.audio_clock = 0x00200000,
|
||||||
|
.tuner_type = TUNER_ABSENT,
|
||||||
|
.radio_type = UNSET,
|
||||||
|
.tuner_addr = ADDR_UNSET,
|
||||||
|
.radio_addr = ADDR_UNSET,
|
||||||
|
.mpeg = SAA7134_MPEG_DVB,
|
||||||
|
.inputs = {{
|
||||||
|
.name = name_comp1, /* Composite input */
|
||||||
|
.vmux = 3,
|
||||||
|
.amux = LINE1,
|
||||||
|
},{
|
||||||
|
.name = name_svideo, /* S-Video signal on S-Video input */
|
||||||
|
.vmux = 8,
|
||||||
|
.amux = LINE1,
|
||||||
|
}},
|
||||||
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);
|
const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);
|
||||||
|
@ -3444,6 +3465,18 @@ struct pci_device_id saa7134_pci_tbl[] = {
|
||||||
.subvendor = 0x16be,
|
.subvendor = 0x16be,
|
||||||
.subdevice = 0x0005,
|
.subdevice = 0x0005,
|
||||||
.driver_data = SAA7134_BOARD_MD7134_BRIDGE_2,
|
.driver_data = SAA7134_BOARD_MD7134_BRIDGE_2,
|
||||||
|
},{
|
||||||
|
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||||
|
.device = PCI_DEVICE_ID_PHILIPS_SAA7134,
|
||||||
|
.subvendor = 0x5168,
|
||||||
|
.subdevice = 0x0300,
|
||||||
|
.driver_data = SAA7134_BOARD_FLYDVBS_LR300,
|
||||||
|
},{
|
||||||
|
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||||
|
.device = PCI_DEVICE_ID_PHILIPS_SAA7134,
|
||||||
|
.subvendor = 0x4e42,
|
||||||
|
.subdevice = 0x0300,/* LR300 */
|
||||||
|
.driver_data = SAA7134_BOARD_FLYDVBS_LR300,
|
||||||
},{
|
},{
|
||||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7134,
|
.device = PCI_DEVICE_ID_PHILIPS_SAA7134,
|
||||||
|
@ -3597,6 +3630,11 @@ int saa7134_board_init1(struct saa7134_dev *dev)
|
||||||
case SAA7134_BOARD_FLYDVBTDUO:
|
case SAA7134_BOARD_FLYDVBTDUO:
|
||||||
dev->has_remote = SAA7134_REMOTE_GPIO;
|
dev->has_remote = SAA7134_REMOTE_GPIO;
|
||||||
break;
|
break;
|
||||||
|
case SAA7134_BOARD_FLYDVBS_LR300:
|
||||||
|
saa_writeb(SAA7134_GPIO_GPMODE3, 0x80);
|
||||||
|
saa_writeb(SAA7134_GPIO_GPSTATUS2, 0x40);
|
||||||
|
dev->has_remote = SAA7134_REMOTE_GPIO;
|
||||||
|
break;
|
||||||
case SAA7134_BOARD_MD5044:
|
case SAA7134_BOARD_MD5044:
|
||||||
printk("%s: seems there are two different versions of the MD5044\n"
|
printk("%s: seems there are two different versions of the MD5044\n"
|
||||||
"%s: (with the same ID) out there. If sound doesn't work for\n"
|
"%s: (with the same ID) out there. If sound doesn't work for\n"
|
||||||
|
|
|
@ -39,6 +39,9 @@
|
||||||
#include "tda1004x.h"
|
#include "tda1004x.h"
|
||||||
#include "nxt200x.h"
|
#include "nxt200x.h"
|
||||||
|
|
||||||
|
#include "tda10086.h"
|
||||||
|
#include "tda826x.h"
|
||||||
|
#include "isl6421.h"
|
||||||
MODULE_AUTHOR("Gerd Knorr <kraxel@bytesex.org> [SuSE Labs]");
|
MODULE_AUTHOR("Gerd Knorr <kraxel@bytesex.org> [SuSE Labs]");
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
|
|
||||||
|
@ -1002,6 +1005,11 @@ static struct tda1004x_config md8800_dvbt_config = {
|
||||||
.request_firmware = NULL,
|
.request_firmware = NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct tda10086_config flydvbs = {
|
||||||
|
.demod_address = 0x0e,
|
||||||
|
.invert = 0,
|
||||||
|
};
|
||||||
|
|
||||||
/* ------------------------------------------------------------------ */
|
/* ------------------------------------------------------------------ */
|
||||||
|
|
||||||
static struct nxt200x_config avertvhda180 = {
|
static struct nxt200x_config avertvhda180 = {
|
||||||
|
@ -1199,6 +1207,17 @@ static int dvb_init(struct saa7134_dev *dev)
|
||||||
dvb_attach(dvb_pll_attach, dev->dvb.frontend, 0x61, &dev->i2c_adap, &dvb_pll_tuv1236d);
|
dvb_attach(dvb_pll_attach, dev->dvb.frontend, 0x61, &dev->i2c_adap, &dvb_pll_tuv1236d);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case SAA7134_BOARD_FLYDVBS_LR300:
|
||||||
|
dev->dvb.frontend = dvb_attach(tda10086_attach, &flydvbs, &dev->i2c_adap);
|
||||||
|
if (dev->dvb.frontend) {
|
||||||
|
if (dvb_attach(tda826x_attach, dev->dvb.frontend, 0x60, &dev->i2c_adap, 0) == NULL) {
|
||||||
|
printk("%s: No tda826x found!\n", __FUNCTION__);
|
||||||
|
}
|
||||||
|
if (dvb_attach(isl6421_attach, dev->dvb.frontend, &dev->i2c_adap, 0x08, 0, 0) == NULL) {
|
||||||
|
printk("%s: No ISL6421 found!\n", __FUNCTION__);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
printk("%s: Huh? unknown DVB card?\n",dev->name);
|
printk("%s: Huh? unknown DVB card?\n",dev->name);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -224,6 +224,7 @@ struct saa7134_format {
|
||||||
#define SAA7134_BOARD_FLYDVBT_HYBRID_CARDBUS 94
|
#define SAA7134_BOARD_FLYDVBT_HYBRID_CARDBUS 94
|
||||||
#define SAA7134_BOARD_FLYVIDEO3000_NTSC 95
|
#define SAA7134_BOARD_FLYVIDEO3000_NTSC 95
|
||||||
#define SAA7134_BOARD_MEDION_MD8800_QUADRO 96
|
#define SAA7134_BOARD_MEDION_MD8800_QUADRO 96
|
||||||
|
#define SAA7134_BOARD_FLYDVBS_LR300 97
|
||||||
|
|
||||||
#define SAA7134_MAXBOARDS 8
|
#define SAA7134_MAXBOARDS 8
|
||||||
#define SAA7134_INPUT_MAX 8
|
#define SAA7134_INPUT_MAX 8
|
||||||
|
|
Loading…
Add table
Reference in a new issue