Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 56ee3807 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

V4L/DVB (10516): em28xx: Add support for Easy Cap Capture DC-60



Thanks to Peter Senna Tschudin <peter.senna@gmail.com> for borrow me one
of those devices.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 9fc2c5ee
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -57,6 +57,7 @@
 57 -> Kworld PlusTV HD Hybrid 330              (em2883)        [eb1a:a316]
 57 -> Kworld PlusTV HD Hybrid 330              (em2883)        [eb1a:a316]
 58 -> Compro VideoMate ForYou/Stereo           (em2820/em2840) [185b:2041]
 58 -> Compro VideoMate ForYou/Stereo           (em2820/em2840) [185b:2041]
 60 -> Hauppauge WinTV HVR 850                  (em2883)        [2040:651f]
 60 -> Hauppauge WinTV HVR 850                  (em2883)        [2040:651f]
 61 -> Kaiomy TVnPC U2                          (em2860)        [eb1a:e303]
 61 -> Pixelview PlayTV Box 4 USB 2.0           (em2820/em2840)
 61 -> Pixelview PlayTV Box 4 USB 2.0           (em2820/em2840)
 62 -> Gadmei TVR200                            (em2820/em2840)
 62 -> Gadmei TVR200                            (em2820/em2840)
 63 -> Kaiomy TVnPC U2                          (em2860)        [eb1a:e303]
 64 -> Easy Cap Capture DC-60                   (em2860)
+20 −1
Original line number Original line Diff line number Diff line
@@ -1279,7 +1279,22 @@ struct em28xx_board em28xx_boards[] = {
			.type     = EM28XX_RADIO,
			.type     = EM28XX_RADIO,
			.amux     = EM28XX_AMUX_LINE_IN,
			.amux     = EM28XX_AMUX_LINE_IN,
		}
		}
	}
	},
	[EM2860_BOARD_EASYCAP] = {
		.name         = "Easy Cap Capture DC-60",
		.vchannels    = 2,
		.tuner_type   = TUNER_ABSENT,
		.decoder      = EM28XX_SAA711X,
		.input           = { {
			.type     = EM28XX_VMUX_COMPOSITE1,
			.vmux     = SAA7115_COMPOSITE0,
			.amux     = EM28XX_AMUX_LINE_IN,
		}, {
			.type     = EM28XX_VMUX_SVIDEO,
			.vmux     = SAA7115_SVIDEO3,
			.amux     = EM28XX_AMUX_LINE_IN,
		} },
	},
};
};
const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);


@@ -1568,6 +1583,10 @@ void em28xx_pre_card_setup(struct em28xx *dev)
		em28xx_write_regs(dev, 0x08, "\x6b", 1);
		em28xx_write_regs(dev, 0x08, "\x6b", 1);


		break;
		break;
	case EM2860_BOARD_EASYCAP:
		em28xx_write_regs(dev, 0x08, "\xf8", 1);
		break;

	}
	}


	em28xx_gpio_set(dev, dev->board.tuner_gpio);
	em28xx_gpio_set(dev, dev->board.tuner_gpio);
+2 −1
Original line number Original line Diff line number Diff line
@@ -99,7 +99,8 @@
#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850	  60
#define EM2883_BOARD_HAUPPAUGE_WINTV_HVR_850	  60
#define EM2820_BOARD_PROLINK_PLAYTV_BOX4_USB2	  61
#define EM2820_BOARD_PROLINK_PLAYTV_BOX4_USB2	  61
#define EM2820_BOARD_GADMEI_TVR200		  62
#define EM2820_BOARD_GADMEI_TVR200		  62
#define EM2860_BOARD_KAIOMY_TVNPC_U2              61
#define EM2860_BOARD_KAIOMY_TVNPC_U2              63
#define EM2860_BOARD_EASYCAP                      64


/* Limits minimum and default number of buffers */
/* Limits minimum and default number of buffers */
#define EM28XX_MIN_BUF 4
#define EM28XX_MIN_BUF 4