diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-03-20 12:48:15 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-03-20 12:48:15 -0400 |
| commit | ba422428295f19a3eef072b47c83202492ccab2f (patch) | |
| tree | 0274adabf02ffa2f2c02407733ae39f14c66ff39 | |
| parent | aedb60a67c10a0861af179725d060765262ba0fb (diff) | |
| parent | eee4470f197cfe88fd8aa871e9227b7033495b67 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
* git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
V4L/DVB (7367): bug #10211: Fix depencencies for cx2341x
V4L/DVB (7362): tvp5150.c: logical-bitwise and confusion
V4L/DVB (7334): usb video: add a device link to usbvideo devices, else hal will ignore them
V4L/DVB (7330): V4L1 - fix v4l_compat_translate_ioctl possible NULL deref
V4L/DVB (7328): usb/opera1.c: fix a memory leak
V4L/DVB (7291): em28xx: correct use of and fix
V4L/DVB (7285): em28xx: Correct use of ! and &
V4L/DVB (7279): ivtv: Add missing sg_init_table()
V4L/DVB (7268): saa7134: fix: tuner should be loaded before calling saa7134_board_init2()
V4L/DVB (7267): cx88: Fix: Loads tuner module before sending commands to it
V4L/DVB (7251): VIDEO_VIVI must depend on VIDEO_DEV
V4L/DVB (7242): ivtv: fix for yuv filter table check
V4L/DVB (7236): bttv: struct member initialized twice
V4L/DVB (7228): saa7134: fix FM radio support for the Pinnacle PCTV 110i
| -rw-r--r-- | drivers/media/dvb/dvb-usb/opera1.c | 2 | ||||
| -rw-r--r-- | drivers/media/video/Kconfig | 4 | ||||
| -rw-r--r-- | drivers/media/video/bt8xx/bttv-driver.c | 1 | ||||
| -rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 5 | ||||
| -rw-r--r-- | drivers/media/video/cx88/cx88-video.c | 2 | ||||
| -rw-r--r-- | drivers/media/video/em28xx/em28xx-core.c | 2 | ||||
| -rw-r--r-- | drivers/media/video/ivtv/ivtv-driver.c | 7 | ||||
| -rw-r--r-- | drivers/media/video/ivtv/ivtv-firmware.c | 8 | ||||
| -rw-r--r-- | drivers/media/video/saa7134/saa7134-cards.c | 41 | ||||
| -rw-r--r-- | drivers/media/video/saa7134/saa7134-core.c | 5 | ||||
| -rw-r--r-- | drivers/media/video/tvp5150.c | 4 | ||||
| -rw-r--r-- | drivers/media/video/usbvideo/usbvideo.c | 9 | ||||
| -rw-r--r-- | drivers/media/video/v4l1-compat.c | 50 |
13 files changed, 90 insertions, 50 deletions
diff --git a/drivers/media/dvb/dvb-usb/opera1.c b/drivers/media/dvb/dvb-usb/opera1.c index 21935bf7059e..302cc67407c3 100644 --- a/drivers/media/dvb/dvb-usb/opera1.c +++ b/drivers/media/dvb/dvb-usb/opera1.c | |||
| @@ -478,9 +478,9 @@ static int opera1_xilinx_load_firmware(struct usb_device *dev, | |||
| 478 | err("could not restart the USB controller CPU."); | 478 | err("could not restart the USB controller CPU."); |
| 479 | ret = -EINVAL; | 479 | ret = -EINVAL; |
| 480 | } | 480 | } |
| 481 | kfree(p); | ||
| 482 | } | 481 | } |
| 483 | } | 482 | } |
| 483 | kfree(p); | ||
| 484 | if (fw) { | 484 | if (fw) { |
| 485 | release_firmware(fw); | 485 | release_firmware(fw); |
| 486 | } | 486 | } |
diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig index 37072a21d8c9..1832966f53f3 100644 --- a/drivers/media/video/Kconfig +++ b/drivers/media/video/Kconfig | |||
| @@ -305,7 +305,7 @@ comment "MPEG video encoders" | |||
| 305 | 305 | ||
| 306 | config VIDEO_CX2341X | 306 | config VIDEO_CX2341X |
| 307 | tristate "Conexant CX2341x MPEG encoders" | 307 | tristate "Conexant CX2341x MPEG encoders" |
| 308 | depends on VIDEO_V4L2 && EXPERIMENTAL | 308 | depends on VIDEO_V4L2 && EXPERIMENTAL && VIDEO_V4L2_COMMON |
| 309 | ---help--- | 309 | ---help--- |
| 310 | Support for the Conexant CX23416 MPEG encoders | 310 | Support for the Conexant CX23416 MPEG encoders |
| 311 | and CX23415 MPEG encoder/decoders. | 311 | and CX23415 MPEG encoder/decoders. |
| @@ -382,7 +382,7 @@ endmenu # encoder / decoder chips | |||
| 382 | 382 | ||
| 383 | config VIDEO_VIVI | 383 | config VIDEO_VIVI |
| 384 | tristate "Virtual Video Driver" | 384 | tristate "Virtual Video Driver" |
| 385 | depends on VIDEO_V4L2 && !SPARC32 && !SPARC64 | 385 | depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64 |
| 386 | select VIDEOBUF_VMALLOC | 386 | select VIDEOBUF_VMALLOC |
| 387 | default n | 387 | default n |
| 388 | ---help--- | 388 | ---help--- |
diff --git a/drivers/media/video/bt8xx/bttv-driver.c b/drivers/media/video/bt8xx/bttv-driver.c index 5404fcc5276d..a080c149cc6c 100644 --- a/drivers/media/video/bt8xx/bttv-driver.c +++ b/drivers/media/video/bt8xx/bttv-driver.c | |||
| @@ -3389,7 +3389,6 @@ static struct video_device bttv_video_template = | |||
| 3389 | .vidiocgmbuf = vidiocgmbuf, | 3389 | .vidiocgmbuf = vidiocgmbuf, |
| 3390 | #endif | 3390 | #endif |
| 3391 | .vidioc_g_crop = bttv_g_crop, | 3391 | .vidioc_g_crop = bttv_g_crop, |
| 3392 | .vidioc_g_crop = bttv_g_crop, | ||
| 3393 | .vidioc_s_crop = bttv_s_crop, | 3392 | .vidioc_s_crop = bttv_s_crop, |
| 3394 | .vidioc_g_fbuf = bttv_g_fbuf, | 3393 | .vidioc_g_fbuf = bttv_g_fbuf, |
| 3395 | .vidioc_s_fbuf = bttv_s_fbuf, | 3394 | .vidioc_s_fbuf = bttv_s_fbuf, |
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index e6b7f518c56e..8c9a8adf52de 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
| @@ -2196,6 +2196,11 @@ struct cx88_core *cx88_core_create(struct pci_dev *pci, int nr) | |||
| 2196 | cx88_reset(core); | 2196 | cx88_reset(core); |
| 2197 | cx88_card_setup_pre_i2c(core); | 2197 | cx88_card_setup_pre_i2c(core); |
| 2198 | cx88_i2c_init(core, pci); | 2198 | cx88_i2c_init(core, pci); |
| 2199 | |||
| 2200 | /* load tuner module, if needed */ | ||
| 2201 | if (TUNER_ABSENT != core->board.tuner_type) | ||
| 2202 | request_module("tuner"); | ||
| 2203 | |||
| 2199 | cx88_call_i2c_clients (core, TUNER_SET_STANDBY, NULL); | 2204 | cx88_call_i2c_clients (core, TUNER_SET_STANDBY, NULL); |
| 2200 | cx88_card_setup(core); | 2205 | cx88_card_setup(core); |
| 2201 | cx88_ir_init(core, pci); | 2206 | cx88_ir_init(core, pci); |
diff --git a/drivers/media/video/cx88/cx88-video.c b/drivers/media/video/cx88/cx88-video.c index 7f1931aed207..227179620d13 100644 --- a/drivers/media/video/cx88/cx88-video.c +++ b/drivers/media/video/cx88/cx88-video.c | |||
| @@ -1826,8 +1826,6 @@ static int __devinit cx8800_initdev(struct pci_dev *pci_dev, | |||
| 1826 | cx_set(MO_PCI_INTMSK, core->pci_irqmask); | 1826 | cx_set(MO_PCI_INTMSK, core->pci_irqmask); |
| 1827 | 1827 | ||
| 1828 | /* load and configure helper modules */ | 1828 | /* load and configure helper modules */ |
| 1829 | if (TUNER_ABSENT != core->board.tuner_type) | ||
| 1830 | request_module("tuner"); | ||
| 1831 | 1829 | ||
| 1832 | if (core->board.audio_chip == AUDIO_CHIP_WM8775) | 1830 | if (core->board.audio_chip == AUDIO_CHIP_WM8775) |
| 1833 | request_module("wm8775"); | 1831 | request_module("wm8775"); |
diff --git a/drivers/media/video/em28xx/em28xx-core.c b/drivers/media/video/em28xx/em28xx-core.c index 7d1537cab867..c1caaa855b99 100644 --- a/drivers/media/video/em28xx/em28xx-core.c +++ b/drivers/media/video/em28xx/em28xx-core.c | |||
| @@ -267,7 +267,7 @@ static int em28xx_write_ac97(struct em28xx *dev, u8 reg, u8 *val) | |||
| 267 | for (i = 0; i < 10; i++) { | 267 | for (i = 0; i < 10; i++) { |
| 268 | if ((ret = em28xx_read_reg(dev, AC97BUSY_REG)) < 0) | 268 | if ((ret = em28xx_read_reg(dev, AC97BUSY_REG)) < 0) |
| 269 | return ret; | 269 | return ret; |
| 270 | if (!((u8) ret) & 0x01) | 270 | if (!(ret & 0x01)) |
| 271 | return 0; | 271 | return 0; |
| 272 | msleep(5); | 272 | msleep(5); |
| 273 | } | 273 | } |
diff --git a/drivers/media/video/ivtv/ivtv-driver.c b/drivers/media/video/ivtv/ivtv-driver.c index d42f120354e5..948ca35e7ee8 100644 --- a/drivers/media/video/ivtv/ivtv-driver.c +++ b/drivers/media/video/ivtv/ivtv-driver.c | |||
| @@ -54,7 +54,6 @@ | |||
| 54 | #include "ivtv-vbi.h" | 54 | #include "ivtv-vbi.h" |
| 55 | #include "ivtv-routing.h" | 55 | #include "ivtv-routing.h" |
| 56 | #include "ivtv-gpio.h" | 56 | #include "ivtv-gpio.h" |
| 57 | #include "ivtv-yuv.h" | ||
| 58 | 57 | ||
| 59 | #include <media/tveeprom.h> | 58 | #include <media/tveeprom.h> |
| 60 | #include <media/saa7115.h> | 59 | #include <media/saa7115.h> |
| @@ -700,6 +699,9 @@ static int __devinit ivtv_init_struct1(struct ivtv *itv) | |||
| 700 | itv->vbi.in.type = V4L2_BUF_TYPE_SLICED_VBI_CAPTURE; | 699 | itv->vbi.in.type = V4L2_BUF_TYPE_SLICED_VBI_CAPTURE; |
| 701 | itv->vbi.sliced_in = &itv->vbi.in.fmt.sliced; | 700 | itv->vbi.sliced_in = &itv->vbi.in.fmt.sliced; |
| 702 | 701 | ||
| 702 | /* Init the sg table for osd/yuv output */ | ||
| 703 | sg_init_table(itv->udma.SGlist, IVTV_DMA_SG_OSD_ENT); | ||
| 704 | |||
| 703 | /* OSD */ | 705 | /* OSD */ |
| 704 | itv->osd_global_alpha_state = 1; | 706 | itv->osd_global_alpha_state = 1; |
| 705 | itv->osd_global_alpha = 255; | 707 | itv->osd_global_alpha = 255; |
| @@ -1053,9 +1055,6 @@ static int __devinit ivtv_probe(struct pci_dev *dev, | |||
| 1053 | goto free_io; | 1055 | goto free_io; |
| 1054 | } | 1056 | } |
| 1055 | 1057 | ||
| 1056 | /* Check yuv output filter table */ | ||
| 1057 | if (itv->has_cx23415) ivtv_yuv_filter_check(itv); | ||
| 1058 | |||
| 1059 | ivtv_gpio_init(itv); | 1058 | ivtv_gpio_init(itv); |
| 1060 | 1059 | ||
| 1061 | /* active i2c */ | 1060 | /* active i2c */ |
diff --git a/drivers/media/video/ivtv/ivtv-firmware.c b/drivers/media/video/ivtv/ivtv-firmware.c index 425eb1063904..6dba55b7e25a 100644 --- a/drivers/media/video/ivtv/ivtv-firmware.c +++ b/drivers/media/video/ivtv/ivtv-firmware.c | |||
| @@ -22,6 +22,7 @@ | |||
| 22 | #include "ivtv-driver.h" | 22 | #include "ivtv-driver.h" |
| 23 | #include "ivtv-mailbox.h" | 23 | #include "ivtv-mailbox.h" |
| 24 | #include "ivtv-firmware.h" | 24 | #include "ivtv-firmware.h" |
| 25 | #include "ivtv-yuv.h" | ||
| 25 | #include <linux/firmware.h> | 26 | #include <linux/firmware.h> |
| 26 | 27 | ||
| 27 | #define IVTV_MASK_SPU_ENABLE 0xFFFFFFFE | 28 | #define IVTV_MASK_SPU_ENABLE 0xFFFFFFFE |
| @@ -225,11 +226,14 @@ int ivtv_firmware_init(struct ivtv *itv) | |||
| 225 | return 0; | 226 | return 0; |
| 226 | 227 | ||
| 227 | itv->dec_mbox.mbox = ivtv_search_mailbox(itv->dec_mem, IVTV_DECODER_SIZE); | 228 | itv->dec_mbox.mbox = ivtv_search_mailbox(itv->dec_mem, IVTV_DECODER_SIZE); |
| 228 | if (itv->dec_mbox.mbox == NULL) | 229 | if (itv->dec_mbox.mbox == NULL) { |
| 229 | IVTV_ERR("Decoder mailbox not found\n"); | 230 | IVTV_ERR("Decoder mailbox not found\n"); |
| 230 | else if (itv->has_cx23415 && ivtv_vapi(itv, CX2341X_DEC_PING_FW, 0)) { | 231 | } else if (itv->has_cx23415 && ivtv_vapi(itv, CX2341X_DEC_PING_FW, 0)) { |
| 231 | IVTV_ERR("Decoder firmware dead!\n"); | 232 | IVTV_ERR("Decoder firmware dead!\n"); |
| 232 | itv->dec_mbox.mbox = NULL; | ||
