Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 271652
b: refs/heads/master
c: d59a7b1
h: refs/heads/master
v: v3
  • Loading branch information
Ming Lei authored and Mauro Carvalho Chehab committed Aug 6, 2011
1 parent cd66bce commit 6289c30
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9bed77ee2fb46b74782d0d9d14b92e9d07f3df6e
refs/heads/master: d59a7b1dbce8b972ec2dc9fcaaae0bfa23687423
2 changes: 1 addition & 1 deletion trunk/drivers/media/video/uvc/uvc_driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -1961,7 +1961,7 @@ static int __uvc_resume(struct usb_interface *intf, int reset)

list_for_each_entry(stream, &dev->streams, list) {
if (stream->intf == intf)
return uvc_video_resume(stream);
return uvc_video_resume(stream, reset);
}

uvc_trace(UVC_TRACE_SUSPEND, "Resume: video streaming USB interface "
Expand Down
10 changes: 9 additions & 1 deletion trunk/drivers/media/video/uvc/uvc_video.c
Original file line number Diff line number Diff line change
Expand Up @@ -1104,10 +1104,18 @@ int uvc_video_suspend(struct uvc_streaming *stream)
* buffers, making sure userspace applications are notified of the problem
* instead of waiting forever.
*/
int uvc_video_resume(struct uvc_streaming *stream)
int uvc_video_resume(struct uvc_streaming *stream, int reset)
{
int ret;

/* If the bus has been reset on resume, set the alternate setting to 0.
* This should be the default value, but some devices crash or otherwise
* misbehave if they don't receive a SET_INTERFACE request before any
* other video control request.
*/
if (reset)
usb_set_interface(stream->dev->udev, stream->intfnum, 0);

stream->frozen = 0;

ret = uvc_commit_video(stream, &stream->ctrl);
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/media/video/uvc/uvcvideo.h
Original file line number Diff line number Diff line change
Expand Up @@ -638,7 +638,7 @@ extern void uvc_mc_cleanup_entity(struct uvc_entity *entity);
/* Video */
extern int uvc_video_init(struct uvc_streaming *stream);
extern int uvc_video_suspend(struct uvc_streaming *stream);
extern int uvc_video_resume(struct uvc_streaming *stream);
extern int uvc_video_resume(struct uvc_streaming *stream, int reset);
extern int uvc_video_enable(struct uvc_streaming *stream, int enable);
extern int uvc_probe_video(struct uvc_streaming *stream,
struct uvc_streaming_control *probe);
Expand Down

0 comments on commit 6289c30

Please sign in to comment.