| /linux/include/media/ |
| H A D | v4l2-event.h | 19 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 D | v4l2-fh.h | 42 struct v4l2_fh { struct 68 static inline struct v4l2_fh *file_to_v4l2_fh(struct file *filp) in file_to_v4l2_fh() 84 void v4l2_fh_init(struct v4l2_fh *fh, struct video_device *vdev); 97 void v4l2_fh_add(struct v4l2_fh *fh, struct file *filp); 125 void v4l2_fh_del(struct v4l2_fh *fh, struct file *filp); 139 void v4l2_fh_exit(struct v4l2_fh *fh); 163 int v4l2_fh_is_singular(struct v4l2_fh *fh);
|
| H A D | v4l2-ctrls.h | 22 struct v4l2_fh; 1328 * @fh: pointer to struct v4l2_fh 1334 int v4l2_ctrl_subscribe_event(struct v4l2_fh *fh, 1487 * @fh: pointer to &struct v4l2_fh 1494 int v4l2_s_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl, 1531 * @fh: pointer to &struct v4l2_fh 1539 int v4l2_s_ext_ctrls(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl, 1550 * @fh: pointer to &struct v4l2_fh 1553 int v4l2_ctrl_subdev_subscribe_event(struct v4l2_subdev *sd, struct v4l2_fh *fh,
|
| H A D | v4l2-subdev.h | 36 struct v4l2_fh; 217 int (*subscribe_event)(struct v4l2_subdev *sd, struct v4l2_fh *fh, 219 int (*unsubscribe_event)(struct v4l2_subdev *sd, struct v4l2_fh *fh, 1128 struct v4l2_fh vfh;
|
| H A D | v4l2-ioctl.h | 20 struct v4l2_fh; 572 int (*vidioc_subscribe_event)(struct v4l2_fh *fh, 574 int (*vidioc_unsubscribe_event)(struct v4l2_fh *fh,
|
| /linux/Documentation/driver-api/media/ |
| H A D | v4l2-fh.rst | 6 struct v4l2_fh provides a way to easily keep file handle specific data that is 9 struct v4l2_fh is allocated in the driver's ``open()`` file operation handler. 11 :c:type:`v4l2_fh` must be initialized with a call to :c:func:`v4l2_fh_init`, 13 :c:type:`v4l2_fh` with the :c:type:`file` by setting ``file->private_data`` to 14 point to the :c:type:`v4l2_fh`. 16 Similarly, the struct v4l2_fh is freed in the driver's ``release()`` file 22 :c:type:`v4l2_fh` associated with a :c:type:`file` by calling 32 struct v4l2_fh fh; 59 struct v4l2_fh *fh = file_to_v4l2_fh(file); 69 Below is a short description of the :c:type:`v4l2_fh` functions used: [all …]
|
| H A D | v4l2-event.rst | 7 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 D | v4l2-framework.txt | 86 结构体保存 V4L2 设备节点的数据;将来 v4l2_fh 结构体将跟踪文件句柄 771 v4l2_fh 结构体 774 v4l2_fh 结构体提供一个保存用于 V4L2 框架的文件句柄特定数据的简单方法。 776 必须使用 v4l2_fh 结构体,因为它也用于实现优先级处理(VIDIOC_G/S_PRIORITY)。 778 v4l2_fh 结构体作为驱动自身文件句柄结构体的一部分被分配,且驱动在 781 在许多情况下,v4l2_fh 结构体会嵌入到一个更大的结构体中。这钟情况下, 789 struct v4l2_fh fh; 816 struct v4l2_fh *fh = file_to_v4l2_fh(file); 826 以下是 v4l2_fh 函数使用的简介: 828 void v4l2_fh_init(struct v4l2_fh *fh, struct video_device *vdev) [all …]
|
| /linux/drivers/media/v4l2-core/ |
| H A D | v4l2-event.c | 27 static int __v4l2_event_dequeue(struct v4l2_fh *fh, struct v4l2_event *event) in __v4l2_event_dequeue() 59 int v4l2_event_dequeue(struct v4l2_fh *fh, struct v4l2_event *event, in v4l2_event_dequeue() 89 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() 173 void v4l2_event_queue_fh(struct v4l2_fh *fh, const struct v4l2_event *ev) in v4l2_event_queue_fh() 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() [all …]
|
| H A D | v4l2-fh.c | 21 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, struct file *filp) in v4l2_fh_add() 60 struct v4l2_fh *fh = kzalloc_obj(*fh); in v4l2_fh_open() 70 void v4l2_fh_del(struct v4l2_fh *fh, struct file *filp) in v4l2_fh_del() 83 void v4l2_fh_exit(struct v4l2_fh *fh) in v4l2_fh_exit() 96 struct v4l2_fh *fh = file_to_v4l2_fh(filp); in v4l2_fh_release() 107 int v4l2_fh_is_singular(struct v4l2_fh *fh) in v4l2_fh_is_singular()
|
| H A D | v4l2-ctrls-priv.h | 58 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 D | v4l2-mem2mem.c | 951 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_poll() 1000 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_get_unmapped_area() 1376 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_reqbufs() 1385 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_create_bufs() 1394 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_remove_bufs() 1407 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_querybuf() 1416 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_qbuf() 1425 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_dqbuf() 1434 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_prepare_buf() 1443 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_m2m_ioctl_expbuf() [all …]
|
| H A D | v4l2-ctrls-api.c | 586 int try_set_ext_ctrls_common(struct v4l2_fh *fh, in try_set_ext_ctrls_common() 722 static int try_set_ext_ctrls(struct v4l2_fh *fh, in try_set_ext_ctrls() 751 int v4l2_s_ext_ctrls(struct v4l2_fh *fh, in v4l2_s_ext_ctrls() 815 static int set_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, u32 ch_flags) in set_ctrl() 844 static int set_ctrl_lock(struct v4l2_fh *fh, struct v4l2_ctrl *ctrl, in set_ctrl_lock() 859 int v4l2_s_ctrl(struct v4l2_fh *fh, struct v4l2_ctrl_handler *hdl, in v4l2_s_ctrl() 1256 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in v4l2_ctrl_log_status() 1329 int v4l2_ctrl_subscribe_event(struct v4l2_fh *fh, in v4l2_ctrl_subscribe_event() 1338 int v4l2_ctrl_subdev_subscribe_event(struct v4l2_subdev *sd, struct v4l2_fh *fh, in v4l2_ctrl_subdev_subscribe_event() 1352 struct v4l2_fh *fh = file_to_v4l2_fh(file); in v4l2_ctrl_poll()
|
| /linux/drivers/media/usb/uvc/ |
| H A D | uvc_metadata.c | 29 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in uvc_meta_v4l2_querycap() 45 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in uvc_meta_v4l2_get_format() 61 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in uvc_meta_v4l2_try_format() 88 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in uvc_meta_v4l2_set_format() 113 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in uvc_meta_v4l2_enum_formats()
|
| /linux/drivers/media/platform/chips-media/wave5/ |
| H A D | wave5-vpu-dec.c | 181 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_handle_src_buffer() 232 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in start_decode() 253 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in flag_last_buffer_done() 281 v4l2_event_queue_fh(&inst->v4l2_fh, &vpu_event_eos); in send_eos_event() 288 struct v4l2_fh *fh = &inst->v4l2_fh; in handle_dynamic_resolution_change() 289 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in handle_dynamic_resolution_change() 357 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_dec_finish_decode() 797 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_dec_stop() 862 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_dec_start() 886 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_dec_decoder_cmd() [all …]
|
| H A D | wave5-vpu-enc.c | 130 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in start_encode() 243 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_finish_encode() 298 v4l2_event_queue_fh(&inst->v4l2_fh, &vpu_event_eos); in wave5_vpu_enc_finish_encode() 632 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_encoder_cmd() 1128 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_buf_queue() 1333 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_start_streaming() 1407 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in streamoff_output() 1419 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in streamoff_capture() 1505 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_device_run() 1538 struct v4l2_m2m_ctx *m2m_ctx = inst->v4l2_fh.m2m_ctx; in wave5_vpu_enc_job_ready() [all …]
|
| /linux/drivers/media/platform/xilinx/ |
| H A D | xilinx-dma.c | 472 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in xvip_dma_querycap() 494 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in xvip_dma_enum_format() 508 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in xvip_dma_get_format() 568 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in xvip_dma_try_format() 578 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in xvip_dma_set_format()
|
| /linux/drivers/media/platform/mediatek/mdp3/ |
| H A D | mtk-mdp3-m2m.h | 32 struct v4l2_fh fh;
|
| /linux/drivers/media/platform/renesas/vsp1/ |
| H A D | vsp1_video.c | 898 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_querycap() 914 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_enum_format() 935 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_get_format() 951 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_try_format() 963 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_set_format() 993 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in vsp1_video_streamon() 1073 struct v4l2_fh *vfh; in vsp1_video_open()
|
| H A D | vsp1_histo.c | 395 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in histo_v4l2_querycap() 412 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in histo_v4l2_enum_format() 426 struct v4l2_fh *vfh = file_to_v4l2_fh(file); in histo_v4l2_get_format()
|
| /linux/drivers/media/test-drivers/vivid/ |
| H A D | vivid-vid-common.h | 39 int vidioc_subscribe_event(struct v4l2_fh *fh, const struct v4l2_event_subscription *sub);
|
| /linux/drivers/media/platform/sunxi/sun8i-rotate/ |
| H A D | sun8i-rotate.h | 105 struct v4l2_fh fh;
|
| /linux/drivers/media/platform/samsung/s5p-g2d/ |
| H A D | g2d.h | 52 struct v4l2_fh fh;
|
| /linux/drivers/media/platform/imagination/ |
| H A D | e5010-jpeg-enc.h | 112 struct v4l2_fh fh;
|
| /linux/drivers/media/platform/st/stm32/dma2d/ |
| H A D | dma2d.h | 88 struct v4l2_fh fh;
|