Home
last modified time | relevance | path

Searched refs:v4l2_fh (Results 1 – 25 of 144) sorted by relevance

123456

/linux/include/media/
H A Dv4l2-event.h19 struct v4l2_fh;
75 struct v4l2_fh *fh;
91 int v4l2_event_dequeue(struct v4l2_fh *fh, struct v4l2_event *event,
121 void v4l2_event_queue_fh(struct v4l2_fh *fh, const struct v4l2_event *ev);
139 int v4l2_event_pending(struct v4l2_fh *fh);
154 int v4l2_event_subscribe(struct v4l2_fh *fh,
164 int v4l2_event_unsubscribe(struct v4l2_fh *fh,
171 void v4l2_event_unsubscribe_all(struct v4l2_fh *fh);
186 struct v4l2_fh *fh,
195 int v4l2_src_change_event_subscribe(struct v4l2_fh *fh,
[all …]
H A Dv4l2-fh.h42 struct v4l2_fh { struct
70 void v4l2_fh_init(struct v4l2_fh *fh, struct video_device *vdev);
80 void v4l2_fh_add(struct v4l2_fh *fh);
105 void v4l2_fh_del(struct v4l2_fh *fh);
119 void v4l2_fh_exit(struct v4l2_fh *fh);
143 int v4l2_fh_is_singular(struct v4l2_fh *fh);
H A Dv4l2-ctrls.h22 struct v4l2_fh;
1304 int v4l2_ctrl_subscribe_event(struct v4l2_fh *fh,
1452 int v4l2_s_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl,
1497 int v4l2_s_ext_ctrls(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl,
1511 int v4l2_ctrl_subdev_subscribe_event(struct v4l2_subdev *sd, struct v4l2_fh *fh,
/linux/Documentation/driver-api/media/
H A Dv4l2-fh.rst6 struct v4l2_fh provides a way to easily keep file handle specific
10 New drivers must use struct v4l2_fh
23 In many cases the struct v4l2_fh will be embedded in a larger
38 struct v4l2_fh fh;
66 struct v4l2_fh *fh = file->private_data;
79 (:c:type:`fh <v4l2_fh>`, :c:type:`vdev <video_device>`)
87 (:c:type:`fh <v4l2_fh>`)
93 (:c:type:`fh <v4l2_fh>`)
99 (:c:type:`fh <v4l2_fh>`)
110 - This allocates a struct v4l2_fh, initializes it and adds it to
[all …]
H A Dv4l2-event.rst7 The driver must use :c:type:`v4l2_fh` to be able to support V4L2 events.
14 The :c:type:`v4l2_fh` struct has a list of subscribed events on its
18 struct is added to :c:type:`v4l2_fh`\ ``.subscribed``, one for every
36 list of the :c:type:`v4l2_fh` struct so :ref:`VIDIOC_DQEVENT` will
47 - struct v4l2_fh has two lists: one of the ``subscribed`` events,
96 (:c:type:`fh <v4l2_fh>`, :c:type:`sub <v4l2_event_subscription>` ,
133 (:c:type:`fh <v4l2_fh>`, :c:type:`sub <v4l2_event_subscription>`)
149 (:c:type:`fh <v4l2_fh>`)
159 can use :c:type:`v4l2_fh`->wait (a wait_queue_head_t) as the argument for
/linux/Documentation/translations/zh_CN/video4linux/
H A Dv4l2-framework.txt86 结构体保存 V4L2 设备节点的数据;将来 v4l2_fh 结构体将跟踪文件句柄
771 v4l2_fh 结构体
778 v4l2_fh 的用户(位于 V4l2 框架中,并非驱动)可通过测试
783 v4l2_fh 结构体作为驱动自身文件句柄结构体的一部分被分配,且驱动在
794 struct v4l2_fh fh;
832 以下是 v4l2_fh 函数使用的简介:
839 void v4l2_fh_add(struct v4l2_fh *fh)
851 清理文件句柄。在清理完 v4l2_fh 后,相关内存会被释放。
854 如果 v4l2_fh 不是嵌入在其他结构体中的,则可以用这些辅助函数:
864 v4l2_fh 并释放空间。
[all …]
/linux/drivers/media/v4l2-core/
H A Dv4l2-fh.c21 void v4l2_fh_init(struct v4l2_fh *fh, struct video_device *vdev) in v4l2_fh_init()
44 void v4l2_fh_add(struct v4l2_fh *fh) in v4l2_fh_add()
58 struct v4l2_fh *fh = kzalloc(sizeof(*fh), GFP_KERNEL); in v4l2_fh_open()
69 void v4l2_fh_del(struct v4l2_fh *fh) in v4l2_fh_del()
80 void v4l2_fh_exit(struct v4l2_fh *fh) in v4l2_fh_exit()
93 struct v4l2_fh *fh = filp->private_data; in v4l2_fh_release()
105 int v4l2_fh_is_singular(struct v4l2_fh *fh) in v4l2_fh_is_singular()
H A Dv4l2-event.c89 struct v4l2_fh *fh, u32 type, u32 id) in v4l2_event_subscribed()
102 static void __v4l2_event_queue_fh(struct v4l2_fh *fh, in __v4l2_event_queue_fh()
155 struct v4l2_fh *fh; in v4l2_event_queue()
184 int v4l2_event_pending(struct v4l2_fh *fh) in v4l2_event_pending()
192 struct v4l2_fh *fh; in v4l2_event_wake_all()
209 struct v4l2_fh *fh = sev->fh; in __v4l2_event_unsubscribe()
223 int v4l2_event_subscribe(struct v4l2_fh *fh, in v4l2_event_subscribe()
277 void v4l2_event_unsubscribe_all(struct v4l2_fh *fh) in v4l2_event_unsubscribe_all()
300 int v4l2_event_unsubscribe(struct v4l2_fh *fh, in v4l2_event_unsubscribe()
359 int v4l2_src_change_event_subscribe(struct v4l2_fh *fh, in v4l2_src_change_event_subscribe()
[all …]
H A Dv4l2-ctrls-priv.h58 void new_to_cur(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, u32 ch_flags);
61 void send_initial_event(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl);
62 void send_event(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, u32 changes);
72 int try_or_set_cluster(struct v4l2_fh *fh, struct v4l2_ctrl *master,
79 int try_set_ext_ctrls_common(struct v4l2_fh *fh,
89 int try_set_ext_ctrls_request(struct v4l2_fh *fh,
H A Dv4l2-mem2mem.c1007 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_get_unmapped_area()
1374 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_reqbufs()
1383 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_create_bufs()
1392 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_remove_bufs()
1407 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_querybuf()
1416 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_qbuf()
1425 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_dqbuf()
1434 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_prepare_buf()
1443 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_expbuf()
1452 struct v4l2_fh *fh = file->private_data; in v4l2_m2m_ioctl_streamon()
[all …]
H A Dv4l2-ctrls-api.c555 int try_set_ext_ctrls_common(struct v4l2_fh *fh, in try_set_ext_ctrls_common()
690 static int try_set_ext_ctrls(struct v4l2_fh *fh, in try_set_ext_ctrls()
719 int v4l2_s_ext_ctrls(struct v4l2_fh *fh, in v4l2_s_ext_ctrls()
779 static int set_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, u32 ch_flags) in set_ctrl()
808 static int set_ctrl_lock(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, in set_ctrl_lock()
822 int v4l2_s_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl, in v4l2_s_ctrl()
1208 struct v4l2_fh *vfh = file->private_data; in v4l2_ctrl_log_status()
1280 int v4l2_ctrl_subscribe_event(struct v4l2_fh *fh, in v4l2_ctrl_subscribe_event()
1289 int v4l2_ctrl_subdev_subscribe_event(struct v4l2_subdev *sd, struct v4l2_fh *fh, in v4l2_ctrl_subdev_subscribe_event()
1303 struct v4l2_fh *fh = file->private_data; in v4l2_ctrl_poll()
/linux/drivers/media/platform/chips-media/wave5/
H A Dwave5-vpu.h47 static inline struct vpu_instance *wave5_to_vpu_inst(struct v4l2_fh *vfh) in wave5_to_vpu_inst()
49 return container_of(vfh, struct vpu_instance, v4l2_fh); in wave5_to_vpu_inst()
76 v4l2_m2m_get_vq(inst->v4l2_fh.m2m_ctx, V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE); in wave5_vpu_both_queues_are_streaming()
78 v4l2_m2m_get_vq(inst->v4l2_fh.m2m_ctx, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE); in wave5_vpu_both_queues_are_streaming()
H A Dwave5-helper.c40 if (inst->v4l2_fh.vdev) { in wave5_cleanup_instance()
41 v4l2_fh_del(&inst->v4l2_fh); in wave5_cleanup_instance()
42 v4l2_fh_exit(&inst->v4l2_fh); in wave5_cleanup_instance()
58 v4l2_m2m_ctx_release(inst->v4l2_fh.m2m_ctx); in wave5_vpu_release_device()
126 int wave5_vpu_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub) in wave5_vpu_subscribe_event()
212 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_return_bufs()
H A Dwave5-vpu-dec.c187 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_handle_src_buffer()
306 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in start_decode()
355 v4l2_event_queue_fh(&inst->v4l2_fh, &vpu_event_eos); in send_eos_event()
361 struct v4l2_fh *fh = &inst->v4l2_fh; in handle_dynamic_resolution_change()
1808 v4l2_fh_init(&inst->v4l2_fh, vdev); in wave5_vpu_open_dec()
1809 filp->private_data = &inst->v4l2_fh; in wave5_vpu_open_dec()
1810 v4l2_fh_add(&inst->v4l2_fh); in wave5_vpu_open_dec()
1815 inst->v4l2_fh.m2m_ctx = in wave5_vpu_open_dec()
1817 if (IS_ERR(inst->v4l2_fh.m2m_ctx)) { in wave5_vpu_open_dec()
1818 ret = PTR_ERR(inst->v4l2_fh.m2m_ctx); in wave5_vpu_open_dec()
[all …]
H A Dwave5-vpu-enc.c150 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in start_encode()
250 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_finish_encode()
305 v4l2_event_queue_fh(&inst->v4l2_fh, &vpu_event_eos); in wave5_vpu_enc_finish_encode()
623 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_encoder_cmd()
1552 v4l2_fh_init(&inst->v4l2_fh, vdev); in wave5_vpu_open_enc()
1553 filp->private_data = &inst->v4l2_fh; in wave5_vpu_open_enc()
1554 v4l2_fh_add(&inst->v4l2_fh); in wave5_vpu_open_enc()
1559 inst->v4l2_fh.m2m_ctx = in wave5_vpu_open_enc()
1561 if (IS_ERR(inst->v4l2_fh.m2m_ctx)) { in wave5_vpu_open_enc()
1562 ret = PTR_ERR(inst->v4l2_fh.m2m_ctx); in wave5_vpu_open_enc()
[all …]
H A Dwave5-helper.h23 int wave5_vpu_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub);
/linux/drivers/media/test-drivers/visl/
H A Dvisl.h141 struct v4l2_fh fh;
169 static inline struct visl_ctx *visl_v4l2fh_to_ctx(struct v4l2_fh *v4l2_fh) in visl_v4l2fh_to_ctx() argument
171 return container_of(v4l2_fh, struct visl_ctx, fh); in visl_v4l2fh_to_ctx()
/linux/drivers/media/usb/uvc/
H A Duvc_metadata.c28 struct v4l2_fh *vfh = file->private_data; in uvc_meta_v4l2_querycap()
44 struct v4l2_fh *vfh = file->private_data; in uvc_meta_v4l2_get_format()
62 struct v4l2_fh *vfh = file->private_data; in uvc_meta_v4l2_try_format()
83 struct v4l2_fh *vfh = file->private_data; in uvc_meta_v4l2_set_format()
112 struct v4l2_fh *vfh = file->private_data; in uvc_meta_v4l2_enum_formats()
/linux/drivers/staging/media/rkvdec/
H A Drkvdec.h101 struct v4l2_fh fh;
110 static inline struct rkvdec_ctx *fh_to_rkvdec_ctx(struct v4l2_fh *fh) in fh_to_rkvdec_ctx()
/linux/drivers/media/platform/ti/omap3isp/
H A Dispstat.h136 struct v4l2_fh *fh,
139 struct v4l2_fh *fh,
/linux/drivers/media/platform/mediatek/vcodec/encoder/
H A Dmtk_vcodec_enc_drv.h133 struct v4l2_fh fh;
220 static inline struct mtk_vcodec_enc_ctx *fh_to_enc_ctx(struct v4l2_fh *fh) in fh_to_enc_ctx()
/linux/drivers/media/platform/mediatek/vcodec/decoder/
H A Dmtk_vcodec_dec_drv.h183 struct v4l2_fh fh;
310 static inline struct mtk_vcodec_dec_ctx *fh_to_dec_ctx(struct v4l2_fh *fh) in fh_to_dec_ctx()
/linux/drivers/media/platform/mediatek/mdp3/
H A Dmtk-mdp3-m2m.h32 struct v4l2_fh fh;
/linux/drivers/media/platform/xilinx/
H A Dxilinx-dma.c474 struct v4l2_fh *vfh = file->private_data; in xvip_dma_querycap()
496 struct v4l2_fh *vfh = file->private_data; in xvip_dma_enum_format()
510 struct v4l2_fh *vfh = file->private_data; in xvip_dma_get_format()
570 struct v4l2_fh *vfh = file->private_data; in xvip_dma_try_format()
580 struct v4l2_fh *vfh = file->private_data; in xvip_dma_set_format()
/linux/drivers/media/test-drivers/vivid/
H A Dvivid-vid-common.h36 int vidioc_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub);

123456