From: Markus Rechberger <mrechberger@gmail.com>
Date: Wed, 9 Nov 2005 05:38:05 +0000 (-0800)
Subject: [PATCH] v4l: 840: fixed settings for msi vox usb 2.0 saa7114 is missing atm
X-Git-Tag: v2.6.15-rc1~187
X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=30556b23f31973ca311341277c4e4b128c0528bb;p=linux-2.6-omap-h63xx.git

[PATCH] v4l: 840: fixed settings for msi vox usb 2.0 saa7114 is missing atm

- Fixed settings for MSI Vox USB 2.0 (saa7114 is missing atm)

Signed-off-by: Markus Rechberger <mrechberger@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
---

diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 27db6d956c3..4ab30476807 100644
--- a/drivers/media/video/em28xx/em28xx-cards.c
+++ b/drivers/media/video/em28xx/em28xx-cards.c
@@ -146,7 +146,7 @@ struct em2820_board em2820_boards[] = {
 		.decoder        = EM2820_SAA7114,
 		.input          = {{
 			.type     = EM2820_VMUX_TELEVISION,
-			.vmux     = 2,
+			.vmux     = 4,
 			.amux     = 0,
 		},{
 			.type     = EM2820_VMUX_COMPOSITE1,
diff --git a/drivers/media/video/em28xx/em28xx-i2c.c b/drivers/media/video/em28xx/em28xx-i2c.c
index bfe0d8795b6..20728882e33 100644
--- a/drivers/media/video/em28xx/em28xx-i2c.c
+++ b/drivers/media/video/em28xx/em28xx-i2c.c
@@ -437,6 +437,9 @@ static int attach_inform(struct i2c_client *client)
 		case 0x86:
 			em2820_i2c_call_clients(dev, TDA9887_SET_CONFIG, &dev->tda9887_conf);
 			break;
+		case 0x42:
+			dprintk1(1,"attach_inform: saa7114 detected.\n");
+			break;
 		case 0x4a:
 			dprintk1(1,"attach_inform: saa7113 detected.\n");
 			break;
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h
index 5ff308261a7..15760d3d753 100644
--- a/drivers/media/video/em28xx/em28xx.h
+++ b/drivers/media/video/em28xx/em28xx.h
@@ -493,10 +493,20 @@ inline static int em2820_gamma_set(struct em2820 *dev, s32 val)
 }
 
 /*FIXME: maxw should be dependent of alt mode */
-#define norm_maxw(dev) 720
+inline static unsigned int norm_maxw(struct em2820 *dev)
+{
+	switch(dev->model){
+		case (EM2820_BOARD_MSI_VOX_USB_2): return(640);
+		default: return(720);
+	}
+}
+
 inline static unsigned int norm_maxh(struct em2820 *dev)
 {
-	return (dev->tvnorm->id & V4L2_STD_625_50) ? 576 : 480;
+	switch(dev->model){
+		case (EM2820_BOARD_MSI_VOX_USB_2): return(480);
+		default: return (dev->tvnorm->id & V4L2_STD_625_50) ? 576 : 480;
+	}
 }
 
 #endif