aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/pvrusb2
diff options
context:
space:
mode:
authorMike Isely <isely@pobox.com>2011-03-13 19:37:11 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-03-22 03:54:35 -0400
commit43823c02245a445b5669d43b1ec07b6d8ae710f5 (patch)
tree7d3c178483caba8a57726ee7cc9783da780e24a0 /drivers/media/video/pvrusb2
parent34fd68bc03c8d656f991bd4f1646ec773179521b (diff)
[media] pvrusb2: Implement support for Terratec Grabster AV400
Signed-off-by: Mike Isely <isely@pobox.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/pvrusb2')
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c18
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-devattr.c24
2 files changed, 42 insertions, 0 deletions
diff --git a/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c b/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
index 2222da8d0ca6..c514d0b9ffdc 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
@@ -99,9 +99,27 @@ static const struct routing_scheme routing_defgv = {
99 .cnt = ARRAY_SIZE(routing_schemegv), 99 .cnt = ARRAY_SIZE(routing_schemegv),
100}; 100};
101 101
102/* Specific to grabster av400 device */
103static const struct routing_scheme_item routing_schemeav400[] = {
104 [PVR2_CVAL_INPUT_COMPOSITE] = {
105 .vid = CX25840_COMPOSITE1,
106 .aud = CX25840_AUDIO_SERIAL,
107 },
108 [PVR2_CVAL_INPUT_SVIDEO] = {
109 .vid = (CX25840_SVIDEO_LUMA2|CX25840_SVIDEO_CHROMA4),
110 .aud = CX25840_AUDIO_SERIAL,
111 },
112};
113
114static const struct routing_scheme routing_defav400 = {
115 .def = routing_schemeav400,
116 .cnt = ARRAY_SIZE(routing_schemeav400),
117};
118
102static const struct routing_scheme *routing_schemes[] = { 119static const struct routing_scheme *routing_schemes[] = {
103 [PVR2_ROUTING_SCHEME_HAUPPAUGE] = &routing_def0, 120 [PVR2_ROUTING_SCHEME_HAUPPAUGE] = &routing_def0,
104 [PVR2_ROUTING_SCHEME_GOTVIEW] = &routing_defgv, 121 [PVR2_ROUTING_SCHEME_GOTVIEW] = &routing_defgv,
122 [PVR2_ROUTING_SCHEME_AV400] = &routing_defav400,
105}; 123};
106 124
107void pvr2_cx25840_subdev_update(struct pvr2_hdw *hdw, struct v4l2_subdev *sd) 125void pvr2_cx25840_subdev_update(struct pvr2_hdw *hdw, struct v4l2_subdev *sd)
diff --git a/drivers/media/video/pvrusb2/pvrusb2-devattr.c b/drivers/media/video/pvrusb2/pvrusb2-devattr.c
index 3092abfd66a2..e799331389b1 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-devattr.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-devattr.c
@@ -157,6 +157,28 @@ static const struct pvr2_device_desc pvr2_device_gotview_2d = {
157 157
158 158
159/*------------------------------------------------------------------------*/ 159/*------------------------------------------------------------------------*/
160/* Terratec Grabster AV400 */
161
162static const struct pvr2_device_client_desc pvr2_cli_av400[] = {
163 { .module_id = PVR2_CLIENT_ID_CX25840 },
164};
165
166static const struct pvr2_device_desc pvr2_device_av400 = {
167 .description = "Terratec Grabster AV400",
168 .shortname = "av400",
169 .flag_is_experimental = 1,
170 .client_table.lst = pvr2_cli_av400,
171 .client_table.cnt = ARRAY_SIZE(pvr2_cli_av400),
172 .flag_has_cx25840 = !0,
173 .flag_has_analogtuner = 0,
174 .flag_has_composite = !0,
175 .flag_has_svideo = !0,
176 .signal_routing_scheme = PVR2_ROUTING_SCHEME_AV400,
177};
178
179
180
181/*------------------------------------------------------------------------*/
160/* OnAir Creator */ 182/* OnAir Creator */
161 183
162#ifdef CONFIG_VIDEO_PVRUSB2_DVB 184#ifdef CONFIG_VIDEO_PVRUSB2_DVB
@@ -517,6 +539,8 @@ struct usb_device_id pvr2_device_table[] = {
517 .driver_info = (kernel_ulong_t)&pvr2_device_750xx}, 539 .driver_info = (kernel_ulong_t)&pvr2_device_750xx},
518 { USB_DEVICE(0x2040, 0x7501), 540 { USB_DEVICE(0x2040, 0x7501),
519 .driver_info = (kernel_ulong_t)&pvr2_device_751xx}, 541 .driver_info = (kernel_ulong_t)&pvr2_device_751xx},
542 { USB_DEVICE(0x0ccd, 0x0039),
543 .driver_info = (kernel_ulong_t)&pvr2_device_av400},
520 { } 544 { }
521}; 545};
522 546