diff options
-rw-r--r-- | drivers/media/dvb/bt8xx/dst.c | 3 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-core/dvbdev.c | 15 | ||||
-rw-r--r-- | drivers/media/video/cafe_ccic-regs.h | 6 | ||||
-rw-r--r-- | drivers/media/video/cafe_ccic.c | 18 | ||||
-rw-r--r-- | drivers/media/video/em28xx/Kconfig | 3 | ||||
-rw-r--r-- | drivers/media/video/ivtv/Kconfig | 2 | ||||
-rw-r--r-- | drivers/media/video/ivtv/ivtv-driver.h | 8 | ||||
-rw-r--r-- | drivers/media/video/ivtv/ivtv-ioctl.c | 12 | ||||
-rw-r--r-- | drivers/media/video/ov7670.c | 21 | ||||
-rw-r--r-- | drivers/media/video/tuner-simple.c | 10 | ||||
-rw-r--r-- | include/linux/videodev2.h | 2 |
11 files changed, 63 insertions, 37 deletions
diff --git a/drivers/media/dvb/bt8xx/dst.c b/drivers/media/dvb/bt8xx/dst.c index 0393a3d19920..e908e3cf1e50 100644 --- a/drivers/media/dvb/bt8xx/dst.c +++ b/drivers/media/dvb/bt8xx/dst.c | |||
@@ -1721,9 +1721,6 @@ static void dst_release(struct dvb_frontend *fe) | |||
1721 | symbol_put(dst_ca_attach); | 1721 | symbol_put(dst_ca_attach); |
1722 | #endif | 1722 | #endif |
1723 | } | 1723 | } |
1724 | #ifdef CONFIG_DVB_CORE_ATTACH | ||
1725 | symbol_put(dst_attach); | ||
1726 | #endif | ||
1727 | kfree(state); | 1724 | kfree(state); |
1728 | } | 1725 | } |
1729 | 1726 | ||
diff --git a/drivers/media/dvb/dvb-core/dvbdev.c b/drivers/media/dvb/dvb-core/dvbdev.c index e23d8a0ea1d3..a9fa3337dd81 100644 --- a/drivers/media/dvb/dvb-core/dvbdev.c +++ b/drivers/media/dvb/dvb-core/dvbdev.c | |||
@@ -200,7 +200,7 @@ int dvb_register_device(struct dvb_adapter *adap, struct dvb_device **pdvbdev, | |||
200 | { | 200 | { |
201 | struct dvb_device *dvbdev; | 201 | struct dvb_device *dvbdev; |
202 | struct file_operations *dvbdevfops; | 202 | struct file_operations *dvbdevfops; |
203 | 203 | struct class_device *clsdev; | |
204 | int id; | 204 | int id; |
205 | 205 | ||
206 | mutex_lock(&dvbdev_register_lock); | 206 | mutex_lock(&dvbdev_register_lock); |
@@ -242,8 +242,15 @@ int dvb_register_device(struct dvb_adapter *adap, struct dvb_device **pdvbdev, | |||
242 | 242 | ||
243 | mutex_unlock(&dvbdev_register_lock); | 243 | mutex_unlock(&dvbdev_register_lock); |
244 | 244 | ||
245 | class_device_create(dvb_class, NULL, MKDEV(DVB_MAJOR, nums2minor(adap->num, type, id)), | 245 | clsdev = class_device_create(dvb_class, NULL, MKDEV(DVB_MAJOR, |
246 | adap->device, "dvb%d.%s%d", adap->num, dnames[type], id); | 246 | nums2minor(adap->num, type, id)), |
247 | adap->device, "dvb%d.%s%d", adap->num, | ||
248 | dnames[type], id); | ||
249 | if (IS_ERR(clsdev)) { | ||
250 | printk(KERN_ERR "%s: failed to create device dvb%d.%s%d (%ld)\n", | ||
251 | __FUNCTION__, adap->num, dnames[type], id, PTR_ERR(clsdev)); | ||
252 | return PTR_ERR(clsdev); | ||
253 | } | ||
247 | 254 | ||
248 | dprintk("DVB: register adapter%d/%s%d @ minor: %i (0x%02x)\n", | 255 | dprintk("DVB: register adapter%d/%s%d @ minor: %i (0x%02x)\n", |
249 | adap->num, dnames[type], id, nums2minor(adap->num, type, id), | 256 | adap->num, dnames[type], id, nums2minor(adap->num, type, id), |
@@ -431,7 +438,7 @@ static void __exit exit_dvbdev(void) | |||
431 | unregister_chrdev_region(MKDEV(DVB_MAJOR, 0), MAX_DVB_MINORS); | 438 | unregister_chrdev_region(MKDEV(DVB_MAJOR, 0), MAX_DVB_MINORS); |
432 | } | 439 | } |
433 | 440 | ||
434 | module_init(init_dvbdev); | 441 | subsys_initcall(init_dvbdev); |
435 | module_exit(exit_dvbdev); | 442 | module_exit(exit_dvbdev); |
436 | 443 | ||
437 | MODULE_DESCRIPTION("DVB Core Driver"); | 444 | MODULE_DESCRIPTION("DVB Core Driver"); |
diff --git a/drivers/media/video/cafe_ccic-regs.h b/drivers/media/video/cafe_ccic-regs.h index b2c22a0d6643..8e2a87cdc791 100644 --- a/drivers/media/video/cafe_ccic-regs.h +++ b/drivers/media/video/cafe_ccic-regs.h | |||
@@ -150,6 +150,12 @@ | |||
150 | #define REG_GL_IMASK 0x300c /* Interrupt mask register */ | 150 | #define REG_GL_IMASK 0x300c /* Interrupt mask register */ |
151 | #define GIMSK_CCIC_EN 0x00000004 /* CCIC Interrupt enable */ | 151 | #define GIMSK_CCIC_EN 0x00000004 /* CCIC Interrupt enable */ |
152 | 152 | ||
153 | #define REG_GL_FCR 0x3038 /* GPIO functional control register */ | ||
154 | #define GFCR_GPIO_ON 0x08 /* Camera GPIO enabled */ | ||
155 | #define REG_GL_GPIOR 0x315c /* GPIO register */ | ||
156 | #define GGPIO_OUT 0x80000 /* GPIO output */ | ||
157 | #define GGPIO_VAL 0x00008 /* Output pin value */ | ||
158 | |||
153 | #define REG_LEN REG_GL_IMASK + 4 | 159 | #define REG_LEN REG_GL_IMASK + 4 |
154 | 160 | ||
155 | 161 | ||
diff --git a/drivers/media/video/cafe_ccic.c b/drivers/media/video/cafe_ccic.c index 96254dbaf625..c08f650df423 100644 --- a/drivers/media/video/cafe_ccic.c +++ b/drivers/media/video/cafe_ccic.c | |||
@@ -775,6 +775,12 @@ static void cafe_ctlr_power_up(struct cafe_camera *cam) | |||
775 | spin_lock_irqsave(&cam->dev_lock, flags); | 775 | spin_lock_irqsave(&cam->dev_lock, flags); |
776 | cafe_reg_clear_bit(cam, REG_CTRL1, C1_PWRDWN); | 776 | cafe_reg_clear_bit(cam, REG_CTRL1, C1_PWRDWN); |
777 | /* | 777 | /* |
778 | * Part one of the sensor dance: turn the global | ||
779 | * GPIO signal on. | ||
780 | */ | ||
781 | cafe_reg_write(cam, REG_GL_FCR, GFCR_GPIO_ON); | ||
782 | cafe_reg_write(cam, REG_GL_GPIOR, GGPIO_OUT|GGPIO_VAL); | ||
783 | /* | ||
778 | * Put the sensor into operational mode (assumes OLPC-style | 784 | * Put the sensor into operational mode (assumes OLPC-style |
779 | * wiring). Control 0 is reset - set to 1 to operate. | 785 | * wiring). Control 0 is reset - set to 1 to operate. |
780 | * Control 1 is power down, set to 0 to operate. | 786 | * Control 1 is power down, set to 0 to operate. |
@@ -784,6 +790,7 @@ static void cafe_ctlr_power_up(struct cafe_camera *cam) | |||
784 | cafe_reg_write(cam, REG_GPR, GPR_C1EN|GPR_C0EN|GPR_C0); | 790 | cafe_reg_write(cam, REG_GPR, GPR_C1EN|GPR_C0EN|GPR_C0); |
785 | // mdelay(1); /* Enough? */ | 791 | // mdelay(1); /* Enough? */ |
786 | spin_unlock_irqrestore(&cam->dev_lock, flags); | 792 | spin_unlock_irqrestore(&cam->dev_lock, flags); |
793 | msleep(5); /* Just to be sure */ | ||
787 | } | 794 | } |
788 | 795 | ||
789 | static void cafe_ctlr_power_down(struct cafe_camera *cam) | 796 | static void cafe_ctlr_power_down(struct cafe_camera *cam) |
@@ -792,6 +799,8 @@ static void cafe_ctlr_power_down(struct cafe_camera *cam) | |||
792 | 799 | ||
793 | spin_lock_irqsave(&cam->dev_lock, flags); | 800 | spin_lock_irqsave(&cam->dev_lock, flags); |
794 | cafe_reg_write(cam, REG_GPR, GPR_C1EN|GPR_C0EN|GPR_C1); | 801 | cafe_reg_write(cam, REG_GPR, GPR_C1EN|GPR_C0EN|GPR_C1); |
802 | cafe_reg_write(cam, REG_GL_FCR, GFCR_GPIO_ON); | ||
803 | cafe_reg_write(cam, REG_GL_GPIOR, GGPIO_OUT); | ||
795 | cafe_reg_set_bit(cam, REG_CTRL1, C1_PWRDWN); | 804 | cafe_reg_set_bit(cam, REG_CTRL1, C1_PWRDWN); |
796 | spin_unlock_irqrestore(&cam->dev_lock, flags); | 805 | spin_unlock_irqrestore(&cam->dev_lock, flags); |
797 | } | 806 | } |
@@ -851,6 +860,7 @@ static int cafe_cam_init(struct cafe_camera *cam) | |||
851 | ret = 0; | 860 | ret = 0; |
852 | cam->state = S_IDLE; | 861 | cam->state = S_IDLE; |
853 | out: | 862 | out: |
863 | cafe_ctlr_power_down(cam); | ||
854 | mutex_unlock(&cam->s_mutex); | 864 | mutex_unlock(&cam->s_mutex); |
855 | return ret; | 865 | return ret; |
856 | } | 866 | } |
@@ -2103,10 +2113,16 @@ static int cafe_pci_probe(struct pci_dev *pdev, | |||
2103 | ret = request_irq(pdev->irq, cafe_irq, IRQF_SHARED, "cafe-ccic", cam); | 2113 | ret = request_irq(pdev->irq, cafe_irq, IRQF_SHARED, "cafe-ccic", cam); |
2104 | if (ret) | 2114 | if (ret) |
2105 | goto out_iounmap; | 2115 | goto out_iounmap; |
2116 | /* | ||
2117 | * Initialize the controller and leave it powered up. It will | ||
2118 | * stay that way until the sensor driver shows up. | ||
2119 | */ | ||
2106 | cafe_ctlr_init(cam); | 2120 | cafe_ctlr_init(cam); |
2107 | cafe_ctlr_power_up(cam); | 2121 | cafe_ctlr_power_up(cam); |
2108 | /* | 2122 | /* |
2109 | * Set up I2C/SMBUS communications | 2123 | * Set up I2C/SMBUS communications. We have to drop the mutex here |
2124 | * because the sensor could attach in this call chain, leading to | ||
2125 | * unsightly deadlocks. | ||
2110 | */ | 2126 | */ |
2111 | mutex_unlock(&cam->s_mutex); /* attach can deadlock */ | 2127 | mutex_unlock(&cam->s_mutex); /* attach can deadlock */ |
2112 | ret = cafe_smbus_setup(cam); | 2128 | ret = cafe_smbus_setup(cam); |
diff --git a/drivers/media/video/em28xx/Kconfig b/drivers/media/video/em28xx/Kconfig index 2c450bd05af5..5b6a40371602 100644 --- a/drivers/media/video/em28xx/Kconfig +++ b/drivers/media/video/em28xx/Kconfig | |||
@@ -1,7 +1,6 @@ | |||
1 | config VIDEO_EM28XX | 1 | config VIDEO_EM28XX |
2 | tristate "Empia EM2800/2820/2840 USB video capture support" | 2 | tristate "Empia EM2800/2820/2840 USB video capture support" |
3 | depends on VIDEO_V4L1 && I2C && PCI | 3 | depends on VIDEO_V4L1 && I2C |
4 | select VIDEO_BUF | ||
5 | select VIDEO_TUNER | 4 | select VIDEO_TUNER |
6 | select VIDEO_TVEEPROM | 5 | select VIDEO_TVEEPROM |
7 | select VIDEO_IR | 6 | select VIDEO_IR |
diff --git a/drivers/media/video/ivtv/Kconfig b/drivers/media/video/ivtv/Kconfig index 0cc98a0e2496..1aaeaa02f158 100644 --- a/drivers/media/video/ivtv/Kconfig +++ b/drivers/media/video/ivtv/Kconfig | |||
@@ -1,6 +1,6 @@ | |||
1 | config VIDEO_IVTV | 1 | config VIDEO_IVTV |
2 | tristate "Conexant cx23416/cx23415 MPEG encoder/decoder support" | 2 | tristate "Conexant cx23416/cx23415 MPEG encoder/decoder support" |
3 | depends on VIDEO_V4L1 && VIDEO_V4L2 && USB && I2C && EXPERIMENTAL && PCI | 3 | depends on VIDEO_V4L1 && VIDEO_V4L2 && PCI && I2C && EXPERIMENTAL |
4 | select FW_LOADER | 4 | select FW_LOADER |
5 | select VIDEO_TUNER | 5 | select VIDEO_TUNER |
6 | select VIDEO_TVEEPROM | 6 | select VIDEO_TVEEPROM |
diff --git a/drivers/media/video/ivtv/ivtv-driver.h b/drivers/media/video/ivtv/ivtv-driver.h index 9a412d6c6d06..552f04511ead 100644 --- a/drivers/media/video/ivtv/ivtv-driver.h +++ b/drivers/media/video/ivtv/ivtv-driver.h | |||
@@ -67,14 +67,6 @@ | |||
67 | 67 | ||
68 | #include <media/ivtv.h> | 68 | #include <media/ivtv.h> |
69 | 69 | ||
70 | #ifdef CONFIG_LIRC_I2C | ||
71 | # error "This driver is not compatible with the LIRC I2C kernel configuration option." | ||
72 | #endif /* CONFIG_LIRC_I2C */ | ||
73 | |||
74 | #ifndef CONFIG_PCI | ||
75 | # error "This driver requires kernel PCI support." | ||
76 | #endif /* CONFIG_PCI */ | ||
77 | |||
78 | #define IVTV_ENCODER_OFFSET 0x00000000 | 70 | #define IVTV_ENCODER_OFFSET 0x00000000 |
79 | #define IVTV_ENCODER_SIZE 0x00800000 /* Last half isn't needed 0x01000000 */ | 71 | #define IVTV_ENCODER_SIZE 0x00800000 /* Last half isn't needed 0x01000000 */ |
80 | 72 | ||
diff --git a/drivers/media/video/ivtv/ivtv-ioctl.c b/drivers/media/video/ivtv/ivtv-ioctl.c index 794a6a02f82f..1989ec1cb973 100644 --- a/drivers/media/video/ivtv/ivtv-ioctl.c +++ b/drivers/media/video/ivtv/ivtv-ioctl.c | |||
@@ -362,8 +362,6 @@ static int ivtv_get_fmt(struct ivtv *itv, int streamtype, struct v4l2_format *fm | |||
362 | case V4L2_BUF_TYPE_VIDEO_OUTPUT: | 362 | case V4L2_BUF_TYPE_VIDEO_OUTPUT: |
363 | if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) | 363 | if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) |
364 | return -EINVAL; | 364 | return -EINVAL; |
365 | fmt->fmt.pix.left = itv->main_rect.left; | ||
366 | fmt->fmt.pix.top = itv->main_rect.top; | ||
367 | fmt->fmt.pix.width = itv->main_rect.width; | 365 | fmt->fmt.pix.width = itv->main_rect.width; |
368 | fmt->fmt.pix.height = itv->main_rect.height; | 366 | fmt->fmt.pix.height = itv->main_rect.height; |
369 | fmt->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; | 367 | fmt->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; |
@@ -402,8 +400,6 @@ static int ivtv_get_fmt(struct ivtv *itv, int streamtype, struct v4l2_format *fm | |||
402 | break; | 400 | break; |
403 | 401 | ||
404 | case V4L2_BUF_TYPE_VIDEO_CAPTURE: | 402 | case V4L2_BUF_TYPE_VIDEO_CAPTURE: |
405 | fmt->fmt.pix.left = 0; | ||
406 | fmt->fmt.pix.top = 0; | ||
407 | fmt->fmt.pix.width = itv->params.width; | 403 | fmt->fmt.pix.width = itv->params.width; |
408 | fmt->fmt.pix.height = itv->params.height; | 404 | fmt->fmt.pix.height = itv->params.height; |
409 | fmt->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; | 405 | fmt->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; |
@@ -498,15 +494,13 @@ static int ivtv_try_or_set_fmt(struct ivtv *itv, int streamtype, | |||
498 | if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) | 494 | if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) |
499 | return -EINVAL; | 495 | return -EINVAL; |
500 | field = fmt->fmt.pix.field; | 496 | field = fmt->fmt.pix.field; |
501 | r.top = fmt->fmt.pix.top; | 497 | r.top = 0; |
502 | r.left = fmt->fmt.pix.left; | 498 | r.left = 0; |
503 | r.width = fmt->fmt.pix.width; | 499 | r.width = fmt->fmt.pix.width; |
504 | r.height = fmt->fmt.pix.height; | 500 | r.height = fmt->fmt.pix.height; |
505 | ivtv_get_fmt(itv, streamtype, fmt); | 501 | ivtv_get_fmt(itv, streamtype, fmt); |
506 | if (itv->output_mode != OUT_UDMA_YUV) { | 502 | if (itv->output_mode != OUT_UDMA_YUV) { |
507 | /* TODO: would setting the rect also be valid for this mode? */ | 503 | /* TODO: would setting the rect also be valid for this mode? */ |
508 | fmt->fmt.pix.top = r.top; | ||
509 | fmt->fmt.pix.left = r.left; | ||
510 | fmt->fmt.pix.width = r.width; | 504 | fmt->fmt.pix.width = r.width; |
511 | fmt->fmt.pix.height = r.height; | 505 | fmt->fmt.pix.height = r.height; |
512 | } | 506 | } |
@@ -1141,8 +1135,6 @@ int ivtv_v4l2_ioctls(struct ivtv *itv, struct file *filp, unsigned int cmd, void | |||
1141 | fb->fmt.pixelformat = itv->osd_pixelformat; | 1135 | fb->fmt.pixelformat = itv->osd_pixelformat; |
1142 | fb->fmt.width = itv->osd_rect.width; | 1136 | fb->fmt.width = itv->osd_rect.width; |
1143 | fb->fmt.height = itv->osd_rect.height; | 1137 | fb->fmt.height = itv->osd_rect.height; |
1144 | fb->fmt.left = itv->osd_rect.left; | ||
1145 | fb->fmt.top = itv->osd_rect.top; | ||
1146 | fb->base = (void *)itv->osd_video_pbase; | 1138 | fb->base = (void *)itv->osd_video_pbase; |
1147 | if (itv->osd_global_alpha_state) | 1139 | if (itv->osd_global_alpha_state) |
1148 | fb->flags |= V4L2_FBUF_FLAG_GLOBAL_ALPHA; | 1140 | fb->flags |= V4L2_FBUF_FLAG_GLOBAL_ALPHA; |
diff --git a/drivers/media/video/ov7670.c b/drivers/media/video/ov7670.c index 03bc369a9e49..3ceb8a6249dd 100644 --- a/drivers/media/video/ov7670.c +++ b/drivers/media/video/ov7670.c | |||
@@ -720,12 +720,22 @@ static int ov7670_s_fmt(struct i2c_client *c, struct v4l2_format *fmt) | |||
720 | struct ov7670_format_struct *ovfmt; | 720 | struct ov7670_format_struct *ovfmt; |
721 | struct ov7670_win_size *wsize; | 721 | struct ov7670_win_size *wsize; |
722 | struct ov7670_info *info = i2c_get_clientdata(c); | 722 | struct ov7670_info *info = i2c_get_clientdata(c); |
723 | unsigned char com7; | 723 | unsigned char com7, clkrc; |
724 | 724 | ||
725 | ret = ov7670_try_fmt(c, fmt, &ovfmt, &wsize); | 725 | ret = ov7670_try_fmt(c, fmt, &ovfmt, &wsize); |
726 | if (ret) | 726 | if (ret) |
727 | return ret; | 727 | return ret; |
728 | /* | 728 | /* |
729 | * HACK: if we're running rgb565 we need to grab then rewrite | ||
730 | * CLKRC. If we're *not*, however, then rewriting clkrc hoses | ||
731 | * the colors. | ||
732 | */ | ||
733 | if (fmt->fmt.pix.pixelformat == V4L2_PIX_FMT_RGB565) { | ||
734 | ret = ov7670_read(c, REG_CLKRC, &clkrc); | ||
735 | if (ret) | ||
736 | return ret; | ||
737 | } | ||
738 | /* | ||
729 | * COM7 is a pain in the ass, it doesn't like to be read then | 739 | * COM7 is a pain in the ass, it doesn't like to be read then |
730 | * quickly written afterward. But we have everything we need | 740 | * quickly written afterward. But we have everything we need |
731 | * to set it absolutely here, as long as the format-specific | 741 | * to set it absolutely here, as long as the format-specific |
@@ -744,7 +754,10 @@ static int ov7670_s_fmt(struct i2c_client *c, struct v4l2_format *fmt) | |||
744 | if (wsize->regs) | 754 | if (wsize->regs) |
745 | ret = ov7670_write_array(c, wsize->regs); | 755 | ret = ov7670_write_array(c, wsize->regs); |
746 | info->fmt = ovfmt; | 756 | info->fmt = ovfmt; |
747 | return 0; | 757 | |
758 | if (fmt->fmt.pix.pixelformat == V4L2_PIX_FMT_RGB565 && ret == 0) | ||
759 | ret = ov7670_write(c, REG_CLKRC, clkrc); | ||
760 | return ret; | ||
748 | } | 761 | } |
749 | 762 | ||
750 | /* | 763 | /* |
@@ -1267,7 +1280,9 @@ static int ov7670_attach(struct i2c_adapter *adapter) | |||
1267 | ret = ov7670_detect(client); | 1280 | ret = ov7670_detect(client); |
1268 | if (ret) | 1281 | if (ret) |
1269 | goto out_free_info; | 1282 | goto out_free_info; |
1270 | i2c_attach_client(client); | 1283 | ret = i2c_attach_client(client); |
1284 | if (ret) | ||
1285 | goto out_free_info; | ||
1271 | return 0; | 1286 | return 0; |
1272 | 1287 | ||
1273 | out_free_info: | 1288 | out_free_info: |
diff --git a/drivers/media/video/tuner-simple.c b/drivers/media/video/tuner-simple.c index 1b9b0742f753..c40b92ce1fad 100644 --- a/drivers/media/video/tuner-simple.c +++ b/drivers/media/video/tuner-simple.c | |||
@@ -205,9 +205,13 @@ static void default_set_tv_freq(struct i2c_client *c, unsigned int freq) | |||
205 | /* 0x01 -> ??? no change ??? */ | 205 | /* 0x01 -> ??? no change ??? */ |
206 | /* 0x02 -> PAL BDGHI / SECAM L */ | 206 | /* 0x02 -> PAL BDGHI / SECAM L */ |
207 | /* 0x04 -> ??? PAL others / SECAM others ??? */ | 207 | /* 0x04 -> ??? PAL others / SECAM others ??? */ |
208 | cb &= ~0x02; | 208 | cb &= ~0x03; |
209 | if (t->std & V4L2_STD_SECAM) | 209 | if (t->std & V4L2_STD_SECAM_L) //also valid for V4L2_STD_SECAM |
210 | cb |= 0x02; | 210 | cb |= PHILIPS_MF_SET_PAL_L; |
211 | else if (t->std & V4L2_STD_SECAM_LC) | ||
212 | cb |= PHILIPS_MF_SET_PAL_L2; | ||
213 | else /* V4L2_STD_B|V4L2_STD_GH */ | ||
214 | cb |= PHILIPS_MF_SET_BG; | ||
211 | break; | 215 | break; |
212 | 216 | ||
213 | case TUNER_TEMIC_4046FM5: | 217 | case TUNER_TEMIC_4046FM5: |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index a25c2afa67e1..e7560389079c 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
@@ -267,8 +267,6 @@ struct v4l2_pix_format | |||
267 | __u32 sizeimage; | 267 | __u32 sizeimage; |
268 | enum v4l2_colorspace colorspace; | 268 | enum v4l2_colorspace colorspace; |
269 | __u32 priv; /* private data, depends on pixelformat */ | 269 | __u32 priv; /* private data, depends on pixelformat */ |
270 | __u32 left; /* only valid if V4L2_CAP_VIDEO_OUTPUT_POS is set */ | ||
271 | __u32 top; /* only valid if V4L2_CAP_VIDEO_OUTPUT_POS is set */ | ||
272 | }; | 270 | }; |
273 | 271 | ||
274 | /* Pixel format FOURCC depth Description */ | 272 | /* Pixel format FOURCC depth Description */ |