V4L/DVB (11768): cx23885: add ATSC/QAM tuning support for Hauppauge WinTV-HVR1270
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Родитель
2074dffaed
Коммит
a5dbf45766
|
@ -183,6 +183,7 @@ struct cx23885_board cx23885_boards[] = {
|
|||
},
|
||||
[CX23885_BOARD_HAUPPAUGE_HVR1270] = {
|
||||
.name = "Hauppauge WinTV-HVR1270",
|
||||
.portc = CX23885_MPEG_DVB,
|
||||
},
|
||||
};
|
||||
const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards);
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include "cimax2.h"
|
||||
#include "netup-eeprom.h"
|
||||
#include "netup-init.h"
|
||||
#include "lgdt3305.h"
|
||||
|
||||
static unsigned int debug;
|
||||
|
||||
|
@ -226,6 +227,28 @@ static struct tda18271_config hauppauge_hvr1200_tuner_config = {
|
|||
.gate = TDA18271_GATE_ANALOG,
|
||||
};
|
||||
|
||||
static struct tda18271_std_map hcw_lgdt3305_tda18271_std_map = {
|
||||
.atsc_6 = { .if_freq = 3250, .agc_mode = 3, .std = 4,
|
||||
.if_lvl = 1, .rfagc_top = 0x58 },
|
||||
.qam_6 = { .if_freq = 4000, .agc_mode = 3, .std = 5,
|
||||
.if_lvl = 1, .rfagc_top = 0x58 },
|
||||
};
|
||||
|
||||
static struct tda18271_config hcw_lgdt3305_tda18271_config = {
|
||||
.std_map = &hcw_lgdt3305_tda18271_std_map,
|
||||
};
|
||||
|
||||
static struct lgdt3305_config hcw_lgdt3305_config = {
|
||||
.i2c_addr = 0x0e,
|
||||
.mpeg_mode = LGDT3305_MPEG_SERIAL,
|
||||
.tpclk_edge = LGDT3305_TPCLK_FALLING_EDGE,
|
||||
.tpvalid_polarity = LGDT3305_TP_VALID_HIGH,
|
||||
.deny_i2c_rptr = 1,
|
||||
.spectral_inversion = 1,
|
||||
.qam_if_khz = 4000,
|
||||
.vsb_if_khz = 3250,
|
||||
};
|
||||
|
||||
static struct dibx000_agc_config xc3028_agc_config = {
|
||||
BAND_VHF | BAND_UHF, /* band_caps */
|
||||
|
||||
|
@ -398,6 +421,17 @@ static int dvb_register(struct cx23885_tsport *port)
|
|||
&hauppauge_generic_tunerconfig, 0);
|
||||
}
|
||||
break;
|
||||
case CX23885_BOARD_HAUPPAUGE_HVR1270:
|
||||
i2c_bus = &dev->i2c_bus[0];
|
||||
fe0->dvb.frontend = dvb_attach(lgdt3305_attach,
|
||||
&hcw_lgdt3305_config,
|
||||
&i2c_bus->i2c_adap);
|
||||
if (fe0->dvb.frontend != NULL) {
|
||||
dvb_attach(tda18271_attach, fe0->dvb.frontend,
|
||||
0x60, &dev->i2c_bus[1].i2c_adap,
|
||||
&hcw_lgdt3305_tda18271_config);
|
||||
}
|
||||
break;
|
||||
case CX23885_BOARD_HAUPPAUGE_HVR1800:
|
||||
i2c_bus = &dev->i2c_bus[0];
|
||||
switch (alt_tuner) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче