mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 22:51:35 +00:00
V4L/DVB (7287): cx88: add analog support for DVICO FusionHDTV7 Gold
Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
a58858556d
commit
1117d6ba13
@ -63,3 +63,4 @@
|
||||
62 -> PowerColor Real Angel 330 [14f1:ea3d]
|
||||
63 -> Geniatech X8000-MT DVBT [14f1:8852]
|
||||
64 -> DViCO FusionHDTV DVB-T PRO [18ac:db30]
|
||||
65 -> DVICO FusionHDTV7 Gold [18ac:d610]
|
||||
|
@ -1571,6 +1571,26 @@ static const struct cx88_board cx88_boards[] = {
|
||||
} },
|
||||
.mpeg = CX88_MPEG_DVB,
|
||||
},
|
||||
[CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD] = {
|
||||
.name = "DVICO FusionHDTV7 Gold",
|
||||
.tuner_type = TUNER_XC5000,
|
||||
.radio_type = UNSET,
|
||||
.tuner_addr = ADDR_UNSET,
|
||||
.radio_addr = ADDR_UNSET,
|
||||
.input = {{
|
||||
.type = CX88_VMUX_TELEVISION,
|
||||
.vmux = 0,
|
||||
.gpio0 = 0x37df,
|
||||
},{
|
||||
.type = CX88_VMUX_COMPOSITE1,
|
||||
.vmux = 1,
|
||||
.gpio0 = 0x37df,
|
||||
},{
|
||||
.type = CX88_VMUX_SVIDEO,
|
||||
.vmux = 2,
|
||||
.gpio0 = 0x37df,
|
||||
}},
|
||||
},
|
||||
};
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
@ -1908,6 +1928,10 @@ static const struct cx88_subid cx88_subids[] = {
|
||||
.subvendor = 0x14f1,
|
||||
.subdevice = 0x8852,
|
||||
.card = CX88_BOARD_GENIATECH_X8000_MT,
|
||||
},{
|
||||
.subvendor = 0x18ac,
|
||||
.subdevice = 0xd610,
|
||||
.card = CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD,
|
||||
}
|
||||
};
|
||||
|
||||
@ -2189,6 +2213,18 @@ static int cx88_xc5000_tuner_callback(void *priv, int command, int arg)
|
||||
return -EINVAL;
|
||||
}
|
||||
break;
|
||||
case CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD:
|
||||
if (command == 0) { /* This is the reset command from xc5000 */
|
||||
cx_clear(MO_GP0_IO, 0x00000010);
|
||||
msleep(10);
|
||||
cx_set(MO_GP0_IO, 0x00000010);
|
||||
return 0;
|
||||
} else {
|
||||
printk(KERN_ERR
|
||||
"xc5000: unknown tuner callback command.\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return 0; /* Should never be here */
|
||||
}
|
||||
@ -2255,6 +2291,10 @@ static void cx88_card_setup_pre_i2c(struct cx88_core *core)
|
||||
cx_set(MO_GP0_IO, 0x00000080); /* 702 out of reset */
|
||||
udelay(1000);
|
||||
break;
|
||||
case CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD:
|
||||
/* Enable the xc5000 tuner */
|
||||
cx_set(MO_GP0_IO, 0x00001010);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -217,6 +217,7 @@ extern struct sram_channel cx88_sram_channels[];
|
||||
#define CX88_BOARD_POWERCOLOR_REAL_ANGEL 62
|
||||
#define CX88_BOARD_GENIATECH_X8000_MT 63
|
||||
#define CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PRO 64
|
||||
#define CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD 65
|
||||
|
||||
enum cx88_itype {
|
||||
CX88_VMUX_COMPOSITE1 = 1,
|
||||
|
Loading…
Reference in New Issue
Block a user