1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 file operation functions 4 Copyright (C) 2003-2004 Kevin Thayer <nufan_wfk at yahoo.com> 5 Copyright (C) 2005-2007 Hans Verkuil <hverkuil@xs4all.nl> 6 7 */ 8 9 #ifndef IVTV_FILEOPS_H 10 #define IVTV_FILEOPS_H 11 12 /* Testing/Debugging */ 13 int ivtv_v4l2_open(struct file *filp); 14 ssize_t ivtv_v4l2_read(struct file *filp, char __user *buf, size_t count, 15 loff_t * pos); 16 ssize_t ivtv_v4l2_write(struct file *filp, const char __user *buf, size_t count, 17 loff_t * pos); 18 int ivtv_v4l2_close(struct file *filp); 19 __poll_t ivtv_v4l2_enc_poll(struct file *filp, poll_table * wait); 20 __poll_t ivtv_v4l2_dec_poll(struct file *filp, poll_table * wait); 21 int ivtv_start_capture(struct ivtv_open_id *id); 22 void ivtv_stop_capture(struct ivtv_open_id *id, int gop_end); 23 int ivtv_start_decoding(struct ivtv_open_id *id, int speed); 24 void ivtv_mute(struct ivtv *itv); 25 void ivtv_unmute(struct ivtv *itv); 26 27 /* Utilities */ 28 /* Shared with ivtv-alsa module */ 29 int ivtv_claim_stream(struct ivtv_open_id *id, int type); 30 void ivtv_release_stream(struct ivtv_stream *s); 31 32 #endif 33