diff options
Diffstat (limited to 'drivers/media/video/uvc/uvcvideo.h')
-rw-r--r-- | drivers/media/video/uvc/uvcvideo.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/media/video/uvc/uvcvideo.h b/drivers/media/video/uvc/uvcvideo.h index 9a6bc1aafb16..595b90ee6528 100644 --- a/drivers/media/video/uvc/uvcvideo.h +++ b/drivers/media/video/uvc/uvcvideo.h | |||
@@ -617,6 +617,7 @@ enum uvc_device_state { | |||
617 | struct uvc_device { | 617 | struct uvc_device { |
618 | struct usb_device *udev; | 618 | struct usb_device *udev; |
619 | struct usb_interface *intf; | 619 | struct usb_interface *intf; |
620 | unsigned long warnings; | ||
620 | __u32 quirks; | 621 | __u32 quirks; |
621 | int intfnum; | 622 | int intfnum; |
622 | char name[32]; | 623 | char name[32]; |
@@ -679,6 +680,9 @@ struct uvc_driver { | |||
679 | #define UVC_TRACE_SUSPEND (1 << 8) | 680 | #define UVC_TRACE_SUSPEND (1 << 8) |
680 | #define UVC_TRACE_STATUS (1 << 9) | 681 | #define UVC_TRACE_STATUS (1 << 9) |
681 | 682 | ||
683 | #define UVC_WARN_MINMAX 0 | ||
684 | #define UVC_WARN_PROBE_DEF 1 | ||
685 | |||
682 | extern unsigned int uvc_trace_param; | 686 | extern unsigned int uvc_trace_param; |
683 | 687 | ||
684 | #define uvc_trace(flag, msg...) \ | 688 | #define uvc_trace(flag, msg...) \ |
@@ -687,6 +691,12 @@ extern unsigned int uvc_trace_param; | |||
687 | printk(KERN_DEBUG "uvcvideo: " msg); \ | 691 | printk(KERN_DEBUG "uvcvideo: " msg); \ |
688 | } while (0) | 692 | } while (0) |
689 | 693 | ||
694 | #define uvc_warn_once(dev, warn, msg...) \ | ||
695 | do { \ | ||
696 | if (!test_and_set_bit(warn, &dev->warnings)) \ | ||
697 | printk(KERN_INFO "uvcvideo: " msg); \ | ||
698 | } while (0) | ||
699 | |||
690 | #define uvc_printk(level, msg...) \ | 700 | #define uvc_printk(level, msg...) \ |
691 | printk(level "uvcvideo: " msg) | 701 | printk(level "uvcvideo: " msg) |
692 | 702 | ||
@@ -740,10 +750,10 @@ extern int uvc_video_resume(struct uvc_video_device *video); | |||
740 | extern int uvc_video_enable(struct uvc_video_device *video, int enable); | 750 | extern int uvc_video_enable(struct uvc_video_device *video, int enable); |
741 | extern int uvc_probe_video(struct uvc_video_device *video, | 751 | extern int uvc_probe_video(struct uvc_video_device *video, |
742 | struct uvc_streaming_control *probe); | 752 | struct uvc_streaming_control *probe); |
753 | extern int uvc_commit_video(struct uvc_video_device *video, | ||
754 | struct uvc_streaming_control *ctrl); | ||
743 | extern int uvc_query_ctrl(struct uvc_device *dev, __u8 query, __u8 unit, | 755 | extern int uvc_query_ctrl(struct uvc_device *dev, __u8 query, __u8 unit, |
744 | __u8 intfnum, __u8 cs, void *data, __u16 size); | 756 | __u8 intfnum, __u8 cs, void *data, __u16 size); |
745 | extern int uvc_set_video_ctrl(struct uvc_video_device *video, | ||
746 | struct uvc_streaming_control *ctrl, int probe); | ||
747 | 757 | ||
748 | /* Status */ | 758 | /* Status */ |
749 | extern int uvc_status_init(struct uvc_device *dev); | 759 | extern int uvc_status_init(struct uvc_device *dev); |