From e2e4c0c363aef1bde8c91612275c62c23df884e6 Mon Sep 17 00:00:00 2001 From: Markus Rechberger Date: Sat, 22 Oct 2005 21:58:13 +0000 Subject: * ../linux/drivers/usb/media/em2820-cards.c: * ../linux/drivers/usb/media/em2820-i2c.c: * ../linux/drivers/usb/media/em2820.h: - fixed settings for MSI Vox USB 2.0 (saa7114 is missing atm) Signed-off-by: Markus Rechberger --- linux/drivers/media/video/em28xx/em28xx-cards.c | 2 +- linux/drivers/media/video/em28xx/em28xx-i2c.c | 3 +++ linux/drivers/media/video/em28xx/em28xx.h | 14 ++++++++++++-- linux/drivers/usb/media/em2820-cards.c | 2 +- linux/drivers/usb/media/em2820-i2c.c | 3 +++ linux/drivers/usb/media/em2820.h | 14 ++++++++++++-- 6 files changed, 32 insertions(+), 6 deletions(-) (limited to 'linux') diff --git a/linux/drivers/media/video/em28xx/em28xx-cards.c b/linux/drivers/media/video/em28xx/em28xx-cards.c index 487a3bebc..680ff5998 100644 --- a/linux/drivers/media/video/em28xx/em28xx-cards.c +++ b/linux/drivers/media/video/em28xx/em28xx-cards.c @@ -147,7 +147,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/linux/drivers/media/video/em28xx/em28xx-i2c.c b/linux/drivers/media/video/em28xx/em28xx-i2c.c index cdf18ec47..88a771ad2 100644 --- a/linux/drivers/media/video/em28xx/em28xx-i2c.c +++ b/linux/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/linux/drivers/media/video/em28xx/em28xx.h b/linux/drivers/media/video/em28xx/em28xx.h index 09c0b480e..231dd983a 100644 --- a/linux/drivers/media/video/em28xx/em28xx.h +++ b/linux/drivers/media/video/em28xx/em28xx.h @@ -494,10 +494,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 diff --git a/linux/drivers/usb/media/em2820-cards.c b/linux/drivers/usb/media/em2820-cards.c index 487a3bebc..680ff5998 100644 --- a/linux/drivers/usb/media/em2820-cards.c +++ b/linux/drivers/usb/media/em2820-cards.c @@ -147,7 +147,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/linux/drivers/usb/media/em2820-i2c.c b/linux/drivers/usb/media/em2820-i2c.c index cdf18ec47..88a771ad2 100644 --- a/linux/drivers/usb/media/em2820-i2c.c +++ b/linux/drivers/usb/media/em2820-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/linux/drivers/usb/media/em2820.h b/linux/drivers/usb/media/em2820.h index 09c0b480e..231dd983a 100644 --- a/linux/drivers/usb/media/em2820.h +++ b/linux/drivers/usb/media/em2820.h @@ -494,10 +494,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 -- cgit v1.2.3