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

Commit 694a101e authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

V4L/DVB (13528): em28xx: add support for em2800 VC211A card



Adds support to VC211A em2800 card. As this board doesn't have eeprom,
and uses a common set of i2c address, it has no way to add any
autodetection for it.

The patch were tested by me and by Raimundo on his board. Thanks to
those tests, several bugs related to em2800 support were corrected.

for producing the usbsnoop dump, used to get the gpio's and allowing me
to remotelly access his machine and to the needed tests.

Thanks-to: Raimundo Eduvirgnes de Oliveira <eduvirgens@yahoo.com.br>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent fb3de039
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -69,3 +69,4 @@
 71 -> Silvercrest Webcam 1.3mpix               (em2820/em2840)
 72 -> Gadmei UTV330+                           (em2861)
 73 -> Reddo DVB-C USB TV Box                   (em2870)
 74 -> Actionmaster/LinXcel/Digitus VC211A      (em2800)
+25 −0
Original line number Diff line number Diff line
@@ -225,6 +225,14 @@ static struct em28xx_reg_seq silvercrest_reg_seq[] = {
	{	-1,		-1,	-1,		-1},
};

static struct em28xx_reg_seq vc211a_enable[] = {
	{EM28XX_R08_GPIO,	0xff,	0x07,		10},
	{EM28XX_R08_GPIO,	0xff,	0x0f,		10},
	{EM28XX_R08_GPIO,	0xff,	0x0b,		10},
	{	-1,		-1,	-1,		-1},
};


/*
 *  Board definitions
 */
@@ -1009,6 +1017,23 @@ struct em28xx_board em28xx_boards[] = {
			.amux     = EM28XX_AMUX_LINE_IN,
		} },
	},
	[EM2800_BOARD_VC211A] = {
		.name         = "Actionmaster/LinXcel/Digitus VC211A",
		.is_em2800    = 1,
		.tuner_type   = TUNER_ABSENT,	/* Capture-only board */
		.decoder      = EM28XX_SAA711X,
		.input        = { {
			.type     = EM28XX_VMUX_COMPOSITE1,
			.vmux     = SAA7115_COMPOSITE0,
			.amux     = EM28XX_AMUX_LINE_IN,
			.gpio     = vc211a_enable,
		}, {
			.type     = EM28XX_VMUX_SVIDEO,
			.vmux     = SAA7115_SVIDEO3,
			.amux     = EM28XX_AMUX_LINE_IN,
			.gpio     = vc211a_enable,
		} },
	},
	[EM2800_BOARD_LEADTEK_WINFAST_USBII] = {
		.name         = "Leadtek Winfast USB II",
		.is_em2800    = 1,
+1 −0
Original line number Diff line number Diff line
@@ -110,6 +110,7 @@
#define EM2820_BOARD_SILVERCREST_WEBCAM           71
#define EM2861_BOARD_GADMEI_UTV330PLUS           72
#define EM2870_BOARD_REDDO_DVB_C_USB_BOX          73
#define EM2800_BOARD_VC211A			  74

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