diff options
Diffstat (limited to 'include/media/v4l2-dev.h')
| -rw-r--r-- | include/media/v4l2-dev.h | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/include/media/v4l2-dev.h b/include/media/v4l2-dev.h index 96d22215cc8..d00b9d3511f 100644 --- a/include/media/v4l2-dev.h +++ b/include/media/v4l2-dev.h @@ -128,6 +128,7 @@ struct video_device  	const struct v4l2_ioctl_ops *ioctl_ops;  	/* serialization lock */ +	DECLARE_BITMAP(dont_use_lock, BASE_VIDIOC_PRIVATE);  	struct mutex *lock;  }; @@ -173,6 +174,16 @@ void video_device_release(struct video_device *vdev);     a dubious construction at best. */  void video_device_release_empty(struct video_device *vdev); +/* returns true if cmd is a known V4L2 ioctl */ +bool v4l2_is_known_ioctl(unsigned int cmd); + +/* mark that this command shouldn't use core locking */ +static inline void v4l2_dont_use_lock(struct video_device *vdev, unsigned int cmd) +{ +	if (_IOC_NR(cmd) < BASE_VIDIOC_PRIVATE) +		set_bit(_IOC_NR(cmd), vdev->dont_use_lock); +} +  /* helper functions to access driver private data. */  static inline void *video_get_drvdata(struct video_device *vdev)  {  |