diff options
author | Indika Katugampala <indika_20012001@yahoo.co.jp> | 2009-02-11 09:13:05 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-03-30 11:42:45 -0400 |
commit | f74a61e3c6f218053742c2caf3e247fb41bf395e (patch) | |
tree | 9fc443cb9ddd4ee157ee9d38eb09216e3b476927 /drivers | |
parent | a1a6ee74f2c68918f2e145dccba3637eea91a52a (diff) |
V4L/DVB (10528): em28xx: support added for IO-DATA GV/MVP SZ - EMPIA-2820 chipset
[dougsland@redhat.com: Fixed CodingStyle]
Signed-off-by: Indika Katugampala <indika_20012001@yahoo.co.jp>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-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 419304d31256..c16c28e1ec48 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -1297,6 +1297,26 @@ struct em28xx_board em28xx_boards[] = { | |||
1297 | .amux = EM28XX_AMUX_LINE_IN, | 1297 | .amux = EM28XX_AMUX_LINE_IN, |
1298 | } }, | 1298 | } }, |
1299 | }, | 1299 | }, |
1300 | [EM2820_BOARD_IODATA_GVMVP_SZ] = { | ||
1301 | .name = "IO-DATA GV-MVP/SZ", | ||
1302 | .tuner_type = TUNER_PHILIPS_FM1236_MK3, | ||
1303 | .tuner_gpio = default_tuner_gpio, | ||
1304 | .tda9887_conf = TDA9887_PRESENT, | ||
1305 | .decoder = EM28XX_TVP5150, | ||
1306 | .input = { { | ||
1307 | .type = EM28XX_VMUX_TELEVISION, | ||
1308 | .vmux = TVP5150_COMPOSITE0, | ||
1309 | .amux = EM28XX_AMUX_VIDEO, | ||
1310 | }, { /* Composite has not been tested yet */ | ||
1311 | .type = EM28XX_VMUX_COMPOSITE1, | ||
1312 | .vmux = TVP5150_COMPOSITE1, | ||
1313 | .amux = EM28XX_AMUX_VIDEO, | ||
1314 | }, { /* S-video has not been tested yet */ | ||
1315 | .type = EM28XX_VMUX_SVIDEO, | ||
1316 | .vmux = TVP5150_SVIDEO, | ||
1317 | .amux = EM28XX_AMUX_VIDEO, | ||
1318 | } }, | ||
1319 | }, | ||
1300 | }; | 1320 | }; |
1301 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); | 1321 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); |
1302 | 1322 | ||
@@ -1396,6 +1416,8 @@ struct usb_device_id em28xx_id_table[] = { | |||
1396 | .driver_info = EM2800_BOARD_LEADTEK_WINFAST_USBII }, | 1416 | .driver_info = EM2800_BOARD_LEADTEK_WINFAST_USBII }, |
1397 | { USB_DEVICE(0x093b, 0xa005), | 1417 | { USB_DEVICE(0x093b, 0xa005), |
1398 | .driver_info = EM2861_BOARD_PLEXTOR_PX_TV100U }, | 1418 | .driver_info = EM2861_BOARD_PLEXTOR_PX_TV100U }, |
1419 | { USB_DEVICE(0x04bb, 0x0515), | ||
1420 | .driver_info = EM2820_BOARD_IODATA_GVMVP_SZ }, | ||
1399 | { }, | 1421 | { }, |
1400 | }; | 1422 | }; |
1401 | MODULE_DEVICE_TABLE(usb, em28xx_id_table); | 1423 | MODULE_DEVICE_TABLE(usb, em28xx_id_table); |
@@ -1589,6 +1611,16 @@ void em28xx_pre_card_setup(struct em28xx *dev) | |||
1589 | em28xx_write_regs(dev, 0x08, "\xf8", 1); | 1611 | em28xx_write_regs(dev, 0x08, "\xf8", 1); |
1590 | break; | 1612 | break; |
1591 | 1613 | ||
1614 | case EM2820_BOARD_IODATA_GVMVP_SZ: | ||
1615 | em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xff); | ||
1616 | msleep(70); | ||
1617 | em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xf7); | ||
1618 | msleep(10); | ||
1619 | em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfe); | ||
1620 | msleep(70); | ||
1621 | em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfd); | ||
1622 | msleep(70); | ||
1623 | break; | ||
1592 | } | 1624 | } |
1593 | 1625 | ||
1594 | em28xx_gpio_set(dev, dev->board.tuner_gpio); | 1626 | em28xx_gpio_set(dev, dev->board.tuner_gpio); |
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index 5115db3a76a6..3e82d818c0cd 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -101,6 +101,7 @@ | |||
101 | #define EM2820_BOARD_GADMEI_TVR200 62 | 101 | #define EM2820_BOARD_GADMEI_TVR200 62 |
102 | #define EM2860_BOARD_KAIOMY_TVNPC_U2 63 | 102 | #define EM2860_BOARD_KAIOMY_TVNPC_U2 63 |
103 | #define EM2860_BOARD_EASYCAP 64 | 103 | #define EM2860_BOARD_EASYCAP 64 |
104 | #define EM2820_BOARD_IODATA_GVMVP_SZ 65 | ||
104 | 105 | ||
105 | /* Limits minimum and default number of buffers */ | 106 | /* Limits minimum and default number of buffers */ |
106 | #define EM28XX_MIN_BUF 4 | 107 | #define EM28XX_MIN_BUF 4 |