diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2011-01-08 07:36:04 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-03-22 15:37:57 -0400 |
commit | 73cb42068cff419e72456940c713ceb5efa68c2a (patch) | |
tree | 2e2cfa9f87b584774a7dc496ec6b46431bd7ce56 /include/media/v4l2-fh.h | |
parent | fc5602be7ca5b55174c5d6595089718779b28dfa (diff) |
[media] v4l2-fh: add v4l2_fh_open and v4l2_fh_release helper functions
Add two new functions: v4l2_fh_open allocates and initializes a struct v4l2_fh
based on a struct file pointer and v4l2_fh_release releases and frees a struct
v4l2_fh.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'include/media/v4l2-fh.h')
-rw-r--r-- | include/media/v4l2-fh.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/media/v4l2-fh.h b/include/media/v4l2-fh.h index 5fc5ba96e1d2..5657881cd44e 100644 --- a/include/media/v4l2-fh.h +++ b/include/media/v4l2-fh.h | |||
@@ -51,8 +51,16 @@ int v4l2_fh_init(struct v4l2_fh *fh, struct video_device *vdev); | |||
51 | */ | 51 | */ |
52 | void v4l2_fh_add(struct v4l2_fh *fh); | 52 | void v4l2_fh_add(struct v4l2_fh *fh); |
53 | /* | 53 | /* |
54 | * Can be used as the open() op of v4l2_file_operations. | ||
55 | * It allocates a v4l2_fh and inits and adds it to the video_device associated | ||
56 | * with the file pointer. | ||
57 | */ | ||
58 | int v4l2_fh_open(struct file *filp); | ||
59 | /* | ||
54 | * Remove file handle from the list of file handles. Must be called in | 60 | * Remove file handle from the list of file handles. Must be called in |
55 | * v4l2_file_operations->release() handler if the driver uses v4l2_fh. | 61 | * v4l2_file_operations->release() handler if the driver uses v4l2_fh. |
62 | * On error filp->private_data will be NULL, otherwise it will point to | ||
63 | * the v4l2_fh struct. | ||
56 | */ | 64 | */ |
57 | void v4l2_fh_del(struct v4l2_fh *fh); | 65 | void v4l2_fh_del(struct v4l2_fh *fh); |
58 | /* | 66 | /* |
@@ -62,5 +70,12 @@ void v4l2_fh_del(struct v4l2_fh *fh); | |||
62 | * driver uses v4l2_fh. | 70 | * driver uses v4l2_fh. |
63 | */ | 71 | */ |
64 | void v4l2_fh_exit(struct v4l2_fh *fh); | 72 | void v4l2_fh_exit(struct v4l2_fh *fh); |
73 | /* | ||
74 | * Can be used as the release() op of v4l2_file_operations. | ||
75 | * It deletes and exits the v4l2_fh associated with the file pointer and | ||
76 | * frees it. It will do nothing if filp->private_data (the pointer to the | ||
77 | * v4l2_fh struct) is NULL. This function always returns 0. | ||
78 | */ | ||
79 | int v4l2_fh_release(struct file *filp); | ||
65 | 80 | ||
66 | #endif /* V4L2_EVENT_H */ | 81 | #endif /* V4L2_EVENT_H */ |