diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2012-11-21 05:38:13 -0500 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2012-11-21 05:38:13 -0500 |
commit | 851462444d421c223965b12b836bef63da61b57f (patch) | |
tree | 495baa14e638817941496c36e1443aed7dae0ea0 /drivers/media/usb | |
parent | 5a6ea4af0907f995dc06df21a9c9ef764c7cd3bc (diff) | |
parent | 6924d99fcdf1a688538a3cdebd1f135c22eec191 (diff) |
Merge branch 'for-3.7' of git://git.infradead.org/users/dedekind/l2-mtd
Conflicts:
drivers/mtd/nand/nand_base.c
Diffstat (limited to 'drivers/media/usb')
-rw-r--r-- | drivers/media/usb/dvb-usb-v2/af9015.c | 4 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb-v2/af9035.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/a800.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/cinergyT2-core.c | 3 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/dibusb-common.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/digitv.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/dtt200u.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/m920x.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/dvb-usb/technisat-usb2.c | 1 | ||||
-rw-r--r-- | drivers/media/usb/em28xx/em28xx-cards.c | 2 | ||||
-rw-r--r-- | drivers/media/usb/em28xx/em28xx-dvb.c | 13 | ||||
-rw-r--r-- | drivers/media/usb/stk1160/stk1160-core.c | 15 | ||||
-rw-r--r-- | drivers/media/usb/stk1160/stk1160-v4l.c | 7 | ||||
-rw-r--r-- | drivers/media/usb/stk1160/stk1160.h | 3 | ||||
-rw-r--r-- | drivers/media/usb/uvc/uvc_queue.c | 10 | ||||
-rw-r--r-- | drivers/media/usb/uvc/uvc_video.c | 4 | ||||
-rw-r--r-- | drivers/media/usb/uvc/uvcvideo.h | 2 |
17 files changed, 49 insertions, 27 deletions
diff --git a/drivers/media/usb/dvb-usb-v2/af9015.c b/drivers/media/usb/dvb-usb-v2/af9015.c index 824f1911ee21..3d7526e28d42 100644 --- a/drivers/media/usb/dvb-usb-v2/af9015.c +++ b/drivers/media/usb/dvb-usb-v2/af9015.c | |||
@@ -500,7 +500,7 @@ static int af9015_read_config(struct dvb_usb_device *d) | |||
500 | case 3: | 500 | case 3: |
501 | state->af9013_config[i].clock = 25000000; | 501 | state->af9013_config[i].clock = 25000000; |
502 | break; | 502 | break; |
503 | }; | 503 | } |
504 | dev_dbg(&d->udev->dev, "%s: [%d] xtal=%d set clock=%d\n", | 504 | dev_dbg(&d->udev->dev, "%s: [%d] xtal=%d set clock=%d\n", |
505 | __func__, i, val, | 505 | __func__, i, val, |
506 | state->af9013_config[i].clock); | 506 | state->af9013_config[i].clock); |
@@ -568,7 +568,7 @@ static int af9015_read_config(struct dvb_usb_device *d) | |||
568 | "supported, please report!\n", | 568 | "supported, please report!\n", |
569 | KBUILD_MODNAME, val); | 569 | KBUILD_MODNAME, val); |
570 | return -ENODEV; | 570 | return -ENODEV; |
571 | }; | 571 | } |
572 | 572 | ||
573 | state->af9013_config[i].tuner = val; | 573 | state->af9013_config[i].tuner = val; |
574 | dev_dbg(&d->udev->dev, "%s: [%d] tuner id=%d\n", | 574 | dev_dbg(&d->udev->dev, "%s: [%d] tuner id=%d\n", |
diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c index aabd3fc03ea7..ea27eaff4e34 100644 --- a/drivers/media/usb/dvb-usb-v2/af9035.c +++ b/drivers/media/usb/dvb-usb-v2/af9035.c | |||
@@ -520,7 +520,7 @@ static int af9035_read_config(struct dvb_usb_device *d) | |||
520 | dev_warn(&d->udev->dev, "%s: tuner id=%02x not " \ | 520 | dev_warn(&d->udev->dev, "%s: tuner id=%02x not " \ |
521 | "supported, please report!", | 521 | "supported, please report!", |
522 | KBUILD_MODNAME, tmp); | 522 | KBUILD_MODNAME, tmp); |
523 | }; | 523 | } |
524 | 524 | ||
525 | /* tuner IF frequency */ | 525 | /* tuner IF frequency */ |
526 | ret = af9035_rd_reg(d, EEPROM_1_IFFREQ_L + eeprom_shift, &tmp); | 526 | ret = af9035_rd_reg(d, EEPROM_1_IFFREQ_L + eeprom_shift, &tmp); |
diff --git a/drivers/media/usb/dvb-usb/a800.c b/drivers/media/usb/dvb-usb/a800.c index 8d7fef84afd8..83684ed023cd 100644 --- a/drivers/media/usb/dvb-usb/a800.c +++ b/drivers/media/usb/dvb-usb/a800.c | |||
@@ -93,7 +93,7 @@ static int a800_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
93 | /* call the universal NEC remote processor, to find out the key's state and event */ | 93 | /* call the universal NEC remote processor, to find out the key's state and event */ |
94 | dvb_usb_nec_rc_key_to_event(d,key,event,state); | 94 | dvb_usb_nec_rc_key_to_event(d,key,event,state); |
95 | if (key[0] != 0) | 95 | if (key[0] != 0) |
96 | deb_rc("key: %x %x %x %x %x\n",key[0],key[1],key[2],key[3],key[4]); | 96 | deb_rc("key: %*ph\n", 5, key); |
97 | ret = 0; | 97 | ret = 0; |
98 | out: | 98 | out: |
99 | kfree(key); | 99 | kfree(key); |
diff --git a/drivers/media/usb/dvb-usb/cinergyT2-core.c b/drivers/media/usb/dvb-usb/cinergyT2-core.c index 0a98548ecd17..9fd1527494eb 100644 --- a/drivers/media/usb/dvb-usb/cinergyT2-core.c +++ b/drivers/media/usb/dvb-usb/cinergyT2-core.c | |||
@@ -172,8 +172,7 @@ static int cinergyt2_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
172 | if (*event != d->last_event) | 172 | if (*event != d->last_event) |
173 | st->rc_counter = 0; | 173 | st->rc_counter = 0; |
174 | 174 | ||
175 | deb_rc("key: %x %x %x %x %x\n", | 175 | deb_rc("key: %*ph\n", 5, key); |
176 | key[0], key[1], key[2], key[3], key[4]); | ||
177 | } | 176 | } |
178 | return 0; | 177 | return 0; |
179 | } | 178 | } |
diff --git a/drivers/media/usb/dvb-usb/dibusb-common.c b/drivers/media/usb/dvb-usb/dibusb-common.c index a76bbb29ca36..af0d4321845b 100644 --- a/drivers/media/usb/dvb-usb/dibusb-common.c +++ b/drivers/media/usb/dvb-usb/dibusb-common.c | |||
@@ -473,7 +473,7 @@ int dibusb_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
473 | dvb_usb_generic_rw(d,&cmd,1,key,5,0); | 473 | dvb_usb_generic_rw(d,&cmd,1,key,5,0); |
474 | dvb_usb_nec_rc_key_to_event(d,key,event,state); | 474 | dvb_usb_nec_rc_key_to_event(d,key,event,state); |
475 | if (key[0] != 0) | 475 | if (key[0] != 0) |
476 | deb_info("key: %x %x %x %x %x\n",key[0],key[1],key[2],key[3],key[4]); | 476 | deb_info("key: %*ph\n", 5, key); |
477 | return 0; | 477 | return 0; |
478 | } | 478 | } |
479 | EXPORT_SYMBOL(dibusb_rc_query); | 479 | EXPORT_SYMBOL(dibusb_rc_query); |
diff --git a/drivers/media/usb/dvb-usb/digitv.c b/drivers/media/usb/dvb-usb/digitv.c index ff34419a4c88..772bde3c5020 100644 --- a/drivers/media/usb/dvb-usb/digitv.c +++ b/drivers/media/usb/dvb-usb/digitv.c | |||
@@ -253,7 +253,7 @@ static int digitv_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
253 | } | 253 | } |
254 | 254 | ||
255 | if (key[0] != 0) | 255 | if (key[0] != 0) |
256 | deb_rc("key: %x %x %x %x %x\n",key[0],key[1],key[2],key[3],key[4]); | 256 | deb_rc("key: %*ph\n", 5, key); |
257 | return 0; | 257 | return 0; |
258 | } | 258 | } |
259 | 259 | ||
diff --git a/drivers/media/usb/dvb-usb/dtt200u.c b/drivers/media/usb/dvb-usb/dtt200u.c index 66f205c112b2..c357fb3b0a88 100644 --- a/drivers/media/usb/dvb-usb/dtt200u.c +++ b/drivers/media/usb/dvb-usb/dtt200u.c | |||
@@ -84,7 +84,7 @@ static int dtt200u_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
84 | dvb_usb_generic_rw(d,&cmd,1,key,5,0); | 84 | dvb_usb_generic_rw(d,&cmd,1,key,5,0); |
85 | dvb_usb_nec_rc_key_to_event(d,key,event,state); | 85 | dvb_usb_nec_rc_key_to_event(d,key,event,state); |
86 | if (key[0] != 0) | 86 | if (key[0] != 0) |
87 | deb_info("key: %x %x %x %x %x\n",key[0],key[1],key[2],key[3],key[4]); | 87 | deb_info("key: %*ph\n", 5, key); |
88 | return 0; | 88 | return 0; |
89 | } | 89 | } |
90 | 90 | ||
diff --git a/drivers/media/usb/dvb-usb/m920x.c b/drivers/media/usb/dvb-usb/m920x.c index 288af29a8bb7..661bb75be955 100644 --- a/drivers/media/usb/dvb-usb/m920x.c +++ b/drivers/media/usb/dvb-usb/m920x.c | |||
@@ -358,7 +358,7 @@ static int m920x_firmware_download(struct usb_device *udev, const struct firmwar | |||
358 | 358 | ||
359 | if ((ret = m920x_read(udev, M9206_FILTER, 0x0, 0x8000, read, 4)) != 0) | 359 | if ((ret = m920x_read(udev, M9206_FILTER, 0x0, 0x8000, read, 4)) != 0) |
360 | goto done; | 360 | goto done; |
361 | deb("%x %x %x %x\n", read[0], read[1], read[2], read[3]); | 361 | deb("%*ph\n", 4, read); |
362 | 362 | ||
363 | if ((ret = m920x_read(udev, M9206_FW, 0x0, 0x0, read, 1)) != 0) | 363 | if ((ret = m920x_read(udev, M9206_FW, 0x0, 0x0, read, 1)) != 0) |
364 | goto done; | 364 | goto done; |
diff --git a/drivers/media/usb/dvb-usb/technisat-usb2.c b/drivers/media/usb/dvb-usb/technisat-usb2.c index acefaa89cc53..7a8c8c18590f 100644 --- a/drivers/media/usb/dvb-usb/technisat-usb2.c +++ b/drivers/media/usb/dvb-usb/technisat-usb2.c | |||
@@ -677,6 +677,7 @@ static struct usb_device_id technisat_usb2_id_table[] = { | |||
677 | { USB_DEVICE(USB_VID_TECHNISAT, USB_PID_TECHNISAT_USB2_DVB_S2) }, | 677 | { USB_DEVICE(USB_VID_TECHNISAT, USB_PID_TECHNISAT_USB2_DVB_S2) }, |
678 | { 0 } /* Terminating entry */ | 678 | { 0 } /* Terminating entry */ |
679 | }; | 679 | }; |
680 | MODULE_DEVICE_TABLE(usb, technisat_usb2_id_table); | ||
680 | 681 | ||
681 | /* device description */ | 682 | /* device description */ |
682 | static struct dvb_usb_device_properties technisat_usb2_devices = { | 683 | static struct dvb_usb_device_properties technisat_usb2_devices = { |
diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c index f7297ae76b48..16a84f9f46d8 100644 --- a/drivers/media/usb/em28xx/em28xx-cards.c +++ b/drivers/media/usb/em28xx/em28xx-cards.c | |||
@@ -2203,7 +2203,7 @@ EXPORT_SYMBOL_GPL(em28xx_tuner_callback); | |||
2203 | 2203 | ||
2204 | static inline void em28xx_set_model(struct em28xx *dev) | 2204 | static inline void em28xx_set_model(struct em28xx *dev) |
2205 | { | 2205 | { |
2206 | memcpy(&dev->board, &em28xx_boards[dev->model], sizeof(dev->board)); | 2206 | dev->board = em28xx_boards[dev->model]; |
2207 | 2207 | ||
2208 | /* Those are the default values for the majority of boards | 2208 | /* Those are the default values for the majority of boards |
2209 | Use those values if not specified otherwise at boards entry | 2209 | Use those values if not specified otherwise at boards entry |
diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c index 913e5227897a..13ae821949e9 100644 --- a/drivers/media/usb/em28xx/em28xx-dvb.c +++ b/drivers/media/usb/em28xx/em28xx-dvb.c | |||
@@ -574,18 +574,19 @@ static void pctv_520e_init(struct em28xx *dev) | |||
574 | i2c_master_send(&dev->i2c_client, regs[i].r, regs[i].len); | 574 | i2c_master_send(&dev->i2c_client, regs[i].r, regs[i].len); |
575 | }; | 575 | }; |
576 | 576 | ||
577 | static int em28xx_pctv_290e_set_lna(struct dvb_frontend *fe, int val) | 577 | static int em28xx_pctv_290e_set_lna(struct dvb_frontend *fe) |
578 | { | 578 | { |
579 | struct dtv_frontend_properties *c = &fe->dtv_property_cache; | ||
579 | struct em28xx *dev = fe->dvb->priv; | 580 | struct em28xx *dev = fe->dvb->priv; |
580 | #ifdef CONFIG_GPIOLIB | 581 | #ifdef CONFIG_GPIOLIB |
581 | struct em28xx_dvb *dvb = dev->dvb; | 582 | struct em28xx_dvb *dvb = dev->dvb; |
582 | int ret; | 583 | int ret; |
583 | unsigned long flags; | 584 | unsigned long flags; |
584 | 585 | ||
585 | if (val) | 586 | if (c->lna == 1) |
586 | flags = GPIOF_OUT_INIT_LOW; | 587 | flags = GPIOF_OUT_INIT_HIGH; /* enable LNA */ |
587 | else | 588 | else |
588 | flags = GPIOF_OUT_INIT_HIGH; | 589 | flags = GPIOF_OUT_INIT_LOW; /* disable LNA */ |
589 | 590 | ||
590 | ret = gpio_request_one(dvb->lna_gpio, flags, NULL); | 591 | ret = gpio_request_one(dvb->lna_gpio, flags, NULL); |
591 | if (ret) | 592 | if (ret) |
@@ -595,8 +596,8 @@ static int em28xx_pctv_290e_set_lna(struct dvb_frontend *fe, int val) | |||
595 | 596 | ||
596 | return ret; | 597 | return ret; |
597 | #else | 598 | #else |
598 | dev_warn(&dev->udev->dev, "%s: LNA control is disabled\n", | 599 | dev_warn(&dev->udev->dev, "%s: LNA control is disabled (lna=%u)\n", |
599 | KBUILD_MODNAME); | 600 | KBUILD_MODNAME, c->lna); |
600 | return 0; | 601 | return 0; |
601 | #endif | 602 | #endif |
602 | } | 603 | } |
diff --git a/drivers/media/usb/stk1160/stk1160-core.c b/drivers/media/usb/stk1160/stk1160-core.c index b62740846061..34a26e0cfe77 100644 --- a/drivers/media/usb/stk1160/stk1160-core.c +++ b/drivers/media/usb/stk1160/stk1160-core.c | |||
@@ -100,12 +100,21 @@ int stk1160_write_reg(struct stk1160 *dev, u16 reg, u16 value) | |||
100 | 100 | ||
101 | void stk1160_select_input(struct stk1160 *dev) | 101 | void stk1160_select_input(struct stk1160 *dev) |
102 | { | 102 | { |
103 | int route; | ||
103 | static const u8 gctrl[] = { | 104 | static const u8 gctrl[] = { |
104 | 0x98, 0x90, 0x88, 0x80 | 105 | 0x98, 0x90, 0x88, 0x80, 0x98 |
105 | }; | 106 | }; |
106 | 107 | ||
107 | if (dev->ctl_input < ARRAY_SIZE(gctrl)) | 108 | if (dev->ctl_input == STK1160_SVIDEO_INPUT) |
109 | route = SAA7115_SVIDEO3; | ||
110 | else | ||
111 | route = SAA7115_COMPOSITE0; | ||
112 | |||
113 | if (dev->ctl_input < ARRAY_SIZE(gctrl)) { | ||
114 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, | ||
115 | route, 0, 0); | ||
108 | stk1160_write_reg(dev, STK1160_GCTRL, gctrl[dev->ctl_input]); | 116 | stk1160_write_reg(dev, STK1160_GCTRL, gctrl[dev->ctl_input]); |
117 | } | ||
109 | } | 118 | } |
110 | 119 | ||
111 | /* TODO: We should break this into pieces */ | 120 | /* TODO: We should break this into pieces */ |
@@ -351,8 +360,6 @@ static int stk1160_probe(struct usb_interface *interface, | |||
351 | 360 | ||
352 | /* i2c reset saa711x */ | 361 | /* i2c reset saa711x */ |
353 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, reset, 0); | 362 | v4l2_device_call_all(&dev->v4l2_dev, 0, core, reset, 0); |
354 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_routing, | ||
355 | 0, 0, 0); | ||
356 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_stream, 0); | 363 | v4l2_device_call_all(&dev->v4l2_dev, 0, video, s_stream, 0); |
357 | 364 | ||
358 | /* reset stk1160 to default values */ | 365 | /* reset stk1160 to default values */ |
diff --git a/drivers/media/usb/stk1160/stk1160-v4l.c b/drivers/media/usb/stk1160/stk1160-v4l.c index fe6e857969ca..6694f9e2ca57 100644 --- a/drivers/media/usb/stk1160/stk1160-v4l.c +++ b/drivers/media/usb/stk1160/stk1160-v4l.c | |||
@@ -419,7 +419,12 @@ static int vidioc_enum_input(struct file *file, void *priv, | |||
419 | if (i->index > STK1160_MAX_INPUT) | 419 | if (i->index > STK1160_MAX_INPUT) |
420 | return -EINVAL; | 420 | return -EINVAL; |
421 | 421 | ||
422 | sprintf(i->name, "Composite%d", i->index); | 422 | /* S-Video special handling */ |
423 | if (i->index == STK1160_SVIDEO_INPUT) | ||
424 | sprintf(i->name, "S-Video"); | ||
425 | else | ||
426 | sprintf(i->name, "Composite%d", i->index); | ||
427 | |||
423 | i->type = V4L2_INPUT_TYPE_CAMERA; | 428 | i->type = V4L2_INPUT_TYPE_CAMERA; |
424 | i->std = dev->vdev.tvnorms; | 429 | i->std = dev->vdev.tvnorms; |
425 | return 0; | 430 | return 0; |
diff --git a/drivers/media/usb/stk1160/stk1160.h b/drivers/media/usb/stk1160/stk1160.h index 3feba0033f98..68c8707d36ab 100644 --- a/drivers/media/usb/stk1160/stk1160.h +++ b/drivers/media/usb/stk1160/stk1160.h | |||
@@ -46,7 +46,8 @@ | |||
46 | 46 | ||
47 | #define STK1160_MIN_PKT_SIZE 3072 | 47 | #define STK1160_MIN_PKT_SIZE 3072 |
48 | 48 | ||
49 | #define STK1160_MAX_INPUT 3 | 49 | #define STK1160_MAX_INPUT 4 |
50 | #define STK1160_SVIDEO_INPUT 4 | ||
50 | 51 | ||
51 | #define STK1160_I2C_TIMEOUT 100 | 52 | #define STK1160_I2C_TIMEOUT 100 |
52 | 53 | ||
diff --git a/drivers/media/usb/uvc/uvc_queue.c b/drivers/media/usb/uvc/uvc_queue.c index 5577381b5bf0..18a91fae6bc1 100644 --- a/drivers/media/usb/uvc/uvc_queue.c +++ b/drivers/media/usb/uvc/uvc_queue.c | |||
@@ -122,21 +122,27 @@ static struct vb2_ops uvc_queue_qops = { | |||
122 | .buf_finish = uvc_buffer_finish, | 122 | .buf_finish = uvc_buffer_finish, |
123 | }; | 123 | }; |
124 | 124 | ||
125 | void uvc_queue_init(struct uvc_video_queue *queue, enum v4l2_buf_type type, | 125 | int uvc_queue_init(struct uvc_video_queue *queue, enum v4l2_buf_type type, |
126 | int drop_corrupted) | 126 | int drop_corrupted) |
127 | { | 127 | { |
128 | int ret; | ||
129 | |||
128 | queue->queue.type = type; | 130 | queue->queue.type = type; |
129 | queue->queue.io_modes = VB2_MMAP | VB2_USERPTR; | 131 | queue->queue.io_modes = VB2_MMAP | VB2_USERPTR; |
130 | queue->queue.drv_priv = queue; | 132 | queue->queue.drv_priv = queue; |
131 | queue->queue.buf_struct_size = sizeof(struct uvc_buffer); | 133 | queue->queue.buf_struct_size = sizeof(struct uvc_buffer); |
132 | queue->queue.ops = &uvc_queue_qops; | 134 | queue->queue.ops = &uvc_queue_qops; |
133 | queue->queue.mem_ops = &vb2_vmalloc_memops; | 135 | queue->queue.mem_ops = &vb2_vmalloc_memops; |
134 | vb2_queue_init(&queue->queue); | 136 | ret = vb2_queue_init(&queue->queue); |
137 | if (ret) | ||
138 | return ret; | ||
135 | 139 | ||
136 | mutex_init(&queue->mutex); | 140 | mutex_init(&queue->mutex); |
137 | spin_lock_init(&queue->irqlock); | 141 | spin_lock_init(&queue->irqlock); |
138 | INIT_LIST_HEAD(&queue->irqqueue); | 142 | INIT_LIST_HEAD(&queue->irqqueue); |
139 | queue->flags = drop_corrupted ? UVC_QUEUE_DROP_CORRUPTED : 0; | 143 | queue->flags = drop_corrupted ? UVC_QUEUE_DROP_CORRUPTED : 0; |
144 | |||
145 | return 0; | ||
140 | } | 146 | } |
141 | 147 | ||
142 | /* ----------------------------------------------------------------------------- | 148 | /* ----------------------------------------------------------------------------- |
diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c index 1c15b4227bdb..57c3076a4625 100644 --- a/drivers/media/usb/uvc/uvc_video.c +++ b/drivers/media/usb/uvc/uvc_video.c | |||
@@ -1755,7 +1755,9 @@ int uvc_video_init(struct uvc_streaming *stream) | |||
1755 | atomic_set(&stream->active, 0); | 1755 | atomic_set(&stream->active, 0); |
1756 | 1756 | ||
1757 | /* Initialize the video buffers queue. */ | 1757 | /* Initialize the video buffers queue. */ |
1758 | uvc_queue_init(&stream->queue, stream->type, !uvc_no_drop_param); | 1758 | ret = uvc_queue_init(&stream->queue, stream->type, !uvc_no_drop_param); |
1759 | if (ret) | ||
1760 | return ret; | ||
1759 | 1761 | ||
1760 | /* Alternate setting 0 should be the default, yet the XBox Live Vision | 1762 | /* Alternate setting 0 should be the default, yet the XBox Live Vision |
1761 | * Cam (and possibly other devices) crash or otherwise misbehave if | 1763 | * Cam (and possibly other devices) crash or otherwise misbehave if |
diff --git a/drivers/media/usb/uvc/uvcvideo.h b/drivers/media/usb/uvc/uvcvideo.h index 3764040475bb..af216ec45e39 100644 --- a/drivers/media/usb/uvc/uvcvideo.h +++ b/drivers/media/usb/uvc/uvcvideo.h | |||
@@ -600,7 +600,7 @@ extern struct uvc_driver uvc_driver; | |||
600 | extern struct uvc_entity *uvc_entity_by_id(struct uvc_device *dev, int id); | 600 | extern struct uvc_entity *uvc_entity_by_id(struct uvc_device *dev, int id); |
601 | 601 | ||
602 | /* Video buffers queue management. */ | 602 | /* Video buffers queue management. */ |
603 | extern void uvc_queue_init(struct uvc_video_queue *queue, | 603 | extern int uvc_queue_init(struct uvc_video_queue *queue, |
604 | enum v4l2_buf_type type, int drop_corrupted); | 604 | enum v4l2_buf_type type, int drop_corrupted); |
605 | extern int uvc_alloc_buffers(struct uvc_video_queue *queue, | 605 | extern int uvc_alloc_buffers(struct uvc_video_queue *queue, |
606 | struct v4l2_requestbuffers *rb); | 606 | struct v4l2_requestbuffers *rb); |