diff options
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 32 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx.h | 1 |
2 files changed, 33 insertions, 0 deletions
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index b4c78f2ab985..3958f168fc57 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -140,6 +140,16 @@ static struct em28xx_reg_seq compro_mute_gpio[] = { | |||
140 | { -1, -1, -1, -1}, | 140 | { -1, -1, -1, -1}, |
141 | }; | 141 | }; |
142 | 142 | ||
143 | /* Terratec AV350 */ | ||
144 | static struct em28xx_reg_seq terratec_av350_mute_gpio[] = { | ||
145 | {EM28XX_R08_GPIO, 0xff, 0x7f, 10}, | ||
146 | { -1, -1, -1, -1}, | ||
147 | }; | ||
148 | |||
149 | static struct em28xx_reg_seq terratec_av350_unmute_gpio[] = { | ||
150 | {EM28XX_R08_GPIO, 0xff, 0xff, 10}, | ||
151 | { -1, -1, -1, -1}, | ||
152 | }; | ||
143 | /* | 153 | /* |
144 | * Board definitions | 154 | * Board definitions |
145 | */ | 155 | */ |
@@ -1363,6 +1373,26 @@ struct em28xx_board em28xx_boards[] = { | |||
1363 | .amux = EM28XX_AMUX_VIDEO2, | 1373 | .amux = EM28XX_AMUX_VIDEO2, |
1364 | } }, | 1374 | } }, |
1365 | }, | 1375 | }, |
1376 | [EM2860_BOARD_TERRATEC_AV350] = { | ||
1377 | .name = "Terratec AV350", | ||
1378 | .vchannels = 2, | ||
1379 | .tuner_type = TUNER_ABSENT, | ||
1380 | .decoder = EM28XX_TVP5150, | ||
1381 | .xclk = EM28XX_XCLK_FREQUENCY_12MHZ, | ||
1382 | .mute_gpio = terratec_av350_mute_gpio, | ||
1383 | .input = { { | ||
1384 | .type = EM28XX_VMUX_COMPOSITE1, | ||
1385 | .vmux = TVP5150_COMPOSITE1, | ||
1386 | .amux = EM28XX_AUDIO_SRC_LINE, | ||
1387 | .gpio = terratec_av350_unmute_gpio, | ||
1388 | |||
1389 | }, { | ||
1390 | .type = EM28XX_VMUX_SVIDEO, | ||
1391 | .vmux = TVP5150_SVIDEO, | ||
1392 | .amux = EM28XX_AUDIO_SRC_LINE, | ||
1393 | .gpio = terratec_av350_unmute_gpio, | ||
1394 | } }, | ||
1395 | }, | ||
1366 | }; | 1396 | }; |
1367 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); | 1397 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); |
1368 | 1398 | ||
@@ -1426,6 +1456,8 @@ struct usb_device_id em28xx_id_table[] = { | |||
1426 | .driver_info = EM2870_BOARD_TERRATEC_XS }, | 1456 | .driver_info = EM2870_BOARD_TERRATEC_XS }, |
1427 | { USB_DEVICE(0x0ccd, 0x0047), | 1457 | { USB_DEVICE(0x0ccd, 0x0047), |
1428 | .driver_info = EM2880_BOARD_TERRATEC_PRODIGY_XS }, | 1458 | .driver_info = EM2880_BOARD_TERRATEC_PRODIGY_XS }, |
1459 | { USB_DEVICE(0x0ccd, 0x0084), | ||
1460 | .driver_info = EM2860_BOARD_TERRATEC_AV350 }, | ||
1429 | { USB_DEVICE(0x0ccd, 0x0096), | 1461 | { USB_DEVICE(0x0ccd, 0x0096), |
1430 | .driver_info = EM2860_BOARD_TERRATEC_GRABBY }, | 1462 | .driver_info = EM2860_BOARD_TERRATEC_GRABBY }, |
1431 | { USB_DEVICE(0x185b, 0x2870), | 1463 | { USB_DEVICE(0x185b, 0x2870), |
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index fa2fb4110833..58c0ef4a2dce 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -104,6 +104,7 @@ | |||
104 | #define EM2820_BOARD_IODATA_GVMVP_SZ 65 | 104 | #define EM2820_BOARD_IODATA_GVMVP_SZ 65 |
105 | #define EM2880_BOARD_EMPIRE_DUAL_TV 66 | 105 | #define EM2880_BOARD_EMPIRE_DUAL_TV 66 |
106 | #define EM2860_BOARD_TERRATEC_GRABBY 67 | 106 | #define EM2860_BOARD_TERRATEC_GRABBY 67 |
107 | #define EM2860_BOARD_TERRATEC_AV350 68 | ||
107 | 108 | ||
108 | /* Limits minimum and default number of buffers */ | 109 | /* Limits minimum and default number of buffers */ |
109 | #define EM28XX_MIN_BUF 4 | 110 | #define EM28XX_MIN_BUF 4 |