V4L/DVB: saa7134: Add support new Behold TV cards
[dougsland@redhat.com: Fixed cards numbers reject due changes in saa7134.h] Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
1b0e48ad55
commit
0faa2ed5bf
5 changed files with 87 additions and 0 deletions
|
@ -176,3 +176,5 @@
|
|||
175 -> Leadtek Winfast DTV1000S [107d:6655]
|
||||
176 -> Beholder BeholdTV 505 RDS [0000:5051]
|
||||
177 -> Hawell HW-404M7
|
||||
179 -> Beholder BeholdTV H7 [5ace:7190]
|
||||
180 -> Beholder BeholdTV A7 [5ace:7090]
|
||||
|
|
|
@ -5372,6 +5372,62 @@ struct saa7134_board saa7134_boards[] = {
|
|||
.gpio = 0x01fc00,
|
||||
} },
|
||||
},
|
||||
[SAA7134_BOARD_BEHOLD_H7] = {
|
||||
/* Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> */
|
||||
.name = "Beholder BeholdTV H7",
|
||||
.audio_clock = 0x00187de7,
|
||||
.tuner_type = TUNER_XC5000,
|
||||
.radio_type = UNSET,
|
||||
.tuner_addr = ADDR_UNSET,
|
||||
.radio_addr = ADDR_UNSET,
|
||||
.mpeg = SAA7134_MPEG_DVB,
|
||||
.ts_type = SAA7134_MPEG_TS_PARALLEL,
|
||||
.inputs = { {
|
||||
.name = name_tv,
|
||||
.vmux = 2,
|
||||
.amux = TV,
|
||||
.tv = 1,
|
||||
}, {
|
||||
.name = name_comp1,
|
||||
.vmux = 0,
|
||||
.amux = LINE1,
|
||||
}, {
|
||||
.name = name_svideo,
|
||||
.vmux = 9,
|
||||
.amux = LINE1,
|
||||
} },
|
||||
.radio = {
|
||||
.name = name_radio,
|
||||
.amux = TV,
|
||||
},
|
||||
},
|
||||
[SAA7134_BOARD_BEHOLD_A7] = {
|
||||
/* Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> */
|
||||
.name = "Beholder BeholdTV A7",
|
||||
.audio_clock = 0x00187de7,
|
||||
.tuner_type = TUNER_XC5000,
|
||||
.radio_type = UNSET,
|
||||
.tuner_addr = ADDR_UNSET,
|
||||
.radio_addr = ADDR_UNSET,
|
||||
.inputs = { {
|
||||
.name = name_tv,
|
||||
.vmux = 2,
|
||||
.amux = TV,
|
||||
.tv = 1,
|
||||
}, {
|
||||
.name = name_comp1,
|
||||
.vmux = 0,
|
||||
.amux = LINE1,
|
||||
}, {
|
||||
.name = name_svideo,
|
||||
.vmux = 9,
|
||||
.amux = LINE1,
|
||||
} },
|
||||
.radio = {
|
||||
.name = name_radio,
|
||||
.amux = TV,
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
|
@ -6566,6 +6622,18 @@ struct pci_device_id saa7134_pci_tbl[] = {
|
|||
.subvendor = PCI_ANY_ID,
|
||||
.subdevice = PCI_ANY_ID,
|
||||
.driver_data = SAA7134_BOARD_UNKNOWN,
|
||||
}, {
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
.subvendor = 0x5ace, /* Beholder Intl. Ltd. */
|
||||
.subdevice = 0x7190,
|
||||
.driver_data = SAA7134_BOARD_BEHOLD_H7,
|
||||
}, {
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
.subvendor = 0x5ace, /* Beholder Intl. Ltd. */
|
||||
.subdevice = 0x7090,
|
||||
.driver_data = SAA7134_BOARD_BEHOLD_A7,
|
||||
},{
|
||||
/* --- end of list --- */
|
||||
}
|
||||
|
@ -6619,6 +6687,8 @@ static int saa7134_xc5000_callback(struct saa7134_dev *dev,
|
|||
{
|
||||
switch (dev->board) {
|
||||
case SAA7134_BOARD_BEHOLD_X7:
|
||||
case SAA7134_BOARD_BEHOLD_H7:
|
||||
case SAA7134_BOARD_BEHOLD_A7:
|
||||
if (command == XC5000_TUNER_RESET) {
|
||||
/* Down and UP pheripherial RESET pin for reset all chips */
|
||||
saa_writeb(SAA7134_SPECIAL_MODE, 0x00);
|
||||
|
@ -6990,6 +7060,8 @@ int saa7134_board_init1(struct saa7134_dev *dev)
|
|||
case SAA7134_BOARD_BEHOLD_M6_EXTRA:
|
||||
case SAA7134_BOARD_BEHOLD_H6:
|
||||
case SAA7134_BOARD_BEHOLD_X7:
|
||||
case SAA7134_BOARD_BEHOLD_H7:
|
||||
case SAA7134_BOARD_BEHOLD_A7:
|
||||
dev->has_remote = SAA7134_REMOTE_I2C;
|
||||
break;
|
||||
case SAA7134_BOARD_AVERMEDIA_A169_B:
|
||||
|
|
|
@ -1532,6 +1532,15 @@ static int dvb_init(struct saa7134_dev *dev)
|
|||
&dev->i2c_adap, &behold_x7_tunerconfig);
|
||||
}
|
||||
break;
|
||||
case SAA7134_BOARD_BEHOLD_H7:
|
||||
fe0->dvb.frontend = dvb_attach(zl10353_attach,
|
||||
&behold_x7_config,
|
||||
&dev->i2c_adap);
|
||||
if (fe0->dvb.frontend) {
|
||||
dvb_attach(xc5000_attach, fe0->dvb.frontend,
|
||||
&dev->i2c_adap, &behold_x7_tunerconfig);
|
||||
}
|
||||
break;
|
||||
case SAA7134_BOARD_AVERMEDIA_A700_PRO:
|
||||
case SAA7134_BOARD_AVERMEDIA_A700_HYBRID:
|
||||
/* Zarlink ZL10313 */
|
||||
|
|
|
@ -982,6 +982,8 @@ void saa7134_probe_i2c_ir(struct saa7134_dev *dev)
|
|||
case SAA7134_BOARD_BEHOLD_M6_EXTRA:
|
||||
case SAA7134_BOARD_BEHOLD_H6:
|
||||
case SAA7134_BOARD_BEHOLD_X7:
|
||||
case SAA7134_BOARD_BEHOLD_H7:
|
||||
case SAA7134_BOARD_BEHOLD_A7:
|
||||
dev->init_data.name = "BeholdTV";
|
||||
dev->init_data.get_key = get_key_beholdm6xx;
|
||||
dev->init_data.ir_codes = RC_MAP_BEHOLD;
|
||||
|
|
|
@ -301,6 +301,8 @@ struct saa7134_format {
|
|||
#define SAA7134_BOARD_LEADTEK_WINFAST_DTV1000S 175
|
||||
#define SAA7134_BOARD_BEHOLD_505RDS_MK3 176
|
||||
#define SAA7134_BOARD_HAWELL_HW_404M7 177
|
||||
#define SAA7134_BOARD_BEHOLD_H7 178
|
||||
#define SAA7134_BOARD_BEHOLD_A7 179
|
||||
|
||||
#define SAA7134_MAXBOARDS 32
|
||||
#define SAA7134_INPUT_MAX 8
|
||||
|
|
Loading…
Reference in a new issue