aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx18/cx18-cards.c
diff options
context:
space:
mode:
authorSri Deevi <Srinivasa.Deevi@conexant.com>2008-06-21 10:06:44 -0400
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-07-20 06:11:13 -0400
commit03c2808503b102971226007070c57410267d0b9d (patch)
treeaeb3858db3f6cf61c574181b23804250ad68bfb5 /drivers/media/video/cx18/cx18-cards.c
parent464e9f3a0cabce9a7cf51f382f129d464483b0d0 (diff)
V4L/DVB (8089): cx18: add support for Conexant Raptor PAL/SECAM card
Patch provided courtesy of Conexant http://www.conexant.com. Signed-off-by: Srinivasa Deevi <srinivasa.deevi@conexant.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/cx18/cx18-cards.c')
-rw-r--r--drivers/media/video/cx18/cx18-cards.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/drivers/media/video/cx18/cx18-cards.c b/drivers/media/video/cx18/cx18-cards.c
index c26e0ef5b075..90857bedccae 100644
--- a/drivers/media/video/cx18/cx18-cards.c
+++ b/drivers/media/video/cx18/cx18-cards.c
@@ -27,6 +27,8 @@
27#include "cx18-i2c.h" 27#include "cx18-i2c.h"
28#include <media/cs5345.h> 28#include <media/cs5345.h>
29 29
30#define V4L2_STD_NOT_MN (V4L2_STD_PAL|V4L2_STD_SECAM)
31
30/********************** card configuration *******************************/ 32/********************** card configuration *******************************/
31 33
32/* usual i2c tuner addresses to probe */ 34/* usual i2c tuner addresses to probe */
@@ -232,11 +234,64 @@ static const struct cx18_card cx18_card_mpc718 = {
232 .i2c = &cx18_i2c_std, 234 .i2c = &cx18_i2c_std,
233}; 235};
234 236
237/* ------------------------------------------------------------------------- */
238
239/* Conexant Raptor PAL/SECAM: note that this card is analog only! */
240
241static const struct cx18_card_pci_info cx18_pci_cnxt_raptor_pal[] = {
242 { PCI_DEVICE_ID_CX23418, CX18_PCI_ID_CONEXANT, 0x0009 },
243 { 0, 0, 0 }
244};
245
246static const struct cx18_card cx18_card_cnxt_raptor_pal = {
247 .type = CX18_CARD_CNXT_RAPTOR_PAL,
248 .name = "Conexant Raptor PAL/SECAM",
249 .comment = "VBI is not yet supported\n",
250 .v4l2_capabilities = CX18_CAP_ENCODER,
251 .hw_audio_ctrl = CX18_HW_CX23418,
252 .hw_muxer = CX18_HW_GPIO,
253 .hw_all = CX18_HW_TUNER | CX18_HW_GPIO,
254 .video_inputs = {
255 { CX18_CARD_INPUT_VID_TUNER, 0, CX18_AV_COMPOSITE2 },
256 { CX18_CARD_INPUT_SVIDEO1, 1,
257 CX18_AV_SVIDEO_LUMA3 | CX18_AV_SVIDEO_CHROMA4 },
258 { CX18_CARD_INPUT_COMPOSITE1, 1, CX18_AV_COMPOSITE1 },
259 { CX18_CARD_INPUT_SVIDEO2, 2,
260 CX18_AV_SVIDEO_LUMA7 | CX18_AV_SVIDEO_CHROMA8 },
261 { CX18_CARD_INPUT_COMPOSITE2, 2, CX18_AV_COMPOSITE6 },
262 },
263 .audio_inputs = {
264 { CX18_CARD_INPUT_AUD_TUNER, CX18_AV_AUDIO_SERIAL, 1 },
265 { CX18_CARD_INPUT_LINE_IN1, CX18_AV_AUDIO_SERIAL, 0 },
266 { CX18_CARD_INPUT_LINE_IN2, CX18_AV_AUDIO_SERIAL, 0 },
267 },
268 .tuners = {
269 { .std = V4L2_STD_NOT_MN, .tuner = TUNER_PHILIPS_FM1216ME_MK3 },
270 },
271 .ddr = {
272 /* MT 46V16M16 memory */
273 .chip_config = 0x50306,
274 .refresh = 0x753,
275 .timing1 = 0x33220953,
276 .timing2 = 0x09,
277 .tune_lane = 0,
278 .initial_emrs = 0,
279 },
280 .gpio_init.initial_value = 0x02,
281 .gpio_init.direction = 0x02,
282 .gpio_audio_input = { .mask = 0x02, .tuner = 0x02, .linein = 0x00 },
283 .pci_list = cx18_pci_cnxt_raptor_pal,
284 .i2c = &cx18_i2c_std,
285};
286
287/* ------------------------------------------------------------------------- */
288
235static const struct cx18_card *cx18_card_list[] = { 289static const struct cx18_card *cx18_card_list[] = {
236 &cx18_card_hvr1600_esmt, 290 &cx18_card_hvr1600_esmt,
237 &cx18_card_hvr1600_samsung, 291 &cx18_card_hvr1600_samsung,
238 &cx18_card_h900, 292 &cx18_card_h900,
239 &cx18_card_mpc718, 293 &cx18_card_mpc718,
294 &cx18_card_cnxt_raptor_pal,
240}; 295};
241 296
242const struct cx18_card *cx18_get_card(u16 index) 297const struct cx18_card *cx18_get_card(u16 index)