diff options
Diffstat (limited to 'include')
-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 96d22215cc88..d00b9d3511f2 100644 --- a/include/media/v4l2-dev.h +++ b/include/media/v4l2-dev.h | |||
@@ -128,6 +128,7 @@ struct video_device | |||
128 | const struct v4l2_ioctl_ops *ioctl_ops; | 128 | const struct v4l2_ioctl_ops *ioctl_ops; |
129 | 129 | ||
130 | /* serialization lock */ | 130 | /* serialization lock */ |
131 | DECLARE_BITMAP(dont_use_lock, BASE_VIDIOC_PRIVATE); | ||
131 | struct mutex *lock; | 132 | struct mutex *lock; |
132 | }; | 133 | }; |
133 | 134 | ||
@@ -173,6 +174,16 @@ void video_device_release(struct video_device *vdev); | |||
173 | a dubious construction at best. */ | 174 | a dubious construction at best. */ |
174 | void video_device_release_empty(struct video_device *vdev); | 175 | void video_device_release_empty(struct video_device *vdev); |
175 | 176 | ||
177 | /* returns true if cmd is a known V4L2 ioctl */ | ||
178 | bool v4l2_is_known_ioctl(unsigned int cmd); | ||
179 | |||
180 | /* mark that this command shouldn't use core locking */ | ||
181 | static inline void v4l2_dont_use_lock(struct video_device *vdev, unsigned int cmd) | ||
182 | { | ||
183 | if (_IOC_NR(cmd) < BASE_VIDIOC_PRIVATE) | ||
184 | set_bit(_IOC_NR(cmd), vdev->dont_use_lock); | ||
185 | } | ||
186 | |||
176 | /* helper functions to access driver private data. */ | 187 | /* helper functions to access driver private data. */ |
177 | static inline void *video_get_drvdata(struct video_device *vdev) | 188 | static inline void *video_get_drvdata(struct video_device *vdev) |
178 | { | 189 | { |